Mud*_*sin 1 proxy redirect routing iptables squid
我想将从本地主机生成的任何http流量重定向到远程squid.
HTTP服务器位于一个数据中心,如果生成任何基于Web的(http)出站请求,则应将其重定向到远程squid服务器(位于远程数据中心).我已经验证了squid代理工作正常.
HTTP服务器有一个接口eth0.我写了以下iptables规则,但它不起作用.
Web服务器IP = 192.168.1.1
代理服务器IP /端口= publicip:3128
iptables -t nat -A PREROUTING -p tcp -s 192.168.1.1 --dport 80 -j DNAT --to-destination publicip:3128
iptables -t nat -A POSTROUTING -j MASQUERADE
Run Code Online (Sandbox Code Playgroud)
但上述规则不起作用.
据我了解您的问题,流量是在本地生成的.因此,数据包不会遍历PREROUTING链.您必须处理OUTPUT或POSTROUTING:
iptables -t nat -A OUTPUT -p tcp -o lo --dport 80 -j DNAT --to publicip:3128
Run Code Online (Sandbox Code Playgroud)
另外,请务必以透明代理模式设置Squid:
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on
Run Code Online (Sandbox Code Playgroud)
如果它仍然不起作用,请求提供有关什么不起作用的其他详细信息(tcpdump跟踪,squid日志).
| 归档时间: |
|
| 查看次数: |
9604 次 |
| 最近记录: |