Reglage Iptables et SQUID

Reglage Iptables et SQUID - Réseaux - Systèmes & Réseaux Pro

Marsh Posté le 03-04-2013 à 17:42:05    

Bonjour,
 
je me casse les dents sur un petit souci avec squid.
 
Voici mon objectif, mettre en place un proxy transparent qui gère l’authentification. Jusque la, pas de souci.  
Si je renseigne l'adresse de mon proxy dans mon navigateur tout va bien, or, je souhaiterai ne pas avoir à faire cela, donc en gros rediriger le port 80 vers le port 3128.
Sur la machine qui héberge Squid, j'ai 2 cartes réseaux (eth0 qui est relié à internet et eth1 pour les machines clientes)
 
J'ai réglé le port de squid de cette façon : http_port 3128 transparent
 
J'ai ensuite activé net.ipv4.ip_forward = 1
 
J'ai également créé une règle Iptables : iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
 
Problème, ça ne fonctionne pas, je suis toujours obligé de renseigner le proxy sur les machines clientes.
 
Merci d'avance pour votre aide  :)  


---------------
http://www.le-gas.fr
Reply

Marsh Posté le 03-04-2013 à 17:42:05   

Reply

Marsh Posté le 04-04-2013 à 11:01:51    

c'est ta passerelle la machine squid ? Parce que sinon je vois pas comment les machines clientes vont deviner qu'elles doivent passer par là

Reply

Marsh Posté le 04-04-2013 à 11:03:49    

Aurelien62fr a écrit :

Bonjour,
 
je me casse les dents sur un petit souci avec squid.
 
Voici mon objectif, mettre en place un proxy transparent qui gère l’authentification. Jusque la, pas de souci.  
Si je renseigne l'adresse de mon proxy dans mon navigateur tout va bien, or, je souhaiterai ne pas avoir à faire cela, donc en gros rediriger le port 80 vers le port 3128.
Sur la machine qui héberge Squid, j'ai 2 cartes réseaux (eth0 qui est relié à internet et eth1 pour les machines clientes)
 
J'ai réglé le port de squid de cette façon : http_port 3128 transparent
 
J'ai ensuite activé net.ipv4.ip_forward = 1
 
J'ai également créé une règle Iptables : iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
 
Problème, ça ne fonctionne pas, je suis toujours obligé de renseigner le proxy sur les machines clientes.
 
Merci d'avance pour votre aide  :)  


 
Tu veux un proxy transparent avec authentification, il n'y a pas un contre sens ?


---------------
------------------------------------------
Reply

Marsh Posté le 04-04-2013 à 11:30:01    

Merci pour vos réponses, alors ma machine squid est sur la passerelle.
Et, je veux juste que lorsque le client se connecte a internet, il a une demande de mot de passe, mais pas nécessité de régler un proxy


---------------
http://www.le-gas.fr
Reply

Marsh Posté le 04-04-2013 à 19:08:23    

Aurelien62fr a écrit :

Bonjour,
 
je me casse les dents sur un petit souci avec squid.
 
Voici mon objectif, mettre en place un proxy transparent qui gère l’authentification. Jusque la, pas de souci.  
Si je renseigne l'adresse de mon proxy dans mon navigateur tout va bien, or, je souhaiterai ne pas avoir à faire cela, donc en gros rediriger le port 80 vers le port 3128.
Sur la machine qui héberge Squid, j'ai 2 cartes réseaux (eth0 qui est relié à internet et eth1 pour les machines clientes)
 
J'ai réglé le port de squid de cette façon : http_port 3128 transparent
 
J'ai ensuite activé net.ipv4.ip_forward = 1
 
J'ai également créé une règle Iptables : iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
 
Problème, ça ne fonctionne pas, je suis toujours obligé de renseigner le proxy sur les machines clientes.
 
Merci d'avance pour votre aide  :)  


Salut,
Et ça passe sans proxy ou en renseignant le proxy?
 

Code :
  1. iptables -t nat  -A PREROUTING -i eth1 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128  #on est d'accord
  2. iptables -A FORWARD -i eth1 -j ACCEPT #pour accepter le passage de paquet en eth1 et une autre interface
  3. iptables -A POSTROUTING -o eth0 -j MASQUERADE # pour le nat sur eth0
  4. iptables -A FORWARD -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT # pour que ce qui est initié par les clients passe dans le sens retour


Ton proxy il écoute bien sur eth1 qui est la passerelle de tes clients?
essaye  

Code :
  1. http_port ip_eth1:3128 transparent


Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed