1 votes

Vsftpd ne répond pas à LIST

J'ai Ubuntu 10.04 Desktop fonctionnant en tant que serveur web et viens d'installer vsftpd et de le configurer pour permettre ascii_upload_enable et ascii_download_enable et également activé chroot_local_user, chroot_list_enable et chroot_list_file.

Cependant, j'ai du mal à obtenir une liste de fichiers à partir du serveur en utilisant FileZilla, voici ce qui se passe :

Statut: Résolution de l'adresse du serveur.jonbevan.me.uk
Statut: Connexion à 80.4.79.179:21...
Statut: Connexion établie, attente du message de bienvenue...
Réponse: 220 Welcome to server.jonbevan.me.uk FTP service.
Commande: USER jon
Réponse: 331 Veuillez spécifier le mot de passe.
Commande: PASS *********
Réponse: 230 Connexion réussie.
Commande: OPTS UTF8 ON
Réponse: 200 Toujours en mode UTF8.
Statut: Connecté
Statut: Récupération de la liste des répertoires...
Commande: CWD /home/jon
Réponse: 250 Répertoire modifié avec succès.
Commande: PWD
Réponse: 257 "/home/jon"
Commande: TYPE I
Réponse: 200 Passage en mode binaire.
Commande: PASV
Réponse: 227 Entrée en mode passif (80,4,79,179,196,13)
Commande: LIST
Réponse: 425 Impossible d'établir la connexion.
Erreur: Impossible de récupérer la liste des répertoires

Et ceci se passe avec CuteFTP :

COMMANDE :> [7/29/2010 15:23:43] LIST
[7/29/2010 15:23:43] 150 Voici la liste des répertoires.
ERREUR :> [7/29/2010 15:24:13] Délai d'attente (30000 ms) lors de l'acceptation de la connexion de données depuis le serveur.
[7/29/2010 15:24:13] 426 Échec de l'écriture du flux réseau.
ERREUR :> [7/29/2010 15:24:13] Réponse corrompue reçue.

Des idées sur ce qui pourrait être le problème ? Désolé si j'ai omis des informations importantes.

4voto

D'accord avec Luke404. Vérifiez que votre vsftpd.conf a les entrées suivantes configurées et que votre pare-feu autorise les plages de ports pasv_min et pasv_max (10000 - 100010 n'est qu'un exemple). N'oubliez pas de redémarrer le service si des changements sont apportés au fichier de configuration.

    pasv_enable=YES
    pasv_min_port=10000
    pasv_max_port=10010
    pasv_address=[Adresse IP publique de votre serveur]

2voto

Luke404 Points 5608

Vous utilisez le mode PASV, donc votre client va essayer de se connecter sur un port "aléatoire" au serveur pour transférer des données, cela inclut à la fois les transferts de fichiers et les listes de répertoires.

La raison la plus probable pour laquelle cela ne fonctionne pas est que la connexion TCP PASV pour le transfert de données ne peut pas être établie, généralement pour l'une de ces raisons :

  • pare-feu côté client bloquant les connexions sortantes
  • pare-feu côté serveur bloquant les connexions entrantes sur des ports élevés
  • serveur derrière un NAT avec seulement les ports FTP statiques 21,22 redirigés et aucune inspection de paquets pour rediriger étatiquement les ports supérieurs

0voto

tent Points 214

J'ai eu le même problème

J'ai résolu cela en modifiant la configuration de /etc/sysconfig/iptables-config

au début du fichier, j'ai changé ce paramètre: IPTABLES_MODULES

# Charger des modules iptables supplémentaires (aides nat)
#   Par défaut: -aucun-
# Liste séparée par des espaces des aides nat (par exemple 'ip_nat_ftp ip_nat_irc'), qui
# sont chargées après l'application des règles de pare-feu. Les options pour les aides sont
# stockées dans /etc/modprobe.conf.
IPTABLES_MODULES="ip_conntrack_ftp"

Après avoir redémarré iptables, j'ai pu lister les fichiers dans FileZilla. J'espère que cela vous aidera.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X