Nelle scorse settimane alcuni dei miei 20 lettori hanno forse realizzato il loro server Tor, ed iniziato così a dare un contributo attivo alla privacy in Rete. Amministrare un router Tor, oltre che controllarne il funzionamento di routine, richiede un’attenta gestione di 3 aspetti: banda consumata, numero di connessioni aperte ed exit policy (policy delle uscite).
Esaminiamoli in quest’ordine.
Consumo di banda
La rete Tor, analogamente alle reti peer-to-peer, richiede molta banda per funzionare, anzi, da un certo punto di vista si potrebbe dire che è essa stessa un meccanismo di condivisione della banda.
Come ormai molti sapranno infatti, quando si apre una connessione attraverso la rete Tor, il vostro client utilizza tre router in successione, l’ultimo dei quali, detto exit router, si collega alla destinazione per vostro conto. L’IP che viene eventualmente registrato dal server di destinazione è quindi sempre quello del router di uscita.
È quindi abbastanza semplice calcolare che per trasferire una certa quantità di informazione da o verso la destinazione questa deve passare tre volte attraverso la rete Tor, e che quindi per utilizzare una banda di un kilobyte/secondo attraverso la rete Tor se ne consuma approssimativamente il triplo. Questa banda deve essere fornita dai router Tor, che sono quindi dei grandi consumatori di banda. Fortunatamente per la maggior parte del loro tempo i circuiti aperti attraverso la rete Tor restano inutilizzati. Cio’ non toglie che un router che non abbia a disposizione almeno 20 kByte/secondo non puo’ dare contributi significativi.
Mi raccomando, quando ragionate su questioni di banda, state attenti alle maiuscole. Byte e bit sono oggetti di dimensione assai diversa, all’incirca di dieci volte (lo so che un byte sono esattamente 8 bit, ma quando si parla di trasmissione dati le cose si complicano). La banda indicata dai provider è di solito espressa in bit/secondo kb, mentre la banda che Tor consuma è di solito indicata in Byte/secondo kB. Potenza della maiuscola.
Un’altra questione è che la banda fornita da una connessione ADSL è asimmetrica, come indica la A maiuscola nel nome. Le connessioni più veloci hanno una banda nominale di 20Mb/sec (milioni di bit) cioè 20480 kb/sec (migliaia di bit), ma questa banda è solo in download, mentre in upload la banda massima è di solito 486 kb/sec. Per sua natura Tor utilizza la banda in modo simmetrico, quindi i conteggi della banda devono essere effettuati sulla velocità minore.
Dato che la velocità di upload di una ADSL consumer va dai 20 ai 50 kByte/sec è consigliabile iniziare con la banda minima richiesta per un router Tor (20kB) e provare ad aumentarla dopo qualche giorno se non notate rallentamenti significativi.
I più attenti lettori ricorderanno che avevo intimato di non selezionare la checkbox “Copia la directory del server” durante l’installazione. Si tratta nuovamente di un problema di banda. I client Tor devono scaricare periodicamente la directory che contiene le informazioni principali sui router attivi in rete: nomi, IP, chiavi crittografiche etc. I directory server, che sono pochi, non potrebbero fornire queste informazioni (che rubano alcuni megabyte) alle centinaia di migliaia di client Tor esistenti. Applicando un meccanismo tipico del P2P, i client possono accettare di agire come ridistributori di queste informazioni, e questa è appunto la funzione che si attiva selezionando la checkbox. È attività buona e giusta, ma puo’ richiedere una banda anche superiore a quella dedicata ai circuiti Tor; tra l’altro la banda dedicata è in aggiunta a quella massima specificata nella configurazione. Al solito, quando il vostro router sarà stabile provate ad attivarla e verificate come varia il carico sulla vostra ADSL.
Consumo di risorse
Un router Tor richiede alcune risorse in quantità “anomala”, sia all’interno del server (file descriptor) che all’esterno (connessioni TCP aperte). Mentre il programma di installazione si occupa di alzare il limite di default delle prima ad un valore sufficiente, è possibile che un router Tor abbastanza trafficato tenga aperti contemporaneamente un numero elevato di circuiti TCP. Quest’ultimo fatto puo’ mettere in crisi il vostro router ADSL. Molti router e modem router ADSL (da non confondere con il router Tor) di tipo consumer permettono di avere solo un numero limitato di connessioni contemporaneamente aperte. Un sintomo di questa situazione è un basso valore di disponibilità/banda fornita del router mentre contemporaneamente il comando “netstat -na” rivela 50/100 connessioni aperte verso altri router Tor (per rilevare la banda di un router vista “dalla parte della rete” potete usare questo link selezionando poi il nome del vostro router).
Sfortunatamente nella maggior parte dei casi non esistono soluzioni a questo tipo di problema. L’unica possibilità è cambiare il router o modem-router ADSL con un altro di migliori prestazioni da questo punto di vista. È purtroppo spesso difficile determinare “a priori” questa caratteristica perché nessun produttore lo dichiara tra i dati tecnici. E per finire passiamo all’ultimo l’argomento, il più importante: le exit policy o regole di uscita (policy delle uscite). Abbiamo già accennato in precedenza che un router Tor puo’ essere di uscita oppure no; in quest’ultimo caso si parla, in contrapposizione al termine “router di uscita”, di “router middleman”.
Che cosa caratterizza un router middleman? Elementare Watson, è un router Tor che si collega solo ad altri router Tor ma non permette di uscire su Internet. Collegarsi ad un sito web via Tor, come già ricordato, apre una connessione attraverso 3 router Tor, l’ultimo dei quali si collega al sito richiesto. Solo l’ultimo router deve quindi essere un exit router, gli altri due possono essere router middleman senza che questo crei problemi.
Creare un router middleman è quindi comunque utile alla rete Tor, ma almeno un terzo dei router dovrebbero essere exit node per evitare riduzioni di capacità della rete Tor.
Gestire un router middleman è cosa molto più tranquilla dal punto di vista legale, perchè il suo IP non risulterà mai dai log dei server web, e quindi le probabilità di essere chiamati in causa, pur non azzerandosi, si riducono moltissimo.
D’altra parte dato che un exit router è molto più utile alla rete Tor, la sua interazione con Internet puo’ essere “regolata” tramite l’uso delle exit policy.
Il meccanismo delle exit policy permette di limitare le porte TCP a cui il vostro router Tor puo’ collegarsi. In pratica permettete a chi userà il vostro router di collegarsi solo a certi servizi ma non ad altri; ad esempio di navigare un sito web (porte 80 e 443) ma non di inviare posta (porta 25).
Per quanto riguarda GNU/Linux la policy si sceglie editando la parte finale del file di configurazione di Tor, ma il default è ragionevole; per quanto riguarda Windows invece la policy si sceglie molto più comodamente utilizzando l’apposito tab già visto nella precedente lezione:
ma il default è abbastanza permissivo, e consiglio di rimuovere l’ultima voce, come mostrato in figura, fino a quando non vi sarete formati una vostra convinzione.
Abilitare un dato servizio ha due risvolti; legale e di consumo di banda.
Dal punto di vista legale se abilitate un servizio che viene normalmente abusato (ad esempio spedire la posta) aumenteranno le segnalazioni alle autorità di questi abusi provenienti dal vostro indirizzo IP, quindi aumenterà la probabilità di ricevere una richiesta di informazioni.
Dal punto di vista del consumo di banda abilitare un servizio presente in pochi router di uscita (ad esempio bittorrent) e che consuma molta banda ha due effetti che si rinforzano l’un l’altro. Infatti chi usa un servizio “vorace” uscendo dal vostro router vi consuma non solo molta banda, ma il doppio di molta banda (una prima volta per arrivare sul vostro router ed una seconda per uscire verso Internet).
Inoltre, poiché la selezione del router di uscita da parte dei client Tor degli utenti è automatica in funzione del servizio richiesto (i directory server conoscono le policy dei router e le forniscono ai client per la scelta) se fornite un servizio raro, molti di coloro che lo vogliono usare si concentreranno su vostro router. Conoscete il termine slashdotting ?
Questa è l’ultima lezione di guida, tutto l’essenziale è stato detto; potranno essercene altre se adeguati feedback lo richiederanno. Non vedo l’ora di poter tornare a scrivere di questioni non tecniche!
Vi invito ancora una volta ad utilizzare la lista e-privacy e l’esperienza dei gestori di router Tor che vi sono iscritti per chiarimenti ed informazioni.
Buon lavoro.
Marco Calamari
Tutte le release di Cassandra Crossing sono disponibili a questo indirizzo