1. Включите автоматическое обновление программ

Одно из главных условий защиты узла – своевременно устанавливать обновления безопасности. Лучше делать это автоматически, чтобы не забыть. Следуйте инструкциям по включению автоматического обновления программ для вашей операционной системы.

2. Установите tor

Чтобы установить пакет tor в Arch Linux:

# pacman -Syu tor

3. Установите подключаемый транспорт

Мы будем устанавливать и использовать obfs4 как подключаемый транспорт. Поэтому нужно установить obfs4proxy.

К сожалению, в официальных репозиториях Arch Linux нет пакета для его установки, поэтому нам придется либо собрать его из исходного кода, либо использовать AUR (пользовательский репозиторий ArchLinux).

Если выбрали AUR, а makepkg запущен не с правами суперпользователя, то установка obfs4proxy в обычном пользовательском аккаунте с правами sudo выглядит так:

$ sudo pacman -Syu git
$ git clone https://aur.archlinux.org/obfs4proxy
$ cd obfs4proxy
$ makepkg -irs
  • ВНИМАНИЕ. Пакеты в репозиториях AUR подготовлены самими пользователями. Используйте их на свой страх и риск.

    For more information on installing or building lyrebird from source, please refer to its official documentation.

4. Найдите файл настроек Tor (обычно тут: /etc/tor/torrc), откройте и замените содержимое на:

BridgeRelay 1
DataDirectory /var/lib/tor
User tor

# Замените "TODO1" портом Tor по своему выбору. Этот порт должен быть доступен
# Избегайте порта 9001. Он обычно ассоциируется с Tor. Цензоры
# могут знать об этом, просматривая Интернет.
ORPort TODO1

ServerTransportPlugin obfs4 exec /usr/bin/obfs4proxy

# Замените "TODO2" портом obfs4 по своему выбору. Этот порт должен быть
# доступен извне и отличаться от порта ORPort.
# Избегайте порта 9001. Он обычно ассоциируется с Tor
# Цензоры могут знать об этом, просматривая Интернет.
ServerTransportListenAddr obfs4 0.0.0.0:TODO2

# Местный коммуникационный порт между Tor и obfs4. Всегда выбирайте значение "auto".
# "Ext" значит "расширенный", а не "внешний". Не пытайтесь установить конкретный
# номер порта или слушать 0.0.0.0.
ExtORPort auto

# Замените "<address@email.com>" вашим адресом email, чтобы мы могли связаться с вами
# в случае проблем с вашим мостом. Это необязательно, но желательно.
ContactInfo <address@email.com>

# Выберите название для своего моста. (Это необязательно).
Nickname PickANickname

Не забудьте изменить опции ORPort, ServerTransportListenAddr, ContactInfo и Nickname.

  • Если решите использовать фиксированный порт obfs4 со значением менее 1024 (например, 80 или 443), вам нужно дать obfs4 CAP_NET_BIND_SERVICE право связать порт с пользователем без прав суперпользователя:

sudo setcap cap_net_bind_service=+ep /usr/bin/obfs4proxy

Для большей защиты systemd вам также понадобится установить NoNewPrivileges=no в /usr/lib/systemd/system/tor.service, а затем запустить systemctl daemon-reload. Подробнее см. заявку 18356.

  • Обратите внимание: и OR-порт Tor, и порт obfs4 должны быть доступны. Если ваш мост находится за межсетевым экраном или NAT, убедитесь, что оба порта открыты. Чтобы проверить, доступен ли obfs4-порт из Интернета, можете использовать наш тест.

5. Включите и запустите tor

# systemctl enable --now tor
... or restart it if it was running already, so configurations take effect
# systemctl restart tor

6. В завершение

Если у вас проблемы с настройкой моста, обратите внимание на наш раздел помощи. Если ваш мост работает прямо сейчас, загляните в примечания после установки.