GNU/Linux >> Tutoriels Linux >  >> Linux

Vsftpd échoue l'authentification Pam ?

En déplaçant une configuration vsftpd éprouvée sur un nouveau serveur avec Fedora 16, j'ai rencontré un problème. Tout semble se passer comme il se doit, mais l'authentification de l'utilisateur échoue. Je ne trouve aucune entrée dans aucun journal qui indique ce qui s'est passé.

Voici le fichier de configuration complet :

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
idle_session_timeout=0
data_connection_timeout=0
nopriv_user=ftpsecure
connect_from_port_20=YES
listen=YES
chroot_local_user=YES
chroot_list_enable=NO
ls_recurse_enable=YES
listen_ipv6=NO

pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

FTP me défie pour un nom d'utilisateur et un mot de passe, je les fournis, Connexion incorrecte. J'ai vérifié, cet utilisateur est capable de se connecter à partir de ssh. Quelque chose ne va pas avec pam_service .

Anonyme (si modifié en autorisé) semble bien fonctionner.

SELinux est désactivé.

FTPSecure semble bien configuré… Je suis complètement perdu !

Voici les fichiers journaux que j'ai examinés sans succès :

/var/log/messages
/var/log/xferlog      #empty
/var/log/vsftpd.log   #empty
/var/log/secure

Trouvé quelque chose dans /var/log/audit/audit.log :

type=USER_AUTH msg=audit(1335632253.332:18486): user pid=19528 uid=0 auid=4294967295 ses=4294967295 msg='op=PAM:authentication acct="kate" exe="/usr/sbin/vsftpd" hostname=ip68-5-219-23.oc.oc.cox.net addr=68.5.219.23 terminal=ftp res=failed'

Je devrais peut-être regarder /var/log/wtf-is-wrong.help 🙂

Plus d'informations :

/etc/pam.d/vsftpd ressemble à ceci :

#%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      password-auth
account    include      password-auth
session    required     pam_loginuid.so
session    include      password-auth

Réponse acceptée :

Ouf. J'ai résolu le problème. Cela revient à une configuration mais dans /etc/pam.d/vsftpd

Parce que les sessions ssh ont réussi alors que les sessions ftp ont échoué, je suis allé à

/etc/pam.d/vsftpd, a supprimé tout ce qui s'y trouvait et a placé à la place le contenu de ./sshd pour qu'il corresponde précisément aux règles. Tout a fonctionné !

Par méthode d'élimination, j'ai trouvé que la ligne incriminée était :

    auth       required     pam_shells.so

Le supprimer me permet de continuer.

Tuns out, "pam_shells est un module PAM qui n'autorise l'accès au système que si le shell des utilisateurs est répertorié dans /etc/shells." J'ai regardé là-bas et bien sûr, pas de bash, rien. Il s'agit d'un bogue dans la configuration de vsftpd à mon avis car nulle part dans la documentation vous n'avez modifié /etc/shells. Ainsi, l'installation et les instructions par défaut ne fonctionnent pas comme indiqué.

Je vais trouver où je peux soumettre le bogue maintenant.


Linux
  1. Différence entre /var/log/messages, /var/log/syslog et /var/log/kern.log ?

  2. 20 fichiers journaux Linux situés dans le répertoire /var/log

  3. L'utilisateur anonyme ne parvient pas à télécharger le fichier sur le serveur VSFTP

  4. Yum échoue avec "Erreur :l'image du disque de la base de données est mal formée" dans /var/log/messages

  5. Authentification PAM pour une application héritée

Anatomie d'un fichier de configuration Linux Pluggable Authentication Modules (PAM)

Une introduction aux modules d'authentification enfichables (PAM) sous Linux

Comment améliorer la sécurité des utilisateurs Linux avec les paramètres du module d'authentification enfichable

Installation de Grafana Loki

Authentification PAM

chsh :échec de l'authentification PAM