Sieć anonimizująca w praktyce
Ostatnia zmiana: 2017-12-09 11:25
O sieci Tor napisano już naprawdę dużo - ogólnie ujmując, jest to sieć nastawiona na anonimowość dzięki której możliwe jest przeglądanie internetu i wypowiadanie swoich opinii bez narażania się na wykrycie. Jest to ważne np. dla dziennikarzy czy w krajach w których obowiązuje ostra cenzura. Ma to także drugą stronę medalu - sieć Tor uważana jest za wolną, pełną złych treęci i osób z którymi zwykle nie chcemy mieć za wiele wspólnego. Ważne jest zapoznanie się z opisem czym jest sieć Tor, jakie ma wady i zalety. Dobrym punktem wyjścia jest
strona projektu,
FAQ oraz
Wikipedia.
Celem zaprezentowanego projektu jest utworzenie konfiguracji routera opartej o LEDE umożliwiającej całkowicie przezroczyste korzystanie z sieci Tor - nie wymaga to instalowania dodatkowego oprogramowania na komputerze klienta, więc może także służyć np. jako konfiguracja otwartego hostpota. Do projektu wykorzystano system LEDE 17.01.
Konfiguracja zostanie wykonana w taki sposób, aby cały ruch był przesyłany bezpośrednio przez sieć Tor, łącznie z zapytaniami o dns. Źródłem internetu będzie port wan, natomiast dostęp do routera i sieci będzie odbywał się bezprzewodowo (interfejsem radiowym - dodatkową siecią gościnną).
Konfiguracji dodatkowej sieci
Wykorzystujmy poradnik o
sieci gościnnej. Tworzymy nową sieć, upewniamy się że działa - łączymy się do niej, sprawdzamy połączenie.
Pamięć i swap
Tor do działania wymaga wielu zasobów systemowych i dużo pamięci RAM (minimum 64MB). Jeżeli konfigurację przeprowadzamy na routerze wyposażonym tylko w 32MB pamięci ram, to należy zrobić swap np. na
nośniku USB.
Tor
Instalacja
# opkg update
# opkg install tor tor-geoip
Konfiguracja
Plik konfiguracyjny tora znajduje się w pliku
/etc/tor/torrc. Ma czytelnie opisane opcje; w domyślnej konfiguracji dla LEDE wystarczy dodać na końcu pliku tylko kilka linii żeby słuchał tylko na naszej sieci gościnnej:
VirtualAddrNetworkIPv4 10.192.0.0/10
AutomapHostsOnResolve 1
AutomapHostsSuffixes .onion,.exit
SocksPort 172.16.0.1:9050
DNSPort 172.16.0.1:9053
TransPort 172.16.0.1:9040
(adresacja zgodna z poradnikiem o
sieci gościnnej)
Do uzupełnienia został jeszcze plik z firewallem
/etc/firewall.user. Dodajemy na samym końcu:
. /lib/functions/network.sh
network_get_physdev IFNAME guest
iptables -t nat -I PREROUTING -i $IFNAME -p tcp --dport 22 -j REDIRECT --to-ports 22
iptables -t nat -I PREROUTING -i $IFNAME -p tcp --dport 9050 -j REDIRECT --to-ports 9050
iptables -t nat -I PREROUTING -i $IFNAME -p udp --dport 53 -j REDIRECT --to-ports 9053
iptables -t nat -I PREROUTING -i $IFNAME -p tcp --syn -j REDIRECT --to-ports 9040
Należy także upewnić się, że plik z naszymi zmianami zostanie wczytany przy restarcie firewalla:
# uci set firewall.@include[0].reload='1'
# uci commit
Zapisujemy całość i restartujemy router.
Sprawdzenie połączenia
Po restarcie routera nastąpi połączenie z siecią. W zależności od łącza może to potrwać do kilku minut. Jeżeli podłączymy się do routera można sprawdzić logi, powinna pojawić się informacja typu:
Sat Apr 15 10:09:33 2017 daemon.notice Tor[1489]: Opening Socks listener on 172.16.0.1:9050
Sat Apr 15 10:09:33 2017 daemon.notice Tor[1489]: Opening DNS listener on 172.16.0.1:9053
Sat Apr 15 10:09:33 2017 daemon.notice Tor[1489]: Opening Transparent pf/netfilter listener on 172.16.0.1:9040
Sat Apr 15 10:09:33 2017 daemon.notice Tor[1489]: Parsing GEOIP IPv4 file /usr/share/tor/geoip.
Sat Apr 15 10:09:38 2017 daemon.notice Tor[1489]: Parsing GEOIP IPv6 file /usr/share/tor/geoip6.
Sat Apr 15 10:09:43 2017 daemon.notice Tor[1489]: Bootstrapped 0%: Starting
Sat Apr 15 10:09:43 2017 daemon.notice Tor[1489]: Bootstrapped 5%: Connecting to directory server
Sat Apr 15 10:09:43 2017 daemon.notice Tor[1489]: Bootstrapped 10%: Finishing handshake with directory server
Sat Apr 15 10:09:44 2017 daemon.notice Tor[1489]: Bootstrapped 15%: Establishing an encrypted directory connection
Sat Apr 15 10:09:44 2017 daemon.notice Tor[1489]: Bootstrapped 20%: Asking for networkstatus consensus
Sat Apr 15 10:09:44 2017 daemon.notice Tor[1489]: Bootstrapped 25%: Loading networkstatus consensus
Sat Apr 15 10:09:52 2017 daemon.notice Tor[1489]: I learned some more directory information, but not enough to build a circuit: We have no usable consensus.
Sat Apr 15 10:09:52 2017 daemon.notice Tor[1489]: Bootstrapped 40%: Loading authority key certs
Sat Apr 15 10:09:59 2017 daemon.notice Tor[1489]: Bootstrapped 45%: Asking for relay descriptors
Sat Apr 15 10:09:59 2017 daemon.notice Tor[1489]: I learned some more directory information, but not enough to build a circuit: We need more microdescriptors: we have 0/7365, and can only build 0% of likely paths. (We have 0% of guards bw, 0% of midpoint bw, and 0% of exit bw = 0% of path bw.)
Sat Apr 15 10:10:01 2017 daemon.notice Tor[1489]: I learned some more directory information, but not enough to build a circuit: We need more microdescriptors: we have 0/7365, and can only build 0% of likely paths. (We have 0% of guards bw, 0% of midpoint bw, and 0% of exit bw = 0% of path bw.)
Sat Apr 15 10:10:01 2017 daemon.notice Tor[1489]: Bootstrapped 50%: Loading relay descriptors
Sat Apr 15 10:10:16 2017 daemon.notice Tor[1489]: Bootstrapped 57%: Loading relay descriptors
Sat Apr 15 10:10:18 2017 daemon.notice Tor[1489]: Bootstrapped 64%: Loading relay descriptors
Sat Apr 15 10:10:20 2017 daemon.notice Tor[1489]: Bootstrapped 69%: Loading relay descriptors
Sat Apr 15 10:10:24 2017 daemon.notice Tor[1489]: Bootstrapped 80%: Connecting to the Tor network
Sat Apr 15 10:10:24 2017 daemon.notice Tor[1489]: Bootstrapped 90%: Establishing a Tor circuit
Sat Apr 15 10:10:28 2017 daemon.notice Tor[1489]: Tor has successfully opened a circuit. Looks like client functionality is working.
Sat Apr 15 10:10:28 2017 daemon.notice Tor[1489]: Bootstrapped 100%: Done
Łączymy się do sieci gościnnej, wchodzimy przeglądarką na adres
https://check.torproject.org/ . Powinna pojawić się informacja że jesteśmy połączeni z siecią TOR.
Zakończenie
Tor nie zapewnia 100% anonimowości w sieci. Bardzo trudno zidentyfikować użytkownika korzystającego z takiej sieci, ale jest to możliwe (polecam poszukanie odpowiednich informacji na portalach związanych z bezpieczeństwem w sieci). Aby być jeszcze bardziej anonimowym, należy zmienić adres mac routera (dla zmylenia usług geolokalizacyjnych). Trzeba pamiętać, że każda przeglądarka zostawia prawie niepowtarzalny "odcisk palca", należy więc korzystać z popularnych systemów operacyjnych i standardowych (najpopularniejszych) ustawień przeglądarki. Zalecane jest np. wyłączenie ciasteczek w przeglądarce. Zaleca się także systematyczne aktualizowanie programu TOR do najnowszych dostępnych wersji.