如何使用终端更改Tor给出的IP地址?

有没有办法改变Tor从终端给出的IP地址?

我有Tor服务,我想更改Tor从终端给我的IP地址。 或者换句话说:如何在命令行上从Tor请求新的IP地址?

对于在Ubuntu上运行的tor守护进程,首先尝试这样做:

killall -HUP tor 

如果这不起作用,请启用torrc文件中的控制端口。

然后,使用tor –hash-password密码为控制端口设置密码。

打开与控制端口的telnet连接并发出NEWNYM命令:

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

来源:

  • 超级用户:如何从命令行告诉tor,在Mac上给我一个新的身份?
  • Stack Overflow:如何在终端中请求新的TOR身份
  • 超级用户:如何“冲洗电路”

您只需在bash脚本中输入或插入即可:

 service tor reload 

您可以设置控制端口并使用python脚本

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

方法1:HUP

在Tor使用终端给出的更改IP地址中提到但是这里有更多细节:

 sudo killall -HUP tor 

然后检查您的IP是否已更改:

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

使用sudo apt-get install tor版本1.6.0-5在Ubuntu 17.10中测试。

因为默认情况下root是由root启动的,所以需要sudo

HUP信号对Tor守护进程的作用记录在: https ://gitweb.torproject.org/torspec.git/tree/control-spec.txt?id = 03aaace9bd9459b0d4bf22a75012acf39d07bcec #n394,相当于通过以下方式发送一些命令:命令端口。

Browser Bundle 5.0.5不受此影响,只有守护程序端口,如默认的9050,TBB不使用。 对于该用例,请参阅: https : //tor.stackexchange.com/questions/1071/how-can-a-new-circuit-happen-without-closing-all-tabs

如果您正在部署如此处所述的Tor IP队伍,您可以选择性地发送:

 kill -HUP $PID 

方法2:控制端口

提到的kat :

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

但为了在Ubuntu 17.10上工作,你必须首先

  • 通过取消注释来启用控制端口:

     ControlPort 9051 

    来自/etc/tor/torrc

  • 设置空密码,否则会给出515 Authentication failed: Wrong length on authentication cookie. 。 第一次运行:

     tor --hash-password '' 

    这输出类似于:

     16:D14CC89AD7848B8C60093105E8284A2D3AB2CF3C20D95FECA0848CFAD2 

    现在在/etc/tor/torrc更新一行:

     HashedControlPassword 16:D14CC89AD7848B8C60093105E8284A2D3AB2CF3C20D95FECA0848CFAD2 
  • 重启Tor:

     sudo service tor restart 

额外奖励:如何检查您的IP是否已更改

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

也可以看看:

相关主题