Charles 的 External Proxies 页面将 Web 上游与其 SOCKS 设置区分开来。其文档将该 SOCKS 设置分配给非 HTTP(S) 流量,例如端口转发;填写它并不会为捕获到的 HTTPS 请求选择 SOCKS 上游。

对于现有的 Tor 服务,HTTP 隧道监听器可以提供 Charles 的 HTTPS 上游所期望的接口。仅限回环的 torrc 条目可以是:

HTTPTunnelPort 127.0.0.1:8118

选择一个未使用的本地端口,并通过该 Tor 部署的正常配置生命周期应用更改。在 Charles 中启用 External Proxies,并将 Secure Web Proxy (HTTPS) 端点配置为 127.0.0.1 和该端口。

HTTPS 设置会选择目标使用 HTTPS 的请求。Tor 的监听器接受 HTTP CONNECT 来承载它们的 TCP 流;它不是 TLS 加密的 HTTPS 代理监听器。

这种安排专门用于 HTTPS 路由。HTTPTunnelPort 并不实现普通正向代理的绝对 URL GET 处理,因此不要以为同一条目也处理纯 HTTP 浏览。

请将 Charles 面向客户端的监听器与此上游端点分开。浏览器连接到 Charles;Charles 连接到 Tor 的隧道监听器。

相关文章