Tor + privoxy

spialaspia@inventati.org

v0.2 25/11/2005


Guida all'installazione di tor e privoxy per la navigazione anonima

1. Tor

Tor e' un programma che redirige le nostre connessioni attraverso una serie di server sparsi per la rete che comunicano tra di loro in sessioni crittate (i cosiddetti onion routers), per rendere la nostra navigazione anonima. Questi server altro non sono che proxy socks4.

homepage: http://tor.eff.org

Per utilizzare le funzionalita' di tor tramite un browser la cosa migliore e' associarlo a privoxy, che e' l'evoluzione del vecchio junkbuster, una sorta di proxy locale.

1.1 Installazione

Scaricatevi dal sito il file per il vostro sistema operativo, o i sorgenti se volete compilarvelo.

(Per la compilazione seguite le istruzioni classiche, non necessita di particolari accorgimenti)

Linux

il file di configurazione e' /etc/tor/torrc (o /usr/local/etc/tor/torrc).

se usate tor come client il file di configurazione di default non necessita di modifiche.

Windows

Non e' necessaria nessuna modifica al file di configurazione installato automaticamente

1.2 Utilizzo

Linux

Per lanciarlo se avete installato un pacchetto precompilato ci sara' il solito /etc/init.d/tor, oppure /etc/rc.d/rc.tor da eseguire, se invece avete installato da sorgenti basta digitare "tor", oppure usate uno degli script presenti nella directory contrib.

La cosa migliore e' utilizzare uno script che lancia tor ogni volta che ci colleghiamo alla rete.

Tor si mette in ascolto sulla porta 9050

Windows

Non ho mai usato tor con windows, se qualche utente vuole suggerirmi due righe di istruzioni e' il benvenuto, immagino comunque si tratti semplicemente di cliccare sull'icona del programma.

1.3 Problemi

Se nei log trovate questo messaggio:

fetch_from_buf_socks(): Your application (using socks4 on port 80) is giving Tor only an IP address. Applications that do DNS resolves themselves may leak information. Consider using Socks4A (e.g. via privoxy or socat) instead.

significa che l'applicazione che state usando (in questo caso un browser sulla porta 80) ha passato a tor un indirizzo IP e non un nome DNS, che significa che ha risolto da solo l'hostname e ha ottenuto un IP che ha passato a tor. Dal punto di vista del funzionamento non e' un problema, lo e' dal punto di vista della sicurezza, perche' la risoluzione del nome dovrebbe essere demandata al socks server esterno, e non dovrebbe essere fatta dall'applicazione stessa. Questo perche' se il nostro programma fa una query ad un server DNS per sapere l'IP del sito che vogliamo visitare, lascia una traccia evidente di quelle che sono le nostre intenzioni. La soluzione proposta e' di usare privoxy o socat come "intermediari" tra l'applicazione e tor, oppure se possibile di indicare all'applicazione di usare socks4a .

2. Privoxy

homepage: http://www.privoxy.org

2.1 Compilazione:

Se avete installato privoxy da un pacchetto precompilato per linux o con l'eseguibile per windows saltate questa sezione.

Se invece volete compilare dai sorgenti le istruzioni sono molto semplici e sono contenute nel file INSTALL

assicuratevi, prima di installare il programma, di aver creato il gruppo e l'utente privoxy sul vostro sistema, oppure quando lanciate il configure modificate l'utente con i cui privililegi funzionera' privoxy.

2.2 Configurazione

Linux

I files di configurazione saranno in /etc/privoxy/, (se avete compilato staranno in /usr/local/etc/privoxy)

Windows

I files di configurazione saranno nella stessa cartella dove e' stato installato il programma privoxy.



Ci sono diversi file, e sono tutti molto ben commentati:

config: e' il file di configurazione generale, normalmente non necessita di modifiche sostanziali, soprattutto per un uso "casalingo", se invece lo si installa come servizio pubblico la parte relativa alle ACL per definire chi puo' accedere al servizio va sistemata. E' anche possibile indicare se tutte le richieste debbano passare attraverso un altro proxy "esterno" (vedi sezione FORWANDING).

standard.action: questo generalmente non va toccato, sono impostazioni generali del programma

default.action: queste sono le configurazioni definite dagli sviluppatori

user.action: queste sono le configurazioni personalizzate dell'utente La definizione delle "action" permette una personalizzazione notevole, se volete avventurarvici la cosa migliore e' guardarsi il file deafult.action, giusto per darvi un'idea le "action" possibili applicabili alle pagine visitate sono: aggiunta di header, blocco della pagina, fast redirect, filtri vari molto interessanti, eliminazione di header, blocco di immagini/popup/cookies, etc. ovviamente tutto cio' puo' essere applicato a tutte le pagine visitate o solo a quelle di alcuni siti.

default.filter: filtri definiti dagli sviluppatori

se volete usare privoxy associato a tor dovete inserire questa riga nel file config:

forward-socks4a / localhost:9050 .

in modo che tutte le richieste ricevute da privoxy siano girate al tor che gira sulla macchina locale sulla porta 9050.

ATTENZIONE: usate forward-socks4a, non forward-socks4 o forward-socks5.

2.3 Utilizzo

Innanzitutto dovete avviare il programma, per Windows avrete l'iconcina su cui cliccare, per linux dovreste trovare in /etc/rc.d/ o /etc/inet.d/ il file rc.privoxy o privoxy per lanciare il servizio.

una volta avviato, privoxy si mette in ascolto sulla porta 8118, la porta si puo' comunque modificare nel file config alla voce "listen-address".

a questo punto configurate il browser in modo che utilizzi privoxy per navigare (che a sua volta si appoggia a tor), per fare cio' basta andare nelle impostazioni e dire al browser di usare il proxy in ascolto su localhost alla porta 8118. Per Mozilla Firefox ad esempio: menu Edit --> preferences --> Connection Settings --> Manual Proxy Configuration Se usate internet explorer invece, smettete subito ;)

Per verificare se privoxy sta funzionando a dovere potete digitare nel browser

http://p.p/

e vi dovrebbe comparire una schermata da dove potrete modificare la configurazione di privoxy, attivare/disattivare privoxy e altro.

Per assicurarsi che invece privoxy + tor stiano funzionando a dovere provate a visitare una di quelle pagine che vi dicono qual'e' il vostro IP, ad esempio http://www.junkbuster.com/cgi-bin/privacy e verificate che l'IP che viene indicato non sia il vostro IP.