Connexion VSFTPD 530 incorrecte

12

J'essaie d'obtenir un serveur vsftpd configuré sur CentOS 5.3 x64. Je ne parviens pas à faire fonctionner les identifiants des utilisateurs locaux. Voici mon vsftpd.conf:

local_enable=YES
write_enable=YES
pam_service_name=vsftpd
connect_from_port_20=YES
listen=YES
pam_service_name=vsftpd
xferlog_std_format=NO
log_ftp_protocol=YES
chroot_local_user=YES

Voici la sortie de vsftp.log:

Mon Sep 13 23:34:44 2010 [pid 19243] CONNECT: Client "10.0.1.138"
Mon Sep 13 23:34:44 2010 [pid 19243] FTP response: Client "10.0.1.138", "220 (vsFTPd 2.0.5)"
Mon Sep 13 23:34:44 2010 [pid 19243] FTP command: Client "10.0.1.138", "USER dwelch"
Mon Sep 13 23:34:44 2010 [pid 19243] [dwelch] FTP response: Client "10.0.1.138", "331 Please specify the password."
Mon Sep 13 23:34:44 2010 [pid 19243] [dwelch] FTP command: Client "10.0.1.138", "PASS <password>"
Mon Sep 13 23:34:44 2010 [pid 19242] [dwelch] FAIL LOGIN: Client "10.0.1.138"
Mon Sep 13 23:34:45 2010 [pid 19243] [dwelch] FTP response: Client "10.0.1.138", "530 Login incorrect."

Et la sortie du journal sécurisé:

Sep 13 17:40:50 intra vsftpd: pam_unix(vsftpd:auth): authentication failure; logname= uid=0 euid=0 tty=ftp ruser=dwelch rhost=10.0.1.138  user=dwelch

Il semble que pam n'authentifie pas l'utilisateur. Voici mon fichier /etc/pam.d/vsftp:

#%PAM-1.0
session    optional     pam_keyinit.so    force revoke
auth       required     pam_listfile.so item=user sense=deny file=/etc/vsftpd/ftpusers onerr=succeed
auth       required     pam_shells.so
auth       include      system-auth
account    include      system-auth
session    include      system-auth
session    required     pam_loginuid.so

Quelqu'un peut-il voir ce qui me manque? Merci.

dw.emplod
la source
J'ai rencontré le même problème, j'ai supprimé et installé vsftpd à nouveau et j'ai bien fonctionné. Oui ce n'est pas une bonne solution mais cela a fonctionné.
usef_ksa
C'est drôle que vous postez cela, qui a rencontré exactement le même problème cette semaine. Par frustration, je pense que nous avons également réinstallé vsftpd et cela a fonctionné. RPM cassé?
Kyle Smith

Réponses:

17
 vi /etc/pam.d/vsftp  

commentaire #auth requis pam_shells.so

puis

service vsftpd restart
pam_shells.so signifie que seuls les utilisateurs avec un accès shell doivent être autorisés, c'est pourquoi il faut les commenter.

themihai
la source
Quelqu'un a suggéré d'utiliser le module pam_nologin . Cela pourrait être une alternative.
robsch
2

Dans mon cas, j'ai résolu le même problème avec ce qui suit:

vi /etc/pam.d/vsftpd

la ligne de commentaire #auth inclut system-auth

puis

service vsftpd restart

ferbarron
la source
1
La réponse est peut-être correcte, mais il serait plus utile d'inclure une explication pour expliquer pourquoi cette ligne doit être mise en commentaire.
Jenny D du
0

Ce n'est pas une bonne réponse, mais une stratégie que j'ai trouvée pour bien me servir:

Commencez à commenter les lignes de votre /etc/pam.d/vsftpfichier et voyez si (et quand) il vous permet de vous connecter. PAM est conçu intentionnellement pour ne signaler que les succès ou les échecs, pas la raison.

Chen Levy
la source
0

avez-vous un seul serveur ftp sur votre système? J'ai eu des problèmes similaires, puis bas et voici, j'ai approfondi le problème et il y avait deux serveurs ftp installés qui étaient en conflit. J'en ai désinstallé un et le problème a été résolu.

Si vous avez fait le 'yum install vsftpd', vous ne devriez pas avoir à jouer avec les fichiers pam (quelque chose de mal généralement lorsque vous commencez à jouer avec PAM).

Si ce n'est pas le cas, exécutez chkconfig --list | grep ftp et voyez ce qui se passe (voyez si vsftpd apparaît là-bas - sinon quelque chose peut mal tourner avec l'installation).

Et ma dernière suggestion serait d'exécuter une mise à jour miam.

Marm0t
la source
vsftpd est un serveur FTP, pas un serveur SFTP. Ce sont des protocoles différents.
hellomynameisjoel
0

L'utilisateur a-t-il un shell valide? Je pense que cela doit être dans la liste / etc / shells. L'utilisateur n'est-il certainement pas le fichier / etc / vsftpd / ftpusers?

Assurez-vous que vous modifiez définitivement /etc/vsftpd/vsftpd.conf, ce qui m'a mordu sur CentOS, je modifiais /etc/vsftpd.conf.

vsftpd peut être un peu compliqué et n'est pas excellent pour signaler des erreurs. Restez avec moi, je me déchirais les cheveux avec un problème très similaire, c'est toujours une solution simple.

hellomynameisjoel
la source
-3

vi / etc / passwd / bin / bash pour votre utilisateur

pseudo
la source