3 votes

Comment router tout le trafic HTTP de eth1 vers le proxy Squid ? Les règles Iptable ?

Je viens de mettre en place un serveur proxy Squid. Le serveur a deux interfaces. eth0 se connecte au routeur et eth1 est connecté à un commutateur où toutes les autres machines se connectent. Le serveur a également un serveur DHCP. J'ai installé Squid3 sur la machine et lorsque je configure mon navigateur pour qu'il utilise ce proxy (dans les paramètres réseau, si je définis l'IP et le port), tout fonctionne. Mais j'ai besoin d'un proxy transparent où je n'ai pas besoin de configurer le navigateur et où toutes les demandes passent par le proxy.

Cela peut être fait en définissant simplement les règles de la table IP, n'est-ce pas ? Certains articles parlent de modifier sysctl.conf. J'ai essayé les règles Iptable de nombreux tutoriels et aucune n'a fonctionné. Veuillez me donner une règle fonctionnelle à ajouter. Merci.

PS : Le serveur est Ubuntu 12.10

PS2 : Si vous le pouvez, dites-moi comment ajouter ces règles à l'ufw.

0 votes

S'il vous arrive encore de venir sur stackoverflow, veuillez marquer la réponse comme solution. Merci.

1voto

Vous devez modifier les éléments suivants pour qu'ils correspondent à votre configuration :

eth1 : interface LAN
eth0 : interface WAN
Squid PORT : 8028

Voici les paramètres pour Squid en mode transparent.

# NAT
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth1 -j ACCEPT

# Redirect
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 8028 -j REDIRECT --to-port 80 
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j DNAT --to IPaddress:8028
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 8028

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X