[rsolu]-A FORWARD -p tcp --syn -j TCPMSS --clamp-mss-to-pmtu

Bonjour,
j’ai eu un crash de mon routeur lan récemment, et j’a dû le réinstaller:
squid+dansguardian+transparent, masquerading avec connection au net par pppoe.
Depuis, j’avais plein de problêmes avec les accés en https et les services windowsupdate sans savoir d’ou ça venait.
aprés moult recherche, j’ai pû déterminer que le problême venait de pppoe, et effectivement, en mettant tout en accept dans mon parefeu, une règle de masquerading, et une règle iptables -A FORWARD -p tcp --syn -j TCPMSS --clamp-mss-to-pmtu, immediatement, ts les pb ont été résolus.
Mais, dés que je rétablis mes règles complètes ou je droppe à peu prés tout (dont l’essentiel de l’icmp) tant en input qu’en forward, et ou je redirige tout le flux 80 vers le proxy, je retombe sur le pb.
Même en déplaçant la règle de “clamp” sur l’output , ça ne change rien.
Quelqu’un a une idée de ce qui se passe ?

:smiley: :smiley:
non pas d’idée, je passe juste pour te dire que j’en suis désolé, toujours dépassé par les rares problèmes que tu postes :wink: (plus pour longtemps j’espère … enfin, quelques années sans doute).

merci pour le up :laughing:

Hum, en fait je testerais plusieurs choses

  1. Un test brutal avec --set-mss 500 au lieu de --clamp-mss-to-pmtu pour voir si en étant brutal ça passe mieux.

  2. L’ordre des règles, à mon avis cette règle doit être en premier et peut être pas seulement en FORWARD, si ton Squid est ton routeur, c’est lui qui fait la requête, ça n’est pas un forward, donc met là également en OUTPUT et, tant qu’à faire en INPUT si c’est possible, et en tout premier.

  3. Qu’est ce que ça donne si tu ne droppes pas les ICMP, la fragmentation doit pouvoir se faire et ça ira mieux non?

ben je n’y suis pas, là, mais j’ai ça en filter:

:INPUT DROP [0:0] :FORWARD DROP [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -i lo -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type echo-reply -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type destination-unreachable -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type source-quench -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type echo-request -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type time-exceeded -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type parameter-problem -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type 30 -j ACCEPT -A INPUT -p icmp -m icmp --icmp-type fragmentation-needed -j ACCEPT (... de l'input ...) -A FORWARD -p tcp --syn -j TCPMSS --clamp-mss-to-pmtu -A FORWARD -p icmp -m icmp --icmp-type echo-reply -j ACCEPT -A FORWARD -p icmp -m icmp --icmp-type destination-unreachable -j ACCEPT -A FORWARD -p icmp -m icmp --icmp-type source-quench -j ACCEPT -A FORWARD -p icmp -m icmp --icmp-type echo-request -j ACCEPT -A FORWARD -p icmp -m icmp --icmp-type time-exceeded -j ACCEPT -A FORWARD -p icmp -m icmp --icmp-type parameter-problem -j ACCEPT -A FORWARD -p icmp -m icmp --icmp-type 30 -j ACCEPT -A FORWARD -p icmp -m icmp --icmp-type fragmentation-needed -j ACCEPT

Effectivement tu acceptes presque tout, essayes en mettant la règle en OUTPUT également. D’une manière ou d’une autre, je penses que c’est lorsque tu passes par le proxy que ça coince, ce qui est fait dès que tu mets tes règles. Ah mon avis, si tu retires la règles de redirection du port 80, en autorisant le forward dessus, le problème disparaitra.
Ton proxy est bien la même machine que le parefeu?

oui, et je fais une redirection du port 80 vers celui de mon DG.
certains clients attaquent directement le squid (pour s’authentifier) sans utiliser la transparence.
Mais j’essaierais déjà demain de voir plus précisément d’ou ça vient.

C’est Squid donc la machine qui fait les requêtes extérieures, ça n’est don c pas du forward mais du output, la règle n’est pas appliquée et tu retrouves le pbm.

[quote=“fran.b”]C’est Squid donc la machine qui fait les requêtes extérieures, ça n’est don c pas du forward mais du output, la règle n’est pas appliquée et tu retrouves le pbm.[/quote]mais j’ai testé le clamp en output (mais peut être pas en premier).

Ah… flûte… Essayes de voir quand même avec la règle en premier puis si ça ne marche pas de voir si le pbm disparait juste en enlevant la redirection vers le proxy, ça écartera cette explication.

Bon, pour info, le clamp fonctionnait trés bien, et c’etait un autre problême qui m’empêchait d’accèder à certains sites.
Pour résumer, aprés clamp, windowsupdate plantait quand je passais par DG, mais pas quand je passais par squid.
J’ai donc regardé les adresses auquel accèdait la page WU, et j’ai déterminé qu’il suffisait de rediriger de manière transparente une des adresses accèdées en http vers le squid au lieu du DG pour que ça passe: