如何在Tor上运行Charles代理?

3
以下情况:
- 如果我将浏览器的http/https代理设置为Charles配置的端口(127.0.0.1:8888),使用Charles Proxy拦截网络流量就可以正常工作。 - 如果我将浏览器的socks代理设置为Tor配置的代理(127.0.0.1:9150),匿名地在Tor网络上冲浪也可以正常工作。
现在,我想以这种方式链接两个代理,即在匿名地通过Tor网络时使用Charles拦截浏览器的网络流量。因此,我将浏览器的http/https代理设置为Charles,并在Charles中设置“外部代理”为Tor。
但不知何故,这并不起作用。我有什么误解吗?谢谢帮助!
1个回答

1

TL;DR:

  1. 打开命令行 (C:\Windows\System32\cmd.exe) 并在控制台窗口中键入以下命令:"C:\TorBrowserBundle\Browser\TorBrowser\Tor\tor.exe" --HTTPTunnelPort 8118。根据 Tor 浏览器套件的位置调整路径。
  2. 在 Charles 中转到菜单 Proxy→External Proxy Settings
  3. 在顶部选中 Use external proxy servers 复选框
  4. 在左侧清除 Web Proxy (HTTP)SOCKS Proxy 复选框
  5. 在左侧选择 Secure Web Proxy (HTTPS)
  6. 在右侧的 Secure Web Proxy Server 下输入 127.0.0.18118
  7. 在底部选中 Always bypass external proxies for localhost 复选框
  8. 点击 OK 保存更改
  9. 尝试在配置为使用 Charles 的 Web 浏览器中打开 https://google.com/ (最好在隐身窗口中进行,以确保您的 Google 帐户设置不会干扰通过地理位置检测来实现 Google 语言检测的本地化 Google 页面)。您应该看到一些随机语言的本地化 Google 页面。

解释

Tor默认提供SOCKS代理,端口号为9050。您提到了9150端口,这是Tor浏览器套件使用的默认端口。因此我假设您正在使用Tor浏览器套件。但是,在Charles的“外部代理设置”中指定“SOCKS代理”设置不会允许您通过“https://”链接打开网站。如果您查看Charles文档,您可能会注意到只有非HTTPS流量通过SOCKS代理发送。引用(重点在于我):

如果您有SOCKS代理,Charles将使用它来处理所有非HTTP(S)流量,例如端口转发。

因此,为了通过Tor链式使用Charles,您必须使用非SOCKS代理。

顺便说一句,当我将Tor指定为SOCKS代理并禁用“安全Web代理(HTTPS)”时,我无法通过Charles打开http://链接。不知道为什么。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接