繁体   English   中英

如何使用不同的退出 IP 一次运行多个 Tor 进程?

[英]How to run multiple Tor processes at once with different exit IPs?

我是 Tor 的新手,我觉得应该考虑多个 Tor。 我在这里提到的多个 Tor 不仅是多个实例,而且每个实例都使用不同的代理端口,就像这里所做的http://www.howtoforge.com/ultimate-security-proxy-with-tor

我正在尝试开始使用 4 Tors。 但是,本教程仅适用于 Arch Linux,我使用的是无头 EC2 ubuntu 64 位。 经历 Arch 和 Ubuntu 之间的差异真的很痛苦。 在这里,我想知道是否有人可以提供一些帮助来简单地实现我的想法。

  1. 四个 Tors 同时运行,每个 Tors 都有一个单独的端口,privoxy 或 polipo 或者一旦它工作就可以了。 像:8118 <- Privoxy <- TOR <- 9050 8129 <- Privoxy <- TOR <- 9150 8230 <- Privoxy <- TOR <- 9250 8321 <- Privoxy <- TOR <- 9350

  2. 这样,如果我尝试返回 127.0.0.1:8118、8129、8230 和 8321 的 ip,它们应该返回四个不同的 ip,这表明有四个不同的 Tors 同时运行。 然后,几分钟后,再次检查,他们四个应该都有一个新的ips。

我知道我的简单“梦想”可以在很多方面实现,但是……我不仅是 Tor 的新手,甚至还对 bash 和 python 不熟悉……这就是为什么我来这里看看你们中的一些人是否可以点亮我起来。

这些链接可能有用:

http://blog.databigbang.com/distributed-scraping-with-multiple-tor-circuits/ https://www.torservers.net/wiki/setup/server#multiple_tor_processes最好,

顺便说一句,如果我运行$ ps -A | grep 'tor' $ ps -A | grep 'tor'我在那里有几个实例,但是“?” 在 tty 列下,这是什么意思,因为我知道 tty 表示终端?

创建四个 torrc 文件,比如/etc/tor/torrc.1.4

在每个文件中,编辑以下行:

SocksPort 9050
ControlPort 9051
DataDirectory /var/lib/tor

为每个torrc文件使用不同的资源,例如对于torrc.1

SocksPort 9060
ControlPort 9061
DataDirectory /var/lib/tor1

对于torrc.2

SocksPort 9062
ControlPort 9063
DataDirectory /var/lib/tor2

等等。

仅包含上述行的配置文件将起作用:如果您愿意,可以从默认模板中删除所有其他行。

DataDirectory也可以相对于启动tor的当前目录,例如:

DataDirectory d1

然后像这样启动tor:

tor -f /etc/tor/torrc.1  
tor -f /etc/tor/torrc.2

其他两个文件依此类推。

这将在四个端口上创建四个不同的 Socks5 服务器。 每个人都会打开不同的电路,这就是您想要的。

建议使用链接 Tor 来对抗. 你可能会得到更糟糕的匿名,而不是更好的匿名。

这样做会产生未定义且可能不安全的行为。 然而,从理论上讲,您可以获得 6 跳而不是 3 跳,但不能保证您会得到 3 次不同的跳 - 您最终可能会得到相同的跳,可能是相反的或混合的顺序。 目前尚不清楚这是否安全。 它从未被讨论过。

您可以选择一个入口/出口点,但是当您将路线选择留给 Tor 时,您将获得 Tor 所能提供的最佳安全性; 覆盖入口/出口节点可能会以我们不理解的方式破坏您的匿名性。 因此,强烈建议不要使用 Tor 过度使用 Tor。

如果您比 Tor 开发人员更聪明,您应该只使用 Tor 的路由算法。

The Tor Project 很久以前就弃用了 privoxy / polipo。 建议您只使用Tor 浏览器 只有 Tor 浏览器为您提供统一的网络指纹,您不会脱颖而出。

从 Tor 版本 0.2.3 开始,不同的 Socks、-Dns- 或 TransPorts 通过不同的电路,因此防止了身份关联。 这个术语是流隔离。 得到这个,你可以添加到torrc ...

SocksPort 9050
SocksPort 9052
SocksPort 9053
SocksPort 9054
#...

...他们都会去想不同的电路。

当您使用 Tor 浏览器时,您还可以使用 Tor Button 的新身份功能。 单击 Tor 按钮(葱)并选择新身份。 这将重置所有浏览器状态并更改 Tor 的电路。

而且是 Tor,而不是 TOR。

请注意,使用流隔离时,通过不同的电路并不能保证获得不同的 Tor 出口节点。 有时 Tor 只会使用不同的入口守卫或中间中继。 这是正常的。

我尝试了 torrc.1 、torrc.2 等......但它没有用。

然而,这个工作:

  1. 通过以下方式停止 tor 进程: /etc/init.d/tor stop
  2. 打开gedit /etc/tor/torrc (如果你不是 root,在它之前放 sudo 以作为 root 访问)
  3. 搜索SocksPort 9050
  4. 现在把你想成为的任何端口作为流端口(SocksPort 9060、SocksPort 9070、SocksPort 9080 ....等)
  5. 搜索 ControlPort 9051
  6. 现在把你想要的任何端口作为流端口(ControlPort 9061 ,ControlPort 9071,ControlPort 9081 ....etc.)注意控制端口总是 SOCKSPORT+1
  7. 再次启动tor进程: /etc/init.d/tor start
  8. 查看tor状态/etc/init.d/tor status

它应该显示如下内容:

tor.service - Anonymizing overlay network for TCP
   Loaded: loaded (/lib/systemd/system/tor.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2016-05-13 22:18:21 GST; 1s ago
  Process: 10259 ExecReload=/bin/kill -HUP ${MAINPID} (code=exited, status=0/SUCCESS)
  Process: 10319 ExecStartPre=/usr/bin/tor --defaults-torrc /usr/share/tor/tor-service-defaults-torrc -f /etc/tor/torrc --RunAsDaemon 0 --verify-config (code=exited, status=0/SUCCESS)
  Process: 10317 ExecStartPre=/usr/bin/install -Z -m 02750 -o debian-tor -g debian-tor -d /var/run/tor (code=exited, status=0/SUCCESS)
 Main PID: 10322 (tor)
   CGroup: /system.slice/tor.service
           └─10322 /usr/bin/tor --defaults-torrc /usr/share/tor/tor-service-defaults-torrc -f /etc/tor/torrc --RunAsDaemon 0

May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.860 [notice] Tor v0.2.6.10 (git-71459b2fe953a1c0) running on Linux with Li... 1.2.8.
May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.860 [notice] Tor can't help you if you use it wrong! Learn how to be safe ...warning
May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.860 [notice] Read configuration file "/usr/share/tor/tor-service-defaults-torrc".
May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.860 [notice] Read configuration file "/etc/tor/torrc".
May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.863 [notice] Opening Socks listener on 127.0.0.1:9050
May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.863 [notice] Opening Socks listener on 127.0.0.1:9060
May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.863 [notice] Opening Control listener on 127.0.0.1:9051
May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.863 [notice] Opening Control listener on 127.0.0.1:9061
May 13 22:18:20 momen-Lenovo tor[10322]: May 13 22:18:20.863 [notice] Opening Control listener on /var/run/tor/control
May 13 22:18:21 momen-Lenovo systemd[1]: Started Anonymizing overlay network for TCP.

提示:有些行被省略,使用 -l 显示完整。

创建一个tor配置目录:
$> mkdir -p ~/configuration_files/tor
$> config=~/configuration_files/tor
$> cd "${config}"

/etc/tor/torrc复制到配置目录并根据需要制作尽可能多的副本:例如 10
printf "torrc_%0.2s\\n" {1..10} | xargs -I {} /bin/cp /etc/tor/torrc "${config}{}"

/etc/torsocks.conf复制到配置目录并根据需要制作尽可能多的副本:例如与上面的 10 相同
printf "torsocks_%0.2s.conf\\n" {1..10} | xargs -I {} /bin/cp /etc/torsocks.conf "${config}/{}"

创建新的数据目录并修复所有权/权限:
$> sudo mkdir /var/lib/tor{1..10}

编辑配置文件以具有不冲突的对应端口号:

for a in {1..10}; do 
 sed -i "s/^#SocksPort 9050.*/SocksPort $((9050+${i}))/;s|^#DataDirectory /var/lib/tor|DataDirectory /var/lib/tor${i}|" torrc_${i}
 sed -i "s/server_port = 9050/server_port = $((9050+${i}))/" torsocks_${i}.conf
 sudo chmod -R --reference /var/lib/tor /var/lib/tor${i}
 sudo chown -R CHANGETHIS:CHANGETHIS /var/lib/tor${i} 
done 

注意:将 CHANGETHIS 更改为计划使用它的用户的用户/组。

之后就很容易上手了,您可以使用相应的配置文件来启动 Tor 的各个实例,例如/usr/bin/tor -f "${config}/torrc_3"

要使用它,您需要做的就是导出变量 TORSOCKS_CONF_FILE 以指向相应的torsocks.conf文件:
例如$> export TORSOCKS_CONF_FILE="${config}/torsocks_3.conf"

接下来,您可以 torify / torsocks 来自该特定 shell 的任何应用程序,它将使用 torsocks_3.conf 代理。
尝试: $> torify bash
$> curl www.ipmango.com/api/myip

要更改为另一个代理,只需使用其 torrc 文件启动相应的 Tor 并导出 TORSOCKS_CONF_FILE 变量以指向新配置。

这是一个简单的别名,在您按照上述方式设置并安装了 roxterm 之后,它可以完成这项工作。 它将检查netstat以查看代理是否已经启动,如果没有,它将在单独的 shell 窗口中启动它。

alias prox='_(){ proxy=${1:-1}; config_base="~/configuration_files/tor"; port=$((9050+${proxy})); netstat -an | { ! grep -q "127.0.0.1:${port}"; } && roxterm -e bash -c "/usr/bin/tor -f \\"${config_base}/torrc_${proxy}\\"; bash"; export TORSOCKS_CONF_FILE="${config_base}/torsocks_${proxy}.conf"; }; _'

要使用它:

$> prox 4 
$> torify bash 
  1. 从官网下载 Tor Browser for Windows
  2. 多次提取 Tor 浏览器(每次更改目标文件夹名称)
  3. 跳过第一个 Tor 浏览器并按照步骤 4-6 操作剩余的 Tor 浏览器实例。
  4. 启动 Tor 浏览器,在搜索栏中搜索 about.config
  5. 在tor-browser的配置窗口搜索extensions.torlauncher.start_tor
  6. 将 start_tor 的值从 TRUE 更改为 FALSE
  7. 对于所有 Tor 浏览器实例(最后一个除外),请按照第 8 步操作。
  8. 转到 TorBrowser、Data、Tor、torrec-defaults。 在文件末尾添加“SocksPort 9153”并保存文件。 对于每个新的浏览器实例,将 9153 增加 1。

来源:如何使用不同的 IP 运行多个 Tor 浏览器

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM