IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration système Discussion :

[proFTPd] Ecouter sur un autre port que 21 pour les transferts FTP


Sujet :

Administration système

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2009
    Messages : 31
    Points : 23
    Points
    23
    Par défaut [proFTPd] Ecouter sur un autre port que 21 pour les transferts FTP
    Bonjour,

    Je cherche à configurer mon serveur proFTPd sur un autre port que le 21 pour en sécuriser l'accès.

    J'ai effectué la modification dans /etc/proftpd/proftpd.conf :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sudo /etc/init.d/proftpd reload
    sudo /etc/init.d/xinetd restart
    Mais quand j'essaye de me connecter avec mon client FTP sur le port 10000 j'obtiens le message "Statut : Connexion sur XXX.XX.XX.XX:10000... Erreur : Connexion au serveur impossible !"

    J'ai donc essayé en désactivant complètement le firewall, mais le résultat reste identique, sauf si je tente de me connecter sur le port 21...

    Il semble que la directive "Port 10000" n'est pas prise en compte, malgré le redémarrage de proFTPd, il n'écoute apparemment pas sur le port 10000, mais toujours sur le 21, ce que je ne veux pas.

    J'ai également fait l'essai en décommentant dans /etc/proftpd/proftpd.conf :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    PassivePorts                    54000 54100
    MasqueradeAddress               ip_du_serveur
    Mais sans plus de succès.

    Quelqu'un a une idée de ce qui empêche proFTPd d'écouter sur le port que je lui indique ?

  2. #2
    Responsable technique

    Avatar de Anomaly
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    juin 2003
    Messages
    10 237
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Formateur en informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juin 2003
    Messages : 10 237
    Points : 93 189
    Points
    93 189
    Billets dans le blog
    1
    Par défaut
    Je ne connais pas proftpd (seulement vsftpd) ni xinetd (seulement inetd) mais si ton logiciel FTP est lancé par xinetd, alors c'est xinetd qui écoute le port, pas proftpd. Si proftpd possède un réglage de port, c'est pour un fonctionnement autonome (sans xinetd). Donc si proftpd est lancé par xinetd, c'est xinetd qu'il faut configurer.
    Responsable technique forum & site

    Si ce message (ou un autre) vous a aidé et/ou vous semble pertinent, votez pour lui avec

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2009
    Messages : 31
    Points : 23
    Points
    23
    Par défaut
    Bien vu !
    Et comme xinetd se base sur le fichier /etc/services si rien n'est spécifié pour déterminer le port à utiliser, il m'a suffit de modifier les lignes ftp pour que l'écoute se fasse sur le bon port.

    Cependant, je n'arrive toujours pas à me connecter en FTP La connexion se fait bien, puis il s'arrête à la commande LIST du répertoire et renvoie :
    Commande : LIST
    Erreur : Délai d'attente expiré
    Erreur : Échec à la lecture du contenu du répertoire

    J'ai rouvert le firewall, et là je rentre...
    Il faut vraisemblablement que j'ouvre les ports passifs 54000 à 54100 pour que le client FTP sache sur quel port se connecter. Mais je ne vais quand même pas ouvrir 100 ports en permanence ??

    Comment faut-il faire ?

  4. #4
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    mai 2007
    Messages
    11 519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2007
    Messages : 11 519
    Points : 50 358
    Points
    50 358
    Par défaut
    Le canal de données de FTP se fait traditionnelement sur le port 20. De plus, il y a 2 mode de fonctionnement du protocole, le mode actif et le mode passif.

    Je t'engage à lire la RFC FTP afin de bien comprendre les différences de ces 2 modes car elles ont un impact sur le filtrage fait par le firewall.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2009
    Messages : 31
    Points : 23
    Points
    23
    Par défaut
    Bonsoir,

    Justement, pour éviter l'écoute par défaut sur le port 20, j'ai configuré en mode passif mon client FTP et dans /etc/proftpd/proftpd.conf :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    PassivePorts                    54000 54100
    MasqueradeAddress               ip_du_serveur
    Pour permettre l'écoute sur les ports passifs.
    J'ai bien lu la RFC, mais je n'y ai rien trouvé sur la façon de configurer le firewall quand on est en mode passif FTP...

    Dans le fichier /etc/services, j'ai changé le port du ftp-data :

    A ton avis, ce n'est pas suffisant pour forcer l'écoute sur ce port ?
    Peux-tu stp éclairer ma lanterne, je n'arrive pas à trouver de réponse claire malgré mes recherches ?

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2009
    Messages : 31
    Points : 23
    Points
    23
    Par défaut
    Je continue mes recherches, et le problème vient bien du firewall, qu'il faut autoriser à écouter sur les ports passifs.

    J'ai trouvé des réponses qui indiquent qu'il faut autoriser les connexions sur ces high_ports s'ils sont RELATED ou ESTABLISHED, pour ne pas les laisser à l'écoute en permanence. J'ai exécuté les règles de filtrage correspondantes, mais ça ne marche toujours pas, le client FTP se connecte mais ne liste pas le contenu du répertoire :

    Erreur : Délai d'attente expiré
    Erreur : Échec à la lecture du contenu du répertoire

    Voici les commandes exécutées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    iptables -A FORWARD -i ppp0 -o eth1 -p tcp --sport 1024: --dport 54000:54100 -m state --state RELATED,ESTABLISHED -j ACCEPT
    iptables -A FORWARD -i eth1 -o ppp0 -p tcp --sport 54000:54100 --dport 1024: -m state --state ESTABLISHED -j ACCEPT
    Peut-être faut-il aussi configurer la NAT pour que l'ensemble fonctionne de concert ?

  7. #7
    Membre actif Avatar de Qwert
    Inscrit en
    février 2009
    Messages
    147
    Détails du profil
    Informations forums :
    Inscription : février 2009
    Messages : 147
    Points : 226
    Points
    226
    Par défaut
    Recommandation : Eviter de dépasser le port 1024 pour des applications systèmes

  8. #8
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    mai 2007
    Messages
    11 519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2007
    Messages : 11 519
    Points : 50 358
    Points
    50 358
    Par défaut
    Citation Envoyé par Qwert Voir le message
    Recommandation : Eviter de dépasser le port 1024 pour des applications systèmes
    Cette recommandation est un peu vieillote maintenant.

    Pour info,

    MySQL 3306
    Oracle 1521
    SqlServer 1433
    Remote Desktop Server (RDP) 3389
    VNC 5800, 5801, 5900, 5901

    Et il y en a plein d'autre comme cela
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    mars 2009
    Messages
    31
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : mars 2009
    Messages : 31
    Points : 23
    Points
    23
    Par défaut
    Salut,

    Merci pour la recommandation, mais c'est le but de la manipulation... Je vais essayer de résumer la situation pour plus de clarté.

    Tant que je laisse la connexion FTP sur le port 21 (et ftp-data sur le 20), tout marche impeccable.
    Mais si j'essaie de modifier le port pour effectuer les connexions et les transferts sur des ports anonymes > 1024, FileZilla arrive à se connecter au FTP, mais bloque sur la commande LIST du répertoire racine du serveur.

    J'ai appliqué la même règle dans la table filter d'iptables sur le nouveau port que celle qui s'appliquait au port 21, donc il arrive bien à se connecter, et à s'authentifier.
    Le problème vient des ports passifs, qui sont bloqués par le firewall pour le transfert de fichiers, bien que j'ai mis en place des règles qui autorisent toute connexion RELATED ou ESTABLISHED (INPUT et OUTPUT) de n'importe où vers n'importe où....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
    A ce stade, je ne comprends pas ce qui peut bloquer les ports passifs ; j'ai essayé une bonne cinquantaine de configurations différentes des règles iptables, mais rien n'y fait : je n'arrive toujours pas à lister le contenu du répertoire FTP.

    En revanche, si j'ouvre tous les ports du firewall, pas de souci, je rentre dans le FTP via les ports passifs. Aucun doute, le problème se situe bien dans la conf de Netfilter...

    D'après plusieurs tutos que j'ai lus sur le Net, je devrais installer une surcouche de Netfilter, type Shorewall ou NuFW, mais c'est encore tout un binz à découvrir, alors que je ne suis très probablement qu'à une toute petite règle iptables du bonheur...
    Et en plus j'ai horreur d'abandonner devant l'adversité

    Merci d'avance de vos idées !

  10. #10
    Rédacteur

    Avatar de ram-0000
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    mai 2007
    Messages
    11 519
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Consultant en sécurité
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : mai 2007
    Messages : 11 519
    Points : 50 358
    Points
    50 358
    Par défaut
    C'est probablement parce que le firewall fait quelque chose pour ftp.

    Si le port 21, le firewall sait que c'est du ftp et donc est capable d'analyser le protocole, de savoir quel port dynamique va être ouvert (par analyse des échanges) et est capable d'autoriser dynamiquement le port de données.

    Quand tu travailles avec un autre port que 21, pour le firewall, ce n'est plus du ftp et donc il ne fait rien de plus.

    Regarde si il n'y a pas une option dans ton firewall pour lui dire que sur le port 10000 (dans ton cas), c'est du ftp et qu'il faut qu'il se comporte comme tel.
    Raymond
    Vous souhaitez participer à la rubrique Réseaux ? Contactez-moi

    Cafuro Cafuro est un outil SNMP dont le but est d'aider les administrateurs système et réseau à configurer leurs équipements SNMP réseau.
    e-verbe Un logiciel de conjugaison des verbes de la langue française.

    Ma page personnelle sur DVP
    .

Discussions similaires

  1. Réponses: 4
    Dernier message: 15/02/2008, 10h48
  2. Le ftp sur un autre port que le 21: est-possible?
    Par Alyx² dans le forum Windows Serveur
    Réponses: 5
    Dernier message: 26/06/2006, 13h37
  3. Réponses: 9
    Dernier message: 23/12/2005, 13h41
  4. Réponses: 5
    Dernier message: 31/10/2005, 12h58
  5. Réponses: 11
    Dernier message: 13/10/2005, 18h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo