Tom's Guide > Forum > Accès Internet & Réseaux > Problème avec proxy squid
Problème avec proxy squid - Accès Internet & Réseaux
TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Bonjour,

Je vous écris car j'ai vraiment besoin d'aide et je vous remercie d'ailleurs d'avance pour toute aide que vous pourrez m'apporter.

Voici mon problème : j'ai installé et configuré un proxy avec squid sur un ubuntu en version server, mais quand j'essaie de tester à travers un navigateur web d'un autre PC en spécifiant l'adresse de mon proxy et que je relance le navigateur web, je tombe sur une page me demandant de me logger sur Webmin, plus exactement :
"Login to Webmin
You must enter a username and password to login to the Webmin server on
www.google.fr."
Avec google.fr le site testé ici.

Déjà, ça ne devrait pas afficher une fenêtre d'authentification car ça doit juste bloquer les sites dans mes blacklists et en plus quand j'essaie de me connecter à cette interface avec les identifiants de webmin (qui sont les seuls identifiants que j'ai créé sur tout le proxy), ça ne fonctionne pas et ça me remet la même fenêtre de connection...

Quelqu'un pourrait m'aider ? Je suis prêt à détailler toute ma config ou autre si besoin, mais j'ai vraiment besoin de quelqu'un pour me guider.

En vous remerciant d'avance !

------------------------------ Rip
Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

si c'est un proxy transparent (sans rien configurer dans le navigateur du client), il faut faire une règle dans le parefeu

Code :
  1. iptables -t nat -A PREROUTING -s TON_LAN/TON_MASQUE -p tcp -m tcp --dport 80 -j REDIRECT --to-port 3128


ça dit que tout trafic arrivant sur ton proxy, à destination du port 80 doit passer par le port 3128 (port par défaut de squid) avant de ressortir
ceci n'est valable que si ton réseau est de ce type :
client----proxy/routeur---site_cible

 

sinon, il ne faut pas oublier de configurer dans les propriétés internet de ton navigateur les paramètres du proxy (ip et port)

 

dans tous les cas, il faut que lorsque tu tape une adresse dans ton navigateur, la requête soit envoyée à ton proxy


Message édité par maith le 18-09-2007 à 22:40:44
------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

oui mais c'est déjà le cas justement, je notifie bien l'adresse ip et le port dans mon navigateur web, la preuve c'est qu'il affiche cette interface d'identification de webmin qui est l'interface graphique de squid

------------------------------ Rip
Répondre à ripmaster@IDN

par défaut webmin écoute sur le port 10000
si tu as changé ce port, remets le par défaut
et retest

que le proxy ne marche c'est une chose
que tu tombe sur l'interface de webmin ce n'est pas normal

envoi aussi le résultat d'un netstat -luntp

------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

Désolé pour le temps de réponse...

En tout cas le port est bien 10000.

Sinon pour netstat voici le résultat :

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:548 0.0.0.0:* LISTEN 3744/afpd
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 3765/smbd
tcp 0 0 0.0.0.0:10000 0.0.0.0:* LISTEN 3862/perl
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 3765/smbd
udp 0 0 192.168.0.52:137 0.0.0.0:* 3763/nmbd
udp 0 0 0.0.0.0:137 0.0.0.0:* 3763/nmbd
udp 0 0 192.168.0.52:138 0.0.0.0:* 3763/nmbd
udp 0 0 0.0.0.0:138 0.0.0.0:* 3763/nmbd
udp 0 0 0.0.0.0:10000 0.0.0.0:* 3862/perl
udp 0 0 0.0.0.0:68 0.0.0.0:* 3684/dhclient3

------------------------------ Rip
Répondre à ripmaster@IDN

je ne vois pas de squid lancé ici

------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

et pour ce qui concerne les ports 10000 dans la liste ce n'est pas squid ?
Sinon que faut-il faire? Au boot de Linux il se lance dans la liste pourtant.

------------------------------ Rip
Répondre à ripmaster@IDN

par défaut :
webmin écoute sur le port 10000
squid écoute sur le port 3128

et il n'y a aucun rapport entre webmin et squid

si tu es sur qu'il se lance, vérifie qu'il ne crash pas, si c'est le cas, regarde dans les log pour connaitre l'erreur

------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

J'ai un peu cherché, j'ai trouvé que mon port de squid était le 8080 mais il n'est toujours pas dans la liste que j'ai passé ci-dessus.
Par contre j'ai retesté avec ce port et ça ne balance plus sur l'interface webmin mais ça met "Server introuvable - Impossible d'afficher la page".

Je suis allé dans /var/log/squid et j'ai trouvé un fichier cache.log accessible en cliquant ici


Message édité par ripmaster@IDN le 08-10-2007 à 13:25:18
------------------------------ Rip
Répondre à ripmaster@IDN

FATAL: The redirector helpers are crashing too rapidly, need help!

erreur dans ta config, squid plante

------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

Bonjour,

Je reviens vers vous car j'ai trouvé l'erreur qui venait du chemin vers les blacklists pour squidGuard qui n'était pas exactement le bon.

Maintenant squid fonctionne, les ports sont bien bloqués et débloqués comme je veux.

Cependant, j'ai un autre problème maintenant, j'ai accès à tous les sites même ceux dans les blacklists de squidGuard...
Je n'ai cependant pas d'erreur dans les fichiers de log.

Quelqu'un peut m'aider?

------------------------------ Rip
Répondre à ripmaster@IDN

vérifie tes ACL
l'ordre est important

------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

Non en fait ca venait du fait que je n'avais pas mis de page de redirection dans squidGuard.conf...

Maintenant ça marche, il ne me reste qu'à mettre le proxy en place sur le réseau pour que tous les PC passent automatiquement par le proxy. Mais je ne sais pas trop comment m'y prendre.

Quelqu'un saurait ?

------------------------------ Rip
Répondre à ripmaster@IDN

si tu veux une authentification, il faut configurer les postes 1 par 1 ou forcer ton routeur (s'il le peux, dans les routeurs grand public, c'est rare) à rediriger les requêtes sur le port 80 vers ton proxy
si tu ne veux pas d'authentification, défini simplement comme adresse de passerelle par défaut l'adresse de ton proxy (et autorise le routage dessus sur tout ce qui n'est pas http)

vu ce que tu es entrain de faire, je ne peux que te recommander de jeter un coup d'oeil sur ipcop+urlfilter
c'est une distrib parfaite pour faire routeur+firewall+proxy+vpn

------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

Le truc c'est que c'est dans une entreprise et le routeur est un zyxel (je pourrais dire plus précisément le modèle en début de semaine prochaine si il faut).
Ce que je voudrais c'est effectivement que le proxy serve de passerelle entre le réseau et Internet pour que les ports et les sites blacklistés soient bloqués automatiquement. Pour les sites, ça sera plus simple que de passer sur tous les postes car il y en a 60 environ et ont des navigateurs différents suivant ce que préfèrent les utilisateurs.

Pour ce que tu m'as passé comme distrib c'est bien aussi mais étant donné que j'ai installé squid et squidGuard sur une machine pour en faire un proxy, ça devrait ne me servir à rien d'installer ipcop et urlfilter vu qu'ils font la même chose que ce que je viens d'installer.

Sinon toute aide ou documentation sur le fait de mettre en place une passerelle sur le réseau comme tu disais me serait utile :)


Message édité par ripmaster@IDN le 13-10-2007 à 15:05:48
------------------------------ Rip
Répondre à ripmaster@IDN

vite fait ça donne ça :
une machine avec 2 cartes réseau ou plus (ou peut le faire avec 1 mais c'est moins bien

lan--->--proxy--->--internet

ou encore

[Réseau administratif]
(A)
|
|
(B)
[proxy](C)-----(D)[réseau libre service]
(E)
|
|
(F)
[internet]

Je vais prendre ce 2nd exemple

tu définie dans ton serveur dhcp (ou sur les postes si tu n'as pas de dhcp) que la passerelle par défaut est B ou C (selon la population)
en B et en C, tu mets la règle suivante dans le parefeu du proxy
-tout ce qui arrive ici à destination du net sur le port 80 doit être renvoyé à squid via son port 3128
-tout le reste (qui est autorisé) est directement transmis à F

et dans le parefeu de F
-seul ce qui sort à destination du port 80 venant de E est autorisé

si tu ne peux pas configurer ton zyxel, ce n'est pas grave si ton réseau resemble à ceux de mon schéma (du point de vue câblage ou vlan)

------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

Ok moi ça serait plutôt le 1er schéma lan--->--proxy--->--internet même si c'est un peu la même chose qu'avec le 2eme.

Pour configurer le serveur DHCP pour que la passerelle par défaut soit le proxy ok, par contre pour la règle dans le parefeu du proxy, il n'y a pas que le port 80 qu'il doit gérer, c'est tous les ports car j'ai mis dans squid quels ports autoriser et pour le port 80 blacklister certains sites.
Si tu pouvais m'expliquer aussi ce que tu veux dire par configurer le parefeu de F qui est internet. Et aussi là je pense que ça devrait être tous les ports à destination du proxy qui doivent être pris en compte.

------------------------------ Rip
Répondre à ripmaster@IDN

squid est un proxy HTTP (et éventuellement https moyennant un peu de tuning), pas la peine de lui faire filtrer le reste (sauf les sites HTTP(s) utilisant autre chose que le port 80(443), ce qui est rare), il ne sait pas faire

 

donc en reprenant ce schéma :
lan--->--(A)proxy(B)--->--(C)routeur(D)--->--internet

 

A
on redirige tout le trafic HTTP arrivant du réseau interne vers squid :

Code :
  1. iptables -t nat -A PREROUTING -s TON_LAN/LE_MASQUE -p tcp -m tcp --dport 80 -j REDIRECT --to-port 3128


et comme ton squid est en position de routeur ici, il faut activer le routage :

Code :
  1. echo 1 > /proc/sys/net/ipv4/ip_forward


et l'autoriser (pour ce qui n'est pas HTTP :

Code :
  1. iptables -A FORWARD -s TON_LAN/LE_MASQUE -p tcp -m tcp --dport ! 80 -j ACCEPT
 

ne pas oublier non plus les règles de base (RELATED, ESTABLISHED, le loopback... enfin le classique, surtout pour le retour)

 

B
on accepte le retour des connexions :

Code :
  1. iptables -A FORWARD -i B -o A -m state --state ESTABLISHED,RELATED -j ACCEPT
 

C
on dégage tout ce qui est web ne venant pas du proxy (attention si tu as des serveurs à ne pas filtrer) :

Code :
  1. iptables -A FORWARD -i C -s IP_DU_PROXY_EN_B -j ACCEPT
 

D
seuls les retour sont acceptés (sauf si hébergement interne) :

Code :
  1. iptables -A FORWARD -i D -m state --state ESTABLISHED,RELATED -j ACCEPT
 

n'oubli pas non plus d'autoriser les services tels que DNS, SMTP... enfin tout ce que tu autorise sur ton réseau

 

pour le reste, tu peux mettre DROP partout (iptables -P INPUT/OUTPUT/FORWARD DROP)

 


ATTENTION, j'ai tapé ça sans tester, c'est une approximation des règles à avoir pour obtenir le résultat suivant :

 

depuis le LAN, tout ce qui sort vers du HTTP port 80 passe par squid, le reste n'est pas filtré

 

ça devrait marcher si tu fais attention à ne pas oublier les règles de retour

 

je te conseille de tester avant (j'ai peutêtre zappé des trucs)

Message cité 1 fois
Message édité par maith le 15-10-2007 à 21:28:40
------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith

En fait tu veux me dire que en mettant juste le port 80 dans ta configuration du proxy, il va prendre en compte toute la configuration de squid en comprenant les ports que j'ai bloqués et acceptés, en plus des sites blacklistés ?

Si c'est bien ça, j'ai déjà fait le tour de tout ce qui utilisait des ports sur le réseau pour répondre à ta remarque :

maith a écrit :

n'oubli pas non plus d'autoriser les services tels que DNS, SMTP... enfin tout ce que tu autorise sur ton réseau



Sinon si c'est pas ça je comprends plus :pt1cable:

Enfin, concernant tes configurations :

Code :
  1. iptables -A FORWARD -i B -o A -m state --state ESTABLISHED,RELATED -j ACCEPT



Code :
  1. iptables -A FORWARD -i C -s IP_DU_PROXY_EN_B -j ACCEPT



Code :
  1. iptables -A FORWARD -i D -m state --state ESTABLISHED,RELATED -j ACCEPT



Les lettres A, B, C et D qui sont chacune dans un des codes sont à changer par une adresse IP?

Message cité 1 fois
Message édité par ripmaster@IDN le 16-10-2007 à 09:25:56
------------------------------ Rip
Répondre à ripmaster@IDN

ripmaster@IDN a écrit :

En fait tu veux me dire que en mettant juste le port 80 dans ta configuration du proxy, il va prendre en compte toute la configuration de squid en comprenant les ports que j'ai bloqués et acceptés, en plus des sites blacklistés ?


ce que je veux dire, c'est qu'il faut rediriger ce qui arrive sur le 80 et ne pas rediriger, mais autoriser simplement ce qui arrive sur les autres ports autorisés (donc ne fais pas passer le 53udp par squid, mais laisse le juste traverser le serveur qui fait proxy, idem pour le reste des ports autorisés sur ton réseau)


ripmaster@IDN a écrit :

Les lettres A, B, C et D qui sont chacune dans un des codes sont à changer par une adresse IP?


non, par le nom de la carte réseau qui porte l'ip (eth0, eth1...)

------------------------------ Pub/piratage/spam/villes virtuelles/...-->BAN, je ne cherche pas à comprendre
Editer vos titres (pas de titre en majuscule, [RESOLU] quand c'est le cas)
Tutos IDN
Répondre à maith
Tom's Guide > Forum > Accès Internet & Réseaux > Problème avec proxy squid
Aller à :

Il y a 1261 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens