Овај водич ће вам помоћи да подесите WebTunnel мост компајлиран из извора како бисте помогли корисницима под цензуром да се повежу на Тор мрежу.

0. Конфигуришите ваш домен и веб сервер

Пре него што наставите са упутствима испод, неопходно је прво конфигурисати ваш домен и веб сервер. Погледајте први део WebTunnel водича да видите како да подесите ваш веб сервер.

1. Инсталирајте Golang

Да бисте изградили WebTunnel сервер бинарни фајл, потребно је да инсталирате Golang. Можете инсталирати Go на Debian-у покретањем:

$ sudo apt install golang

2. Клонирајте и компајлирајте

Клонирајте WebTunnel git репозиторијум:

$ git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/webtunnel

И компајлирајте WebTunnel сервер бинарни фајл:

$ cd webtunnel/main/server
$ go build

На крају, копирајте бинарни фајл на другу локацију:

$ sudo cp server /usr/local/bin/webtunnel

3. Инсталирајте Тор

On a Debian-like system, install Tor from the Tor Debian repository.

$ sudo apt install apt-transport-https lsb-release

И покрените ове команде да омогућите Тор Debian репозиторијум:

$ CODENAME=$(lsb_release -cs)

$ cat <<EOF > /etc/apt/sources.list.d/tor.list
   deb     [signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org $CODENAME main
   deb-src [signed-by=/usr/share/keyrings/tor-archive-keyring.gpg] https://deb.torproject.org/torproject.org $CODENAME main
EOF

Увезите кључни прстен Тор пројекта:

$ wget -qO- https://deb.torproject.org/torproject.org/A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --dearmor | sudo tee /usr/share/keyrings/tor-archive-keyring.gpg >/dev/null

На крају, ажурирајте листу пакета и инсталирајте Тор:

$ sudo apt update && sudo apt install tor deb.torproject.org-keyring -y

4. Уредите ваш torrc

Уредите вашу Тор конфигурациону датотеку, која се обично налази на /etc/tor/torrc и замените њен садржај са:

  • url=https://yourdomain/path са вашим WebTunnel url укључујући ваш домен и тајни пут;
  • <address@email.com> with your contact email address;
  • Nickname WebTunnetTest са Nickname вашег моста.
BridgeRelay 1
ORPort 127.0.0.1:auto
AssumeReachable 1
ServerTransportPlugin webtunnel exec /usr/local/bin/webtunnel
ServerTransportListenAddr webtunnel 127.0.0.1:15000
ServerTransportOptions webtunnel url=https://yourdomain/path
ExtORPort auto
ContactInfo <address@email.com>
Nickname WebTunnelTest
SocksPort 0

5. Поново покрените Тор

Омогућите и покрените тор:

$ sudo systemctl enable --now tor.service

Или га поново покрените ако је већ радио, тако да конфигурације ступе на снагу:

$ sudo systemctl restart tor.service

6. Уредите и поново учитајте AppArmor тор дозволу

Да бисте дозволили тору да покрене ваш WebTunnel бинарни фајл, уредите AppArmor system_tor профил на /etc/apparmor.d/system_tor и додајте унос који дозвољава тору да изврши WebTunnel:

  # During startup, tor (as root) tries to open various things such as
  # directories via check_private_dir().  Let it.
  /usr/local/bin/webtunnel ix,

Поново учитајте AppArmor профил:

$ sudo apparmor_parser -r /etc/apparmor.d/system_tor

Након модификовања профила и поновног учитавања, тестирајте да ли тор процес сада може извршити /usr/local/bin/webtunnel без било каквих AppArmor одбијања. Проверите системске логове (нпр. dmesg или /var/log/syslog) да бисте се уверили да се грешка не појављује поново.

7. Пратите ваше логове

Да бисте потврдили да ваш мост ради без проблема, требало би да видите нешто овако (обично у /var/log/syslog или покрените sudo journalctl -e -u tor@default):

[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] Tor has successfully opened a circuit. Looks like client functionality is working.
[notice] Bootstrapped 100%: Done

Можете пратити коришћење вашег WebTunnel моста на Relay Search. Само унесите <HASHED FINGERPRINT> вашег моста у форму и кликните "Претрага". Након што подесите мост, потребно је отприлике три сата да се мост појави у претрази релеја.

8. Завршне напомене

Ваш WebTunnel мост ће подразумевано бити аутоматски дистрибуиран преко Bridges вебсајта, такође познатог као HTTPS дистрибутер. Ово подразумевано важи осим ако оператер експлицитно не конфигурише подешавање BridgeDistribution у torrc фајлу на другу опцију. Ако је подешено на било коју опцију осим HTTPS, мост неће бити дистрибуиран корисницима. Ако имате проблема са подешавањем вашег моста, погледајте нашу секцију за помоћ.

Ако ваш мост сада ради, можете га тестирати копирањем и лепљењем ваше линије моста у Тор претраживач. Да бисте изградили вашу WebTunnel линију моста, потребно је да копирате ваш мост FINGERPRINT, али немојте га мешати са вашим хешираним отиском, који је отисак који ћете наћи на Тор претрази релеја. Ако копирате хеширани отисак уместо отиска вашег моста, нећете моћи да се повежете. Можете пронаћи отисак вашег моста у датотеци /var/lib/tor/fingerprint. Запамтите да копирате само отисак и не укључујете Nickname моста.

На крају, можете заменити садржај URL-а са вашим доменом и тајним путем. Ово можете наћи у вашој torrc линији под ServerTransportOptions.

Сада, само замените садржај испод да бисте креирали своју WebTunnel линију моста. 10.0.0.2:443 је само насумична IP адреса која се никада не користи. Ту је само зато што спецификација прикључног транспорта захтева IP адресу тамо.

webtunnel 10.0.0.2:443 FINGERPRINT url=https://yourdomain/path