如何在终端中请求新的TOR身份

时间:2013-06-07 15:16:56

标签: macos terminal telnet tor

我正在尝试通过我的mac osx上的终端中的telnet连接到TOR并请求新的身份,但它无法正常工作,我总是收到此错误消息:

Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
telnet: Unable to connect to remote host

我正在使用此telnet命令进行连接:

telnet 127.0.0.1 9051

想知道为什么这不起作用?

THX

3 个答案:

答案 0 :(得分:19)

获得新身份的最快捷,最简单的方法"发送HUP信号。

Tor守护程序重新读取配置文件并生成新标识"。

我为此保留了特殊的bash脚本:

# cat /usr/local/bin/nym 
#!/bin/bash
pidof tor | xargs sudo kill -HUP

我的sudoers文件充满了NOPASSWD:

# cat /etc/sudoers 
....
anonymous       ALL=(ALL) NOPASSWD: ALL
...

试试这个。

答案 1 :(得分:12)

你在torrc中设置了一个控制端口吗?要通过telnet使其可用,您将需要“ControlPort 9051”。之后你会想要给出一个NEWNYM信号......

$ telnet localhost 9051
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
AUTHENTICATE
250 OK
SIGNAL NEWNYM
250 OK

您可以使用stem与...

通过脚本执行此操作
from stem import Signal
from stem.control import Controller

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

感谢您的提问!我已将其添加到stem's faq

答案 2 :(得分:0)

对于被Google搜索引擎xD踢到这里的ubuntu用户:

$ test your current IP
$ curl -sx socks5://127.0.0.1:9050 ifconfig.co | grep -oP '(?<=Your IP</span>: ).*(?=</span>)'
185.220.100.255

$ to get new NYM just restart TOR service
$ sudo service tor restart

$ but remember a new NYM is not always is a new IP, so check your IP again and redo step 2 if it is the same one
$ curl -sx socks5://127.0.0.1:9050 ifconfig.co | grep -oP '(?<=Your IP</span>: ).*(?=</span>)'
185.220.101.214