在配置 Squid 对来自客户端的 HTTPS SSL 请求执行 SSL Bump 之后,我想将其发送到另一个代理,该代理将执行其自己的 MITM 并连接到“目标服务器”并将信息返回给客户端........Squid 需要什么才能将请求(执行 ssl bump 之后)传递到第二个代理?
客户端(box1)->iptables(box1)->squiq + ssl_bump(box2)->另一个代理(box3)->目标服务器
box1 已更新 iptable 规则
iptables -t nat -A OUTPUT -p tcp --dport 443 -j DNAT --to 10.1.1.1.1:8444
box2 已将 SSL_BUMP 配置为在 8444 上监听和解密。但是我不确定如何配置 squid,如何从 ssl_bump 传递解密的 ssl 重定向...我已尝试 cache_peer(parent),但 squid 无法成功连接到“cache_peer(parent)”。
答案1
如果您使用 SslBump,我非常确定您无法在 squid.conf 中指定下游代理服务器(或者当我将其与 Squid 3.4 一起使用时无法指定)。我猜您可以这样做的方法是设置另一个透明 https/SslBump iptables/squid,如您的示例中所示:
客户端(box1)->iptables(box2)->squid+ssl_bump(box3)->ANOTHER_IPTABLES(box4)->anotherproxy+ssl_bump(box5)->目标服务器
box4 将所有 443TCP 流量重定向到 box5 端口 8884(您的 https squid 拦截端口)
但你真的需要这么做吗?我觉得这太复杂了。
顺便说一句,如果您使用 iptables(例如 box2)作为路由器,您也可以在其上运行 squid+ssl_bump 以节省盒子。