В этом руководстве вы узнаете об установке, работе и обслуживании прокси-сервера Snowflake в системах на базе Linux.
Запуск прокси-сервера Snowflake - это простой способ внести свой вклад в борьбу с цензурой в рамках проекта Tor.
1. Установите Go
Сначала вам нужно будет установить и настроить компилятор Go для сборки автономного прокси из исходного кода.
Пожалуйста, войдите в систему, используя учетную запись пользователя с правами sudo
или напрямую с root
(в последнем случае опустите часть sudo
в следующих командах).
Если вы работаете на Ubuntu или Debian, вы можете установить Go при помощи команды sudo apt install golang
.
Если вы используете Fedora, Red Hat или Amazon Linux, используйте sudo yum install golang
или sudo dnf install golang
.
Для запуска прокси-сервера Snowflake вам понадобится Go 1.21 или более новая версия.
Проверьте версию вашего Go с помощью команды go version
.
В противном случае загрузите Go binary с официального сайта и следуйте инструкции по установке.
2. Установите git и клонируйте репозиторий Snowflake
Во-вторых, вам нужен git-клиент для загрузки исходного кода Snowflake.
Если вы работаете на Ubuntu или Debian, вы можете установить git при помощи команды sudo apt install git
.
Если вы используете Fedora, Red Hat или Amazon Linux, используйте sudo yum install git
или sudo dnf install git
.
В случае использования другого дистрибутива обратитесь к документации по используемому пакетному менеджеру.
Пожалуйста, выполните следующие шаги под учетной записью пользователя, под которой должен быть запущен прокси.
Не используйте root
.
Мы рекомендуем создать отдельного пользователя snowflake
с ограниченными правами.
Откройте терминал и клонируйте исходный код:
git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
3. Постройте прокси-сервер Snowflake
После клонирования репозитория вы можете собрать бинарник прокси-сервера Snowflake, выполнив команду:
cd snowflake/proxy
go build
4. Запустите прокси-сервер Snowflake
После завершения компиляции прокси можно запустить его командой:
nohup ./proxy &
Примечание: Команда nohup
позволяет программе выполняться в фоновом режиме даже после закрытия терминала, а &
переводит команду в фоновый режим немедленно.
Если вы хотите сохранить вывод прокси в лог-файл, например, чтобы посмотреть, как вы используете прокси, вы можете использовать:
nohup ./proxy >snowflake.log 2>&1 &
5. Убедитесь, что прокси запускается после перезагрузки системы
Отредактируйте свой кронтаб, выполнив команду:
crontab -e
Введите следующую строку (пример, измените путь в соответствии с настройкам вашей системы)
@reboot nohup /home/snowflake/snowflake/proxy/proxy > /home/snowflake/snowflake/proxy/snowflake.log 2>&1 &
Пожалуйста, проверьте, что это сработало: перезагрузите систему и проверьте логи.
Примечание: На некоторых установках Linux это может не работать.
6. Постоянно обновляйте прокси-сервер Snowflake
Для поддержания актуальности прокси snowflake, периодически выполняйте предложенные команды раз в несколько недель под аккаунтом, использованным во время установки прокси:
kill -9 $(pidof proxy)
cd snowflake/
git pull
cd proxy
go build
nohup ./proxy >snowflake.log 2>&1 &