Proxy Tor: cos'è e come realizzarlo con Linux, anche con macchine virtuali e Raspberry Pi

Come creare un proxy server con Tor utilizzando Linux: tutto il traffico viene anonimizzato, indipendentemente dal browser Web in uso.

Il network Tor (The Onion Router) non ha bisogno di presentazioni: si tratta di uno strumento che permette di anonimizzare il traffico dati applicando più livelli di cifratura su tutte le informazioni dirette verso o provenienti da server remoti.
Abbiamo visto cos’è, come funziona Tor Browser e in che modo riesce a proteggere l’identità degli utenti.

Quando ci si collega attraverso la rete Tor, il server remoto può vedere solo l’indirizzo IP pubblico dell’exit node. L’elenco degli exit node Tor è pubblico. Il server remoto non può invece risalire all’indirizzo IP pubblico realmente utilizzato dall’utente e assegnato dal provider Internet da lui scelto.

Il diritto all’anonimato è un principio riconosciuto: in Italia, ad esempio, il Parlamento ha stabilito che “ogni persona può accedere alla rete e comunicare elettronicamente usando strumenti anche di natura tecnica che proteggano l’anonimato ed evitino la raccolta di dati personali, in particolare per esercitare le libertà civili e politiche senza subire discriminazioni o censure” (Dichiarazione dei diritti in Internet, 2015).
Si pensi a coloro che sono sottoposti a censure, a comportamenti discriminatori, ai whistleblower che si trovano nella situazione di segnalare illeciti senza però dover temere ritorsioni personali.

Tor Browser consente di navigare sul Web in totale anonimato con la possibilità di scegliere, modificando un file di configurazione, anche il Paese preferito al quale deve appartenere l’exit node.

Come navigare con Tor da tutti i dispositivi collegati in rete locale

Un programma come Tor Browser permette di beneficiare del massimo livello di protezione possibile perché, ad esempio, non conserva informazioni sulla sessione di navigazione, utilizza una serie di attenzioni per evitare il fingerprinting dell’utente, per impostazione predefinita consente soltanto lo scambio di dati usando il protocollo HTTPS e altro ancora.

Se si volessero forzare uno o più browser in rete locale a navigare usando la rete Tor, basta installare l’applicazione come servizio su un sistema Linux.
È possibile farlo su una macchina Linux connessa in LAN, in una macchina virtuale o ad esempio su una Raspberry Pi.

Nel nostro caso abbiamo scelto di creare una macchina virtuale Hyper-V in Windows installandovi Ubuntu Linux. Per rendere la macchina virtuale accessibile dagli altri dispositivi connessi in rete locale, nel caso di Hyper-V basta accedere alle impostazioni quindi cliccare su Scheda di rete quindi assegnare alla macchina una scheda di rete virtuale impostata su Rete esterna (vedere in figura).

Dalla finestra del terminale Linux (su Ubuntu Linux e derivate) basta digitare i seguenti comandi:

sudo apt get update && sudo apt get upgrade -y

sudo apt install tor -y

I due comandi permettono di aggiornare la distribuzione e installare Tor, anche come servizio di sistema. Digitando infatti quanto segue, si riceve conferma che il servizio Tor risulta correttamente in esecuzione:

sudo systemctl status tor@default.service

I comandi che seguono consentono di installare alcune utilità di rete e di verificare l’indirizzo IP locale assegnato alla macchina con ifconfig:

sudo apt install net-tools -y

ifconfig

Nell’esempio la nostra macchina virtuale ha IP privato 192.168.1.135.

A questo punto si può creare una copia della configurazione predefinita di Tor quindi aprire l’editor nano per modificare le impostazioni dell’applicazione:

sudo cp /etc/tor/torrc /etc/tor/torrc.backup
sudo nano /etc/tor/torrc

Il file di configurazione risulta completamente commentato (carattere # all’inizio di ogni riga).
Per configurare Tor come proxy server basta incollare quanto segue nel file torrc quindi premere CTRL+O e poi CTRL+X per salvare le modifiche e chiudere l’editor:

SocksPort 192.168.1.135:9050
SocksPolicy accept 192.168.1.0/24
RunAsDaemon 1
DataDirectory /var/lib/tor

Al posto di 192.168.1.135 va ovviamente indicato l’indirizzo IP della macchina Linux sulla quale si è installato Tor come servizio; 192.168.1.0/24 va sostituito con l’intervallo di rete usato nell’ambito della propria rete locale (ne parliamo nell’articolo in cui spieghiamo cos’è la subnet mask).

Per rendere effettive le modifiche, basta digitare sudo systemctl restart tor@default.service e premere Invio.

I proxy SOCKS sono proxy di basso livello in grado di gestire qualsiasi programma o protocollo e qualsiasi traffico senza limitazioni.

Come configurare il browser per l’accesso alla rete tramite Tor

A questo punto, indipendentemente dal browser utilizzato (Chrome, Edge, Firefox oppure Chromium e derivati) è possibile portarsi nelle opzioni e modificare le preferenze relative al proxy server da usare.

In Firefox basta digitare about:preferences#general nella barra degli indirizzi, cliccare sul pulsante Impostazioni in corrispondenza di Impostazioni di rete quindi inserire l’indirizzo IP locale del sistema sul quale si è installato il proxy server Tor.

La porta deve essere impostata a 9050 e deve risultare selezionata l’opzione SOCKS v5.

Per tutti gli altri browser, ad esempio Edge, Chrome, Chromium e derivati, si può premere la combinazione di tasti Windows+R, digitare inetcpl.cpl ,4, fare clic su Impostazioni LAN in basso a destra e infine sulla casella Utilizza un server proxy per le connessioni LAN.

Con un clic sul pulsante Avanzate si deve disattivare la casella Utilizza lo stesso server proxy per gli indirizzi che iniziano per, eliminare tutto il contenuto a destra delle voci HTTP, Sicurezza e FTP per indicare l’indirizzo privato del server Tor a destra di Socks. Il corrispondente campo Porta deve essere impostato a 9050.
Diversamente comparirebbe il messaggio “This is a SOCKS Proxy, Not An HTTP Proxy“.

Provando ad avviare il browser Web e qualsiasi altro programma installato sulla macchina Windows, questo scambierà i dati utilizzando la rete Tor.
Effettuando il test di connessione alla rete Tor, comparirà il messaggio Congratulations, this browser is configured to use Tor. Da Firefox comparirà una finestra simile a quella riprodotta in figura.

Con altri browser Web il messaggio è lo stesso con un’aggiunta: “however, it does not appear to be Tor Browser“: in questo modo Tor vuole ricordare che se l’obiettivo è quello di cambiare indirizzo IP pubblico e superare eventuali censure va bene ma l’identità dell’utente potrebbe essere comunque fatta emergere in qualche modo (ad esempio combinando i dati con quelli raccolti durante le precedenti sessioni di navigazione). Per questo viene suggerito l’utilizzo di Tor Browser.

Affinché tutto funzioni correttamente, è necessario che alla macchina con il servizio Tor installato venga assegnato un indirizzo IP privato statico.
Per disattivare l’uso del proxy server basta scegliere Nessun proxy nella configurazione della connessione Firefox e disattivare Utilizza un server proxy per le connessioni LAN in Windows.

Ti consigliamo anche

Link copiato negli appunti