如何在Tor上运行Charles Proxy?

时间:2019-02-07 01:11:24

标签: proxy tor charles-proxy

以下情况:

  • 如果我将浏览器的http / https代理设置为为Charles配置的端口(127.0.0.1:8888),则使用Charles Proxy拦截Web流量可以正常工作
  • 如果我将浏览器的袜子代理设置为Tor为之配置的代理(127.0.0.1:9150),则通过Tor匿名浏览也可以正常工作

现在,我希望以这种方式链接两个代理,这样我就可以在通过Tor网络匿名访问的同时用Charles拦截我的浏览器的网络流量。因此,我将浏览器的http / https代理设置为Charles,并在Charles中将“外部代理”设置为Tor。

但是这不起作用。我有一些误解吗?感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

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的网络浏览器中打开https://google.com/(最好在隐身窗口中,确保您的Google帐户设置不会干扰地理位置对Google语言的检测)。您应该会以某种随机语言看到本地化的Google页面。

说明

Tor提供开箱即用的SOCKS代理。默认情况下,Tor使用端口9050。您提到的端口是9150。这是Tor浏览器捆绑包使用的默认端口。因此,我假设您使用Tor浏览器捆绑包。但是在Charles的SOCKS Proxy中指定External Proxy Settings设置将不允许您通过https://链接打开网站。如果您查看Charles documentation,可能会注意到通过SOCKS代理仅发送非HTTPS通信。引用(强调我的意思):

  

如果您有SOCKS代理,Charles会将其用于所有非HTTP(S)通信,例如端口转发。

因此,要通过Tor链接Charles,必须使用非SOKS代理。

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