Routing des Internets auf NAT-Server über Squid-Proxy

Routing des Internets auf NAT-Server über Squid-Proxy

Ich habe einen Squid-Proxy und eine NAT-Instanz konfiguriert und beide funktionieren einwandfrei.

Jetzt möchte ich einen Proxyserver auf der NAT-Instanz konfigurieren, sodass das Internet auf NAT über den Squid-Proxyserver geleitet wird.

Dieses Setup ist auf CentOS 6.3 konfiguriert.

Antwort1

Um den Datenverkehr transparent abzufangen,Richtlinienbasiertes Routingüber NAT, um den Webverkehr zum Squid-Proxy umzuleiten und ihn dann abzufangen.

  • Richten Sie das Policy-Routing auf Ihrer GW- oder NAT-Box ein und passen Sie die IPs und Schnittstellen entsprechend an. Ihr Diagramm impliziert, dass die erste Regel, die Ihrer Squid-Box den Zugriff auf das Internet ermöglicht, möglicherweise nicht erforderlich ist.

    iptables -t mangle -A PREROUTING -j ACCEPT -p tcp --dport 80 -s squidip
    iptables -t mangle -A PREROUTING -j MARK --set-mark 8 -p tcp --dport 80
    ip rule add fwmark 8 table 2
    ip route add default via squidip dev eth0 table 2
    
  • Dann fangen Sie den Squid-Proxy ab. Diese Regel kann spezifischer sein, wenn die Möglichkeit besteht, dass andere Daten auf Port 80 durch diese Box laufen müssen.

    iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3129
    
  • Auf der Squid-Box,squid.conf

    http_port 3129 intercept
    

Wenn Sie IPV6 unterstützen müssen,Tintenfischhabe einentproxy-Konfigurationsbeispielfür CentOS.

verwandte Informationen