Fórum Root.cz

Hlavní témata => Sítě => Téma založeno: quick 18. 07. 2011, 06:10:08

Název: Přesměrování sítě přes Tor
Přispěvatel: quick 18. 07. 2011, 06:10:08
Zdravím,
Jiz v minulosti jsem se snazil docilit toho, aby se vsechen traffic presmerovaval na transparen tor proxy. U lokalniho trafficu se mi to dle navodu na wiki povedlo ( https://trac.torproject.org/projects/tor/wiki/doc/TransparentProxy ). Ale jelikoz PC slouzi i jako "router", tak bych rad presmeroval i ostatni traffic.

eth0 - internet
br0 - lokalni sit (eth1, eth2) (192.168.0.1)

Tor transparent proxy bezi na localhostu 9040 i DNS o toru bezi na localhostu. Jde mi o to, jak tam ten traffic presmerovat. Takto vypada konfigurace iptables (http://paste.jabbim.cz/5255 ). Pokud by si s timto problemem nekdo vedel rady, tak ocením jakoukoli radu. Predem díky.
Název: Re: iptables a tor
Přispěvatel: Tomáš 18. 07. 2011, 09:49:18
Nejspíše jsi na to již narazil, ale UDP protokol/traffic přes TOR neprotáhneš.
Durhá věc přímo na TOR vstup(SOCKS) nemůžeš jentak posílat traffic z applikací které neví, že to je SOCKS. Na toto se většinou plácne před TOR nějaká proxy/socks u které se dá rovnou nastavit ať zpracovává i požadavky které nejsou "pro proxy" tedy přesměrované na ten port.

takže pokud to je třeba(já si to instaloval) tak si přidej nějakou proxy či socks.
jinak příklad pravidla pro iptables
iptables -t nat -A PREROUTING -i br0 -o eth0 -p tcp -j DNAT --to-destination 192.168.0.1:9040
Název: Re: Přesměrování sítě přes Tor
Přispěvatel: quick 18. 07. 2011, 11:52:47
Rozjel jsem tedy squid, pres iptables presmeroval tcp na port squidu a skoro to funguje. HTTP jede, ovsem https, ssh, ftp ne. Squid je nastaven jako transparent.

nastaveni squidu:
Citace
hierarchy_stoplist cgi-bin ?
refresh_pattern ^ftp:           1440    20%     10080
refresh_pattern ^gopher:        1440    0%      1440
refresh_pattern -i (/cgi-bin/|\?) 0     0%      0
refresh_pattern .               0       20%     4320
acl manager proto cache_object
acl localhost src 127.0.0.1/32 ::1
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
acl localnet src 192.168.0.0/24 # RFC 1918 possible internal network
acl SSL_ports port 443
acl Safe_ports port 80          # http
acl Safe_ports port 22          # ssh
acl Safe_ports port 21          # ftp
acl Safe_ports port 443         # https
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access allow localnet
http_access deny all
http_port 3128 transparent

error:
Citace
cat /var/log/squid/access.log  | tail
1310989889.108      1 192.168.0.100 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989889.113      1 192.168.0.100 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989889.119      1 192.168.0.100 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989889.125      1 192.168.0.100 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989889.132      1 192.168.0.100 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989892.520      1 192.168.0.150 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989892.524      1 192.168.0.150 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989892.527      1 192.168.0.150 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989892.530      1 192.168.0.150 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
1310989892.533      1 192.168.0.150 NONE/400 3582 NONE error:invalid-request - NONE/- text/html
Název: Re: Přesměrování sítě přes Tor
Přispěvatel: Tomáš 18. 07. 2011, 15:21:04
Ok, takže jsem nějak nepřemýšlel.

Bohužel na tyto SSL spojení je potřeba nastavit na klientovi proxy, bez toho to nejde.
(CONNECT je hezký, ale prohlížeč informaci o druhu požadavku neodešle).
Navíc u SSL je to vše už zabaleno, a hostname se vytáhnout lehce nedá.

Nevím zda existuje nějaké udělátko co by poslouchalo na nižší vrstvě a dle cílové adresy to upravilo na CONNECT <ip_cile>

mc má možná něco v konfiguráku na nastavení proxy, ssh také, pidgin(IRC,ICQ,...) také bez problémů, prohlížeče samozdřejmostí.

Obecně pokud bez vědomí uživatelů a potřeby přenastavovat prohlížeče, tak se dá bezpečně jen kterýkoli http port(80/tcp).
Název: Re: Přesměrování sítě přes Tor
Přispěvatel: Qazasd 28. 09. 2011, 02:18:26
DNSka bych resil DNATem na localhost a port na kterem poskytuje DNS TOR.

Na zbytek bych sel vice od lesa a pouzil napr. http://code.google.com/p/socks-tun/ ... Prez vytvoreny device lze pak naroutovat vsechen TCP traffic, samozrejme aby tor nezacal posilat data sam prez sebe bude zapotrebi nejaky jednoduchy policy routing. UDP se TORem neda takze v iptables -j REJECT

Pro inspiraci lze kouknout na https://tails.boum.org/ kde je transparentni vyuziti TORu v systemu poreseno velmi pekne.