lixia625
V2EX  ›  问与答

squid 透明代理设置问题

  •  
  •   lixia625 · Jan 19, 2016 · 3342 views
    This topic created in 3795 days ago, the information mentioned may be changed or developed.

    按照网上大多数教程
    设置:

    http_port 3128 transparent
    

    之后利用 iptables 将 80 端口转发至 3128 ,就好了。

    那么问题来了,谁在监听 80 端口,试了一下根本连不上 80 啊怎么转发。。。
    请问我错在哪?

    6 replies    2016-01-20 14:23:26 +08:00
    ryd994
        1
    ryd994  
       Jan 19, 2016 via Android
    此透明非彼透明
    这样设置的效果,是所有到 80 的连接被劫持到 squid 。因为不需要用户设置,只要路由器上部署,所以透明。
    你想要的透明代理, squid 默认设置,把 x-forwarded-for 关了就是了。
    function007
        2
    function007  
       Jan 19, 2016
    之后利用 iptables 将 80 端口转发至 3128
    这句你理解错了,不是把路由器的 80 转发到了 3128 ,而是把所有发往目标服务器 80 口的请求,转到了 3128
    lixia625
        3
    lixia625  
    OP
       Jan 20, 2016
    @function007
    对啊 我是这么理解的,但是我感觉服务器 80 端口没开啊,尝试用浏览器访问页确实无法建立连接,

    @ryd994
    我的想法是用路由器转发就好了,是这样的吗?转发至哪个端口呢?
    function007
        4
    function007  
       Jan 20, 2016
    @lixia625 你还是没理解对。。
    比如你在浏览器里访问 www.a.com ,这个请求是发往 www.a.com 服务器的 80 口的,就会被转发;你访问 www.a.com:8080 ,这个请求就不会被转发
    和你透明代理的 80 口没有关系。。
    ryd994
        6
    ryd994  
       Jan 20, 2016 via Android
    你先看看两种“透明”
    你需要的“透明代理”,也就是第一种, squid 默认设置就是
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   6016 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 53ms · UTC 06:33 · PVG 14:33 · LAX 23:33 · JFK 02:33
    ♥ Do have faith in what you're doing.