1. Увімкніть автоматичне оновлення програмного забезпечення

Однією з найважливіших речей для забезпечення безпеки вашого ретранслятора є своєчасне й, в ідеалі, автоматичне встановлення оновлень безпеки, щоб ви не забули про це. Дотримуйтесь інструкцій, щоб увімкнути автоматичне оновлення програмного забезпечення для вашої операційної системи.

2. Встановіть epel-release

Щоб інсталювати пакет tor на CentOS/RHEL, вам потрібно спочатку ввімкнути використання репозиторію EPEL. Для цього вам необхідно встановити пакет epel-release:

# yum install epel-release

Останні версії CentOS/RHEL використовують dnf замість yum:

# dnf install epel-release

Якщо ви використовуєте останню версію, яка використовує dnf, будь ласка, продовжуйте використовувати його для наступних кроків, де yum називається в цьому посібнику зі встановлення.

3. Налаштуйте репозиторій проекту Tor

Налаштування репозиторію для CentOS/RHEL проекту Tor полягає в основному в налаштуванні /etc/yum.repos.d/Tor.repo з таким вмістом:

[tor]
name=Tor for Enterprise Linux $releasever - $basearch
baseurl=https://rpm.torproject.org/centos/$releasever/$basearch
enabled=1
gpgcheck=1
gpgkey=https://rpm.torproject.org/centos/public_gpg.key
cost=100

4. Встановіть Tor

Після встановлення EPEL і репозиторіїв Tor ви можете встановити пакет:

# yum install tor

Зауважте, що коли ви встановлюєте перший пакет із репозиторію EPEL, вас запитають про перевірку ключа підпису GPG EPEL. Переконайтеся, що ключ збігається з ключем, доступним на веб-сайті проекту Fedora. Це також станеться під час першого встановлення пакунків зі сховища Tor — ви знову повинні переконатися, що ключі збігаються.

5. Зберіть lyrebird (obfs4proxy) і перемістіть його на місце.

Сильно застарілі версії git можуть спричинити помилку go get, тому спробуйте оновити до новішої версії git, якщо ви зіткнулися з цією проблемою.

Встановіть пакет golang та інші залежності:

# yum install git golang policycoreutils-python-utils

Тепер створіть двійковий файл і перемістіть його у правильний каталог:

git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/lyrebird
cd lyrebird
make build
sudo cp .//lyrebird /usr/local/bin/
# chcon --reference=/usr/bin/tor /usr/local/bin/lyrebird

6. Відредагуйте конфігураційний файл Tor, який зазвичай знаходиться за адресою /etc/tor/torrc, і замініть його вміст на:

RunAsDaemon 1
BridgeRelay 1

# Замініть "TODO1" портом Tor на ваш вибір. Цей порт має бути зовнішнім
# доступний. Уникайте порту 9001, оскільки він зазвичай асоціюється з Tor і
# Можливо, цензори сканують Інтернет на пошук цього порту.
ORPort TODO1

ServerTransportPlugin obfs4 exec /usr/local/bin/lyrebird

# Замініть "TODO2" портом obfs4 на ваш вибір. Цей порт має бути
# доступний іззовні та має відрізнятися від зазначеного для ORPort.
# Уникайте порту 9001, оскільки він зазвичай асоціюється з
# Можливо, Tor і цензори сканують Інтернет на пошук цього порту.
ServerTransportListenAddr obfs4 0.0.0.0:TODO2

# Порт локального зв'язку між Tor і obfs4. Завжди встановлюйте значення "авто".
# "Ext" означає "розширений", а не "зовнішній". Не намагайтеся встановити певний порт
# номер, ні слухати на 0.0.0.0.
ExtORPort auto

# Замінити &quot;<address@email.com> &quot; з вашою електронною адресою, щоб ми могли зв’язатися з вами, якщо
# є проблеми з вашим мостом. Це необов’язково, але рекомендується.
Контактна інформація<address@email.com>

# Виберіть псевдонім, який вам подобається для вашого мосту. Це необов&#39;язково.
Nickname PickANickname

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

  • Зауважте, що як порт OR Tor, так і порт obfs4 мають бути доступними. Якщо ваш міст знаходиться за брандмауером або NAT, переконайтеся, що обидва порти відкриті. Ви можете скористатися нашим тестом доступності, щоб перевірити, чи доступний ваш порт obfs4 з Інтернету.

7. Перезапустіть Tor

sudo semanage port -a -t tor_port_t -p tcp [OR port set earlier, in TODO1]

sudo semanage port -a -t tor_port_t -p tcp [obfs4 port set earlier, in TODO2]

Останні версії os CentOS/RHEL, які постачаються з systemd:

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

Якщо ви використовуєте старішу версію, наприклад CentOS/RHEL 6, це буде:

# service tor enable
# service tor start

8. Контролюйте свої журнали

Щоб підтвердити, що ваш міст працює без проблем, ви повинні побачити щось на зразок цього (зазвичай у /var/log/tor/log або /var/log/syslog):

[notice] Your Tor server's identity key fingerprint is '<NICKNAME> <FINGERPRINT>'
[notice] Your Tor bridge's hashed identity key fingerprint is '<NICKNAME> <HASHED FINGERPRINT>'
[notice] Registered server transport 'obfs4' at '[::]:46396'
[notice] Tor has successfully opened a circuit. Looks like client functionality is working.
[notice] Bootstrapped 100%: Done
[notice] Now checking whether ORPort <redacted>:3818 is reachable... (this may take up to 20 minutes -- look for log messages indicating success)
[notice] Self-testing indicates your ORPort is reachable from the outside. Excellent. Publishing server descriptor.

9. Заключні примітки

Якщо у вас виникли проблеми з налаштуванням мосту, перегляньте наш розділ довідки. Якщо ваш міст зараз працює, перегляньте примітки після встановлення.