我尝试过并阅读了互联网上关于为 Tor 散列新密码的各种文章。我的 Tor 安装在本地磁盘 D 中,我在命令提示符中使用了以下命令
D:\softwares\tor\Tor Browser\Browser>firefox --hash-password <my password> | more
D:\softwares\tor\Tor Browser\Browser>firefox --hash-password <my password> > tor-password.txt
获取哈希密码的输出,但没有哈希密码的 o/p,而是命令提示打开 Tor 浏览器。并且该位置的文本文件也是空的。我注意到我的 tor 应用程序名称在安装位置是 firefox.exe,但它在桌面上创建了一个名为 tor 的快捷方式。获取哈希密码后,我打算在 torrc(TOR 配置文件)中使用它来更新 TOR 的“ControlPort”侦听器以侦听端口 9051,因为这是 TOR 将侦听与 Tor 控制器通信的应用程序的任何通信的端口,更新哈希密码并实现 cookie 身份验证
我正在按照下面的文章构建一个网络抓取工具。 如何爬取网站而不被屏蔽和 如何使用 TorRequests 和 Python 发出匿名请求
如果我可以提供任何进一步的详细信息,请提及。
答案1
好的,这里是关于如何设置 tor(不是 Tor 浏览器)的完整指南,按照本指南,您不必使用 Tor 浏览器,而是可以配置所有浏览器以使用 tor 网络。
首先,点击此官方链接下载最新的 Tor 浏览器:https://dist.torproject.org/torbrowser/10.0.7/torbrowser-install-win64-10.0.7_en-US.exe,然后安装它;桌面上的默认安装位置已经足够好了,因为您可以轻松打开其文件夹并遍历它。点击此官方链接下载 tor Windows Expert Bundle:https://www.torproject.org/dist/torbrowser/10.0.7/tor-win32-0.4.4.6.zip,解压到一个容易记住的路径位置(即D:)。
第二,熟悉Tor 浏览器和托尔(注意大小写的区别):
Tor 浏览器:
托尔:
第三步:将 *\Tor Browser\Browser\TorBrowser\Tor\ 中的 Pluggable transports 文件夹复制到 *\tor-win32-0.4.4.6\Tor (在此示例中,星号表示 %userprofile%\desktop):
copy "%userprofile%\desktop\Tor Browser\Browser\TorBrowser\Tor\PluggableTransports" %userprofile%\desktop\tor-win32-0.4.4.6\Tor\
第四,学习如何正确配置torrc文件,下面是一个正确的torrc文件,你只需要替换路径(%userprofile%\desktop 不行):
Bridge obfs4 172.86.144.104:443 3F437A9AB9D086322F4FAD1B658EFEF9B2B8B64E cert=6MYDi1ir/HjySknjeaG+hs07FZfYUhlOpAYdxifK80ISMISe+9EJp4t5dq4XIrRh4G1jKg iat-mode=0
Bridge obfs4 155.133.131.55:51429 9247336B1E19BD22C71A9C678B120F7A816D65AB cert=VBYOXYf+SbRu2dCHJkLuL9y7YX4IWhucHGg3ES+l/KKxe3KL+zhCHr5hRqgSE6w80bZvCA iat-mode=0
ClientTransportPlugin meek_lite,obfs2,obfs3,obfs4,scramblesuit exec %userprofile%\desktop\tor-win32-0.4.4.6\Tor\obfs4proxy.exe
ClientTransportPlugin snowflake exec %userprofile%\desktop\tor-win32-0.4.4.6\Tor\snowflake-client.exe -url https://snowflake-broker.azureedge.net/ -front ajax.aspnetcdn.com -ice stun:stun.l.google.com:19302,stun:stun.voip.blackberry.com:3478,stun:stun.altar.com.pl:3478,stun:stun.antisip.com:3478,stun:stun.bluesip.net:3478,stun:stun.dus.net:3478,stun:stun.epygi.com:3478,stun:stun.sonetel.com:3478,stun:stun.sonetel.net:3478,stun:stun.stunprotocol.org:3478,stun:stun.uls.co.za:3478,stun:stun.voipgate.com:3478,stun:stun.voys.nl:3478
CookieAuthentication 1
ClientOnionAuthDir %userprofile%\desktop\tor-win32-0.4.4.6\Data\Tor\onion-auth
DataDirectory %userprofile%\desktop\tor-win32-0.4.4.6\Data\Tor
GeoIPFile %userprofile%\desktop\tor-win32-0.4.4.6\Data\Tor\geoip
GeoIPv6File %userprofile%\desktop\tor-win32-0.4.4.6\Data\Tor\geoip6
UseBridges 1
HTTPTunnelPort 127.0.0.1:8080
SOCKSPort 127.0.0.1:9150
ControlPort 127.0.0.1:9051
HashedControlPassword 16:F043C6FEBA7365B9608B00A7B780BCFA453F3A637A8E9F0C9B0C2098CE
前两行是桥梁,你可以在这里获得桥梁:https://bridges.torproject.org/options
您应该运行此命令来创建 onion-auth 目录:
md %userprofile%\desktop\tor-win32-0.4.4.6\Data\Tor\onion-auth
将路径 %userprofile%\desktop 替换为实际路径
并在使用 tor 之前生成证书:
%userprofile%\desktop\tor-win32-0.4.4.6\tor\tor-gencert.exe --create-identity-key
它会要求你输入PEM密码,输入任何你想要输入的内容,确保你输入了两次相同的内容,不会有任何提示,输入完成后按Enter键;
现在再次运行 tor-gencert.exe,这次不带参数:
%userprofile%\desktop\tor-win32-0.4.4.6\tor\tor-gencert.exe
替换路径并输入您之前输入的 PEM 密码。
第五,你可以使用以下命令将 tor 安装为服务(替换路径):
%userprofile%\desktop\tor-win32-0.4.4.6\Tor\tor.exe tor --serviceinstall -options -f %userprofile%\desktop\tor-win32-0.4.4.6\Data\Tor\torrc
然后你可以通过以下命令启动 tor:
net start tor
要停止 tor:
net stop tor
使用这些代码配置所有浏览器以使用 tor 作为代理:
netsh winhttp set proxy 127.0.0.1:8080
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /t REG_SZ /d "127.0.0.1:8080" /f
然后,您的所有浏览器将自动使用 tor(如果 tor 没有运行和/或连接,则没有网络),来恢复它:
netsh winhttp reset proxy
reg delete "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer
六、对密码进行哈希处理:
%userprofile%\Desktop\tor-win32-0.4.4.6\Tor\tor.exe --hash-password PASSWORD
将路径 %userprofile%\Desktop\ 替换为您实际放置 tor 文件夹的位置,并将 PASSWORD 替换为您要使用的实际密码;复制哈希(如 16:C7EF87D04112053160FCC1517B8AF112C1BFD523BE1B1B415619CE4A9B)并用该哈希替换上述 torrc 示例中找到的哈希。
要使用哈希,请在 tor 运行时运行:
telnet localhost 9051
然后粘贴这些:
AUTHENTICATE PASSWORD
用实际密码替换密码,可能没有显示文本,只需按 Enter,如果显示 250 OK 则您已完成。
最后,tor 自带的 geoip 数据库已经过时了,你可以通过转换最新的 GeoLite2-Country.mmdb 文件来更新它。(这是可选的,但最好这样做。)
访问此网站:https://dev.maxmind.com/geoip/geoip2/geolite2/,点击“注册 GEOLITE2”,完成注册程序;注册完成后,登录您的账户,向下滚动找到“GeoIP2 / GeoLite2”,点击下载文件:
向下滚动找到“GeoLite2 国家”
然后点击“下载 GZIP”进行下载;下载后,使用任何可以解压 .gz 文件的软件进行解压。记住 GeoLite2-Country.mmdb 的路径或将其拖到桌面(%userprofile%\desktop)。
访问此网站:https://raw.githubusercontent.com/nmathewson/mmdb-convert/master/mmdb-convert.py,按 CTRL+A 然后按 CTRL+C 复制文件,使用 Notepad++ 创建一个新文件,然后按 CTRL+V 粘贴文件,按 CTRL+F 导航到第 444 行,然后输入“time”(不带引号)并按两次 Enter,替换:
time.strftime('%B %d %Y', time.gmtime(build_epoch)))
和:
time.strftime('%Y-%m-%d', time.gmtime(build_epoch)))
然后将其保存为 mmdb-convert.py,最好在桌面(%userprofile%\desktop),下载并安装 Python:如果你的计算机是 64 位,请单击此处:https://www.python.org/ftp/python/3.9.1/python-3.9.1-amd64.exe,否则https://www.python.org/ftp/python/3.9.1/python-3.9.1.exe,确保选中“将 Python 添加到环境变量”复选框。
最后,cd 到你放置文件的位置(在我的情况下是桌面),运行以下命令:
cd %userprofile%\desktop
python mmdb-convert.py GeoLite2-Country.mmdb
并将生成的 geoip 和 geoip6 文件复制到 *\tor-win32-0.4.4.6\Data\Tor (星号表示将 tor 放至的位置),然后替换在那里找到的文件。
更新如果上述指南不起作用,我深感抱歉,因为我犯了一个错误,所以无法启动 tor 服务,现在应该已经修复了