Tor su VPN: chi vede il tuo IP e chi vede che usi Tor?
Con Tor su VPN il relè d’ingresso vede la tua uscita VPN e il tuo fornitore vede un relè di guardia. Inverti l’ordine e entrambi gli osservatori cambiano.
Connetti il client VPN, attendi il tunnel, poi apri Tor Browser e lascialo costruire un circuito. È quella sequenza banale a decidere chi vede cosa. In quest’ordine il relè d’ingresso di Tor saluta l’indirizzo di uscita della tua VPN, e il tuo fornitore VPN saluta un relè di guardia pubblico. Fai il contrario e entrambi gli osservatori cambiano. Entrambi gli ordini meritano un passaggio, perché le impostazioni del client rompono in silenzio la sequenza che le persone credevano in vigore, e il controllo che lo rileva è lo stesso in entrambi i casi.
Parti dall’ordine, non dal prodotto
Due disposizioni si chiamano «VPN con Tor», e solo la prima è comune. Con Tor su VPN il tunnel è già attivo quando Tor parte, quindi il processo tor manda la sua connessione di guardia nel tunnel come qualsiasi altro traffico in uscita. Con VPN su Tor, Tor sale per primo e la sessione VPN stessa attraversa il circuito, arrivando al fornitore da un’uscita Tor.
Quello che cambia tra loro è quale indirizzo sta all’estremità più lontana del collegamento più esterno. Ogni osservatore vede solo il salto precedente, mai l’intero percorso: la guardia vede chi si è connesso a lei, e il server VPN vede chi si è connesso a lui. Tor non porta fuori l’indirizzo locale del tuo tunnel, e non c’è alcun campo nel protocollo dove potrebbe farlo.
In entrambi gli ordini il sito di destinazione vede ancora un’uscita Tor, e nessun ordine cambia ciò che quel sito impara dal tuo accesso. La differenza si limita ai due bordi.
Cosa vede il relè d’ingresso di Tor
L’ingresso, o guardia, accetta una normale connessione TCP su una porta relè e avvia una stretta di mano TLS con il client. In una configurazione Tor su VPN l’origine di quella connessione è la tua uscita VPN. In una configurazione Tor per primo è l’indirizzo che la tua macchina ha usato per raggiungere la rete Tor, di solito la tua connessione di casa.
Questo risponde alla metà IP della domanda, ma solo se il tunnel ha davvero portato la connessione. Il processo Tor raggiunge la guardia con il proprio socket, e quel socket non è governato dalle impostazioni proxy di Tor Browser. Il browser parla con il processo tor incluso tramite SOCKS sulla 9150, e poi tor apre la propria connessione usando la tabella di routing del kernel. Una riga Socks5Proxy in torrc, o un trasporto client, cambiano quel percorso. Nient’altro.
Su Linux puoi leggere la risposta dalla macchina. Chiedi al kernel quale interfaccia userebbe per un indirizzo pubblico qualsiasi, poi guarda l’indirizzo locale della connessione stabilita:
ip route get 203.0.113.10
sudo ss -tnp | grep -i torSe la rotta dice dev wg0 o dev tun0, e l’indirizzo locale sulla connessione stabilita è l’indirizzo del tunnel, Tor è dentro la VPN. Se la rotta nomina la tua interfaccia fisica, è fuori, qualunque cosa affermi l’indicatore del client.
Cosa può vedere il tuo fornitore VPN
Il fornitore termina la tua sessione VPN, quindi vede gli indirizzi a cui ti connetti. Gli indirizzi dei relè di guardia sono pubblicati nel consenso pubblico e le loro porte sono ben note, quindi abbinarne uno è una ricerca in un elenco, non un’ispezione approfondita dei pacchetti. Un fornitore non deve rompere Tor per sapere che una sessione è Tor.
Quello che non vede è il resto del circuito. Il relè intermedio e l’uscita vengono scelti dentro Tor, e il fornitore gestisce solo il collegamento alla guardia. Il contenuto della pagina resta dentro il TLS che termina all’uscita, e la risoluzione dei nomi per il traffico Tor avviene anch’essa all’uscita, quindi non c’è nessuna query DNS presso il fornitore da correlare a una destinazione.
I ponti con obfs4 cambiano la ricerca, non la topologia. L’indirizzo di un ponte manca dall’elenco pubblico dei relè e il traffico è modellato per non sembrare Tor, quindi un operatore che confronta solo gli indirizzi non lo segnalerà. La sessione viene ancora dal tuo client VPN, e il fornitore vede ancora un endpoint, un volume e un orario.
La capacità non è una politica di conservazione
Un operatore che può osservare una connessione non ha promesso di conservarla. La registrazione è una decisione separata, scritta in una politica, limitata dalla giurisdizione e verificabile solo con prove di cui ti fidi già. L’etichetta senza log non cambia il ruolo di rete descritto sopra.
L’identità dell’account di solito conta più dell’indirizzo di uscita. Se hai effettuato l’accesso con un indirizzo email, o pagato con carta, il fornitore può collegare la sessione a te senza registrare una sola destinazione. Ruotare gli IP di uscita non cambia nulla in proposito.
Verifica la copertura prima di fidarti di una delle due risposte
La maggior parte di chi crede di far girare Tor su VPN ne fa girare solo una parte. Il tunneling diviso che esclude Tor Browser, un kill switch che copre il browser ma non il servizio tor, un’unità di avvio che gira prima che il tunnel sia attivo, e un percorso IPv6 che aggira il tunnel sono i soliti quattro.
Leggere la schermata di stato del client non ne verifica nessuno. Il test che lo fa: lascia Tor Browser in esecuzione, abbassa il tunnel e osserva se la connessione di guardia sopravvive sull’interfaccia fisica.
L’ordine in cui controllo, fermandomi al primo fallimento:
ip route get 203.0.113.10restituisce il dispositivo del tunnel.ss -tnp | grep -i tormostra la connessione di guardia con un indirizzo locale del tunnel.ip -6 routenon ha una rotta predefinita fuori dal tunnel, oppure l’IPv6 è disattivato nel client.- Staccare la VPN termina o reindirizza la connessione tor invece di lasciarla sul collegamento fisico.
Quale ordine si adatta a ciò che difendi
Entrambi gli ordini nascondono qualcosa ed espongono qualcosa, quindi la risposta è una scelta sull’osservatore che ti interessa.
| Observer | Tor over VPN | VPN over Tor |
|---|---|---|
| Your ISP or local network | Sees a VPN connection, not Tor | Sees a Tor guard connection |
| Your VPN provider | Sees Tor use, and your home address | Sees a Tor exit as the client, not your home address |
| Tor entry relay | Sees the VPN exit | Sees your home address |
| Destination website | Sees a Tor exit | Sees a Tor exit |
Leggilo per colonne finché una riga non corrisponde a ciò che vuoi impedire. Se la preoccupazione è una rete locale o un provider che registra o blocca Tor, Tor su VPN se ne occupa. Se la preoccupazione è che l’operatore VPN scopra il tuo indirizzo di casa, VPN su Tor se ne occupa, e paga esponendo l’uso di Tor alla tua rete e l’indirizzo di casa alla guardia.
Nessuna delle due disposizioni lascia ciechi entrambi i bordi. Aggiungere un osservatore non ne toglie un altro. La nota del Tor Project su eseguire una VPN con Tor dice lo stesso dall’altro lato: il tunnel cambia di chi ci si fida e quali percorsi di guasto esistono, quindi non è un miglioramento da aggiungere senza decidere cosa volevi nascondere.
Decidi prima l’osservatore, scegli poi l’ordine, e verifica con ip route get e ss invece che con l’indicatore del client. Se l’osservatore è qualcuno che può costringere il fornitore VPN stesso, nessuna scelta di ordine lo risolve.