ISA 2004 et problèmes sur certains accès FTP - Windows & Software
MarshPosté le 12-09-2006 à 12:09:42
Salut,
bon alors voilà la description de mon problème général, et ensuite je mets les détails: La connection à certains sites FTP (par un client quelconque type FileZilla (XP) en mode passif) me pose des soucis. La connection initiale se passe bien, mais ensuite l'ouverture du second port dynamique semble poser problème car ni le listing de répertoire, ni l'upload ou le download ne fonctionnent.
Maintenant les précisions. Réseau local en 192.x.x.x Le serveur ISA 2004 est la passerelle pour tous les clients interne, qui filtre et forwarde le traffic vers un firewall (qui n'est pas en cause, j'ai fait un test en le mettant en pass-all). J'ai l'option filtre FTP d'installée et activée pour ISA 2004 (permet l'IP routing au niveau kernel semble-t-il pour plus de perf). J'ai une règle spécifique qui s'occupe du traffic FTP. Elle autorise tout traffic du protocole FTP en TCP sur le port 21 outbound, dans le sens interne vers extérieur.
Voici un extrait de trace, d'abord pour une connection qui se passe bien, et une autre qui échoue. Je n'ai rien modifié, hormis les adresses IP, par soucis de confidentialité. Mon client est en 192.168.0.20 (je ne l'ai pas fait apparaître), et la gateway IS 2004 est 192.168.0.1 OK:
Vous remarquerez les différences qui sautent aux yeux. Mais pourquoi a-t-on des tentatives de connection vers le localhost??? c'est comme si ISA, au lieu de faire du nat et forwarder la 2eme connection vers le serveur distant, se la gardait pour lui-même... et on n'a pas de Client Agent, et ça ne correspond à aucune règle énoncée... A noter que même si je n'ai pas afficé la colonne "Original Client", cela reste dans tous les cas 192.168.0.20 (mon client local).
Autre chose qui m'étonne: lorsque je veux configurer le protocole FTP en détail, je peux ajouter des ports "primaires", mais la partie dédiée aux ports secondaires reste grisée. Or d'après ce que j'ai compris, c'est bien la connection secondaire qui échoue (le canal de données) sur le port dynamique, comme la connection primaire (canal de commandes sur le port 21) fonctionne bien.
Chose bizarre, j'ai mis une règle pass-all, tous protocoles, tous ports, et le même problème se produit, avec les même sites. Serait-ce dû à une incompatibilité entre ISA 2004 et les serveurs FTP distants? C'est envisageable, mais j'ai vérifié, ce ne sont pas tous les même. La plupart que j'ai testés et avec lesquel j'ai le problème étaient Unix (ProFTPD entre autres), mais certains ne donnent aucune signature, donc difficile à dire de quel logiciel serveur il s'agit. Par contre, parmis les serveurs avec lesquels ça se passe bien, on retrouve de l'unix (PureFTPD) et du windows (IIS5 et IIS6).
Bien entendu, j'ai creusé dans le support microsoft sans trouver de réponse claire...
Marsh Posté le 12-09-2006 à 12:09:42
Salut,
bon alors voilà la description de mon problème général, et ensuite je mets les détails:
La connection à certains sites FTP (par un client quelconque type FileZilla (XP) en mode passif) me pose des soucis. La connection initiale se passe bien, mais ensuite l'ouverture du second port dynamique semble poser problème car ni le listing de répertoire, ni l'upload ou le download ne fonctionnent.
Maintenant les précisions.
Réseau local en 192.x.x.x
Le serveur ISA 2004 est la passerelle pour tous les clients interne, qui filtre et forwarde le traffic vers un firewall (qui n'est pas en cause, j'ai fait un test en le mettant en pass-all).
J'ai l'option filtre FTP d'installée et activée pour ISA 2004 (permet l'IP routing au niveau kernel semble-t-il pour plus de perf).
J'ai une règle spécifique qui s'occupe du traffic FTP. Elle autorise tout traffic du protocole FTP en TCP sur le port 21 outbound, dans le sens interne vers extérieur.
Voici un extrait de trace, d'abord pour une connection qui se passe bien, et une autre qui échoue. Je n'ai rien modifié, hormis les adresses IP, par soucis de confidentialité. Mon client est en 192.168.0.20 (je ne l'ai pas fait apparaître), et la gateway IS 2004 est 192.168.0.1
OK:
Client Agent Destination IP Dest. Port Protocol Action Rule Source Network Dest. Network
FileZilla.exe:3:5.1 213.56.yy.yyy 21 FTP Initiated Connection FTP Access Internal External
FileZilla.exe:3:5.1 213.56.yy.yyy 62277 FTP Initiated Connection FTP Access Internal External
FileZilla.exe:3:5.1 213.56.yy.yyy 52537 FTP Initiated Connection FTP Access Internal External
FileZilla.exe:3:5.1 213.56.yy.yyy 21 FTP Closed Connection FTP Access Internal External
KO:
Client Agent Destination IP Dest. Port Protocol Action Rule Source Network Dest. Net.
FileZilla.exe:3:5.1 212.94.xxx.xx 21 FTP Initiated Connection FTP Access Internal External
192.168.0.1 1745 Unident.IP Traffic Initiated Connection Internal Local Host
FileZilla.exe:3:5.1 212.94.xxx.xx 42139 FTP Initiated Connection FTP Access Internal External
192.168.0.1 8080 Unident.IP Traffic Closed Connection Internal Local Host
FileZilla.exe:3:5.1 212.94.xxx.xx 21 FTP Closed Connection FTP Access Internal External
Vous remarquerez les différences qui sautent aux yeux. Mais pourquoi a-t-on des tentatives de connection vers le localhost??? c'est comme si ISA, au lieu de faire du nat et forwarder la 2eme connection vers le serveur distant, se la gardait pour lui-même... et on n'a pas de Client Agent, et ça ne correspond à aucune règle énoncée... A noter que même si je n'ai pas afficé la colonne "Original Client", cela reste dans tous les cas 192.168.0.20 (mon client local).
Autre chose qui m'étonne: lorsque je veux configurer le protocole FTP en détail, je peux ajouter des ports "primaires", mais la partie dédiée aux ports secondaires reste grisée. Or d'après ce que j'ai compris, c'est bien la connection secondaire qui échoue (le canal de données) sur le port dynamique, comme la connection primaire (canal de commandes sur le port 21) fonctionne bien.
Chose bizarre, j'ai mis une règle pass-all, tous protocoles, tous ports, et le même problème se produit, avec les même sites. Serait-ce dû à une incompatibilité entre ISA 2004 et les serveurs FTP distants? C'est envisageable, mais j'ai vérifié, ce ne sont pas tous les même. La plupart que j'ai testés et avec lesquel j'ai le problème étaient Unix (ProFTPD entre autres), mais certains ne donnent aucune signature, donc difficile à dire de quel logiciel serveur il s'agit.
Par contre, parmis les serveurs avec lesquels ça se passe bien, on retrouve de l'unix (PureFTPD) et du windows (IIS5 et IIS6).
Bien entendu, j'ai creusé dans le support microsoft sans trouver de réponse claire...
Bref, quiconque aurait une idée est le bienvenu.