SOCL.cz
blog nejen o Internetu

Rozjel jsem TOR Bridge s obfs4 na CentOSu

publikováno 3. 7. 2018 v 19:13

Na nově zřízeném VPS (běží na něm linux CentOS 7 pod VMware ESXi) jsem zprovoznil TOR Bridge doplněný o pluggable transports s podporou protokolu obfs4. Díky tomu se data od klientů k mému "mostu" transformují tak, aby nešlo poznat, že se jedná o datový provoz TORu a není tak snadné spojení zablokovat nějakým DPI firewallem po trase...

TOR logo

Kompilaci a instalaci TORu jsem již popsal v minulosti, viz tento článek. Já budu uvažovat, že plně funkční TOR má na svém serveru každý a umí jej i zkonfigurovat/zapnout. :-)

Kde sehnat obfs4proxy?

Abych mohl datový provoz protokolem obfs4 obfuskovat, musel jsem do systému dostat program obfs4proxy. Jelikož jej CentOS nemá v repozitáři, musel jsem si jej připravit ze zdroje:

yum install go
go get git.torproject.org/pluggable-transports/obfs4.git/obfs4proxy

Tímto se mi v adresáři $GOPATH/bin vytvořil soubor obfs4proxy, který jsem následně zkopíroval do umístění /usr/local/bin:

cp $GOPATH/bin/obfs4proxy /usr/local/bin

Dále jsem upravil konfiguraci svého TORu:

ORPort 10000
ExtORPort auto
ServerTransportPlugin obfs4 exec /usr/local/bin/obfs4proxy
ServerTransportListenAddr obfs4 0.0.0.0:10004
BridgeRelay 1

Tímto jsem zapnul podporu pro protokol obfs4, přičemž výše uvedené TCP porty 10000 a 10004 musí být z Internetu dostupné. Je možné mít souběžně i podporu dalších protokolů, např. obfs3:

ServerTransportPlugin obfs3,obfs4 exec /usr/local/bin/obfs4proxy
ServerTransportListenAddr obfs3 0.0.0.0:10003
ServerTransportListenAddr obfs4 0.0.0.0:10004

Opět platí, že všechny výše uvedené porty musí být z Internetu vidět. Po spuštění TORu jsem viděl v logu následující informaci:

Jul  2 21:56:09 localhost Tor[5250]: Registered server transport 'obfs3' at '[::]:10003'
Jul  2 21:56:09 localhost Tor[5250]: Registered server transport 'obfs4' at '[::]:10004'

TOR Browser a praktický test

Ještě mne napadlo, že bych mohl nějak vlastními silami otestovat, zda je můj TOR Bridge s obfuskací funkční. Stáhl jsem TOR Browser, který je k otestování přímo ideální. Z logu jsem vyčetl FINGERPRINT mého serveru, který následně budu potřebovat:

Jul  2 21:55:50 localhost Tor[5250]: Your Tor server's identity key fingerprint is 'Muj FINGERPRINT'

Pak jsem v nastavení TOR Browseru vyplnil potřebné informace:

Nastavení obfs3 Bridge v TOR Browseru
Nastavení obfs3 Bridge v TOR Browseru

A tady je výsledek spojení:

obfs3 ok!

A ještě zkouška nastavení obfs4:

Nastavení obfs4 Bridge v TOR Browseru
Nastavení obfs4 Bridge v TOR Browseru

Tady jsem musel chvilku pátrat. Nelze totiž nastavit obfs4 obdobně jako obfs3 jen s obměnou portu a specifikací protokolu! Bylo nutné dodat další parametry, které lze zjistit pomocí příkazu:

cat DataDir/pt_state/obfs4_bridgeline.txt

V mém případě je DataDir adresář ~/.tor. Po doplnění potřebných informací zde výsledek spojení:

obfs4 ok!

štítky: anonymita blokace bridge firewall Internet linux obfs3 obfs4 obfs4proxy šifrování TOR VPS
4208x přečteno

Komentáře k článku (0)

Zatím nikdo nic nenapsal, chcete být první?
Vaše jméno/přezdívka: (max 40 znaků)

Web: (nepovinné, zadejte s http(s)://, max 100 znaků)

Opiště sekvenci znaků:

captcha!

Zde napište komentář: (max 512 znaků)

Copyright © 2015-2024 SOCL.cz, RSS 2.0 RSS kanál blogu
Všechna práva vyhrazena, nebo tak nějak.

WEDOS BANNER