Come modificare l'indirizzo IP fornito da Tor utilizzando il terminale?


19

C'è un modo per cambiare l'indirizzo IP che è dato da Tor dal terminale?

Ho il servizio Tor e voglio cambiare l'indirizzo IP che Tor mi fornisce dal terminale. O in altre parole: come posso richiedere un nuovo indirizzo IP da Tor sulla riga di comando?


4
un modo ancora migliore per dire che è come "cambiare identità" da un terminale
mchid

Ho aggiunto un altro comando che ho trovato durante l'esecuzione del daemon tor su Ubuntu in background.
mchid

Risposte:


19

Per il demone Tor in esecuzione su Ubuntu, prova prima questo:

killall -HUP tor

Se ciò non funziona, abilitare la porta di controllo nel file torrc.

Quindi, impostare una password per la porta di controllo con tor --hash-password password.

Aprire una connessione Telnet alla porta di controllo ed emettere il comando NEWNYM:

printf 'AUTHENTICATE "password"\r\nSIGNAL NEWNYM\r\n' | nc 127.0.0.1 9051

fonti:


1
Per i neofiti là fuori, devi prima impostare la password con hash sul tuo torrc in questo modo: askubuntu.com/a/989108/52975
Ciro Santilli 24 改造 中心 法轮功 六四

16

Puoi semplicemente digitare o inserire nel tuo script bash:

service tor reload

Ne avevo bisogno sudo, ma ha funzionato.
Brian Z,

Per me questa è in realtà una risposta migliore di quella fornita da @mchid. Il comando reload attiverà l'eseguibile del running run per ricaricare la sua configurazione e impostare un nuovo circuito (e quindi ottenere un nuovo IP). L'altra risposta ucciderà l'eseguibile in esecuzione e lo riavvierà. Ciò potrebbe richiedere più tempo e causare il fallimento di altri servizi che dipendono dal proxy di Tor.
Alex,

Non so perché altri abbiano suggerito una soluzione così complicata mentre questa semplice linea può risolvere il problema
Mostafa Ahangarha,

1
@MostafaAhangarha Perché questo non funziona per più istanze di
Tor

4

Metodo 1: HUP

Menzionato a Cambia indirizzo IP che è dato da Tor usando il terminale, ma qui andiamo alcuni altri dettagli:

sudo killall -HUP tor

Quindi controlla che il tuo IP sia cambiato con:

curl --socks5 127.0.0.1:9050 http://checkip.amazonaws.com/

Testato in Ubuntu 17.10 con la sudo apt-get install torversione 1.6.0-5.

sudo è necessario poiché il processo è avviato da root per impostazione predefinita.

Ciò che un segnale HUP fa esattamente al demone Tor è documentato su: https://gitweb.torproject.org/torspec.git/tree/control-spec.txt?id=03aaace9bd9459b0d4bf22a75012acf39d07bcec#n394 ed è equivalente all'invio di alcuni comandi tramite il porta di comando.

Browser Bundle 5.0.5 non è interessato da questo, solo porte daemon come il predefinito 9050, che non è utilizzato da TBB. Per tale caso d'uso consultare: /tor/1071/how-can-a-new-circuit-happen-without-closing-all-tabs

Se stai schierando un esercito di IP Tor come menzionato qui puoi inviare selettivamente:

kill -HUP $PID

Metodo 2: porta di controllo

Menzionato da Kat :

(echo authenticate '""'; echo signal newnym; echo quit) | nc localhost 9051

ma per farlo funzionare su Ubuntu 17.10 devi prima :

  • abilitare la porta di controllo decommentando:

    ControlPort 9051
    

    a partire dal /etc/tor/torrc

  • Impostare la password vuota, altrimenti fornisce 515 Authentication failed: Wrong length on authentication cookie.. Prima corsa:

    tor --hash-password ''
    

    Questo produce qualcosa come:

    16:D14CC89AD7848B8C60093105E8284A2D3AB2CF3C20D95FECA0848CFAD2
    

    Ora su /etc/tor/torrcaggiorna la riga:

    HashedControlPassword 16:D14CC89AD7848B8C60093105E8284A2D3AB2CF3C20D95FECA0848CFAD2
    
  • Riavvia Tor:

    sudo service tor restart
    

Bonus: come verificare che il tuo IP sia cambiato

curl --socks5 127.0.0.1:9050 http://checkip.amazonaws.com/

Guarda anche:

Discussioni correlate


Soluzioni così complicate per una funzione così semplice ( get new circuit). Non mi fido più di tutti. Penso che sia pieno di bug e difetti per farci esporre
adrianTNT

3

È possibile impostare una porta di controllo e utilizzare lo script Python

from stem import Signal
from stem.control import Controller

with Controller.from_port(port = 9051) as controller:
    controller.authenticate()
    controller.signal(Signal.NEWNYM)

Sai come aspettare fino a quando il nuovo ip è impostato?
silgon
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.