[pam_ldap][vsftpd] problème de local_root [Résolu]
Bonjour,
je rencontre un soucis ennuyeux lors de la connection d'utilisateurs à un serveur ftp.
La liste des utilisateurs est fournie par un serveur ldap OpenLDAP 2.3.30. Le serveur ftp est vsFTP 2.0.5.
J'utilise pam_ldap 180-1 pour faire le lien entre les deux.
Le serveur ldap stocke les logins et mot de passe. Les comptes sont paramétrés par fichier où 1 utilisateur = 1 fichier dont le nom est le login.
Chaque fichier utilisateur contient une directive local_root qui indique la racine du répertoire accessible à l'utilisateur.
La connection des utilisateurs se passe bien quand ils respectent la casse de leur login. Ce qui m'étonne c'est que lorsque l'on change la casse, la directive local_root n'est plus respectée... Du coup, ils ont accès à toute la racine du ftp avec les droits qui leur sont dévolus (les droits sont par contre respectés: un utilisateur qui n'a pas les droits d'écriture ne les gagne pas).
Par expl:
login -> utilisateur1 pw -> secret => local_root est respecté
login -> utIliSateur1 pw->secret => local_root est ignoré
Voici les fichiers de conf:
pam.d/vsftp:
Code:
1 2 3 4
|
auth required /lib/security/pam_ldap.so
account required /lib/security/pam_ldap.so
password required /lib/security/pam_ldap.so |
un compte utilisateur1:
Code:
1 2 3 4
|
anon_world_readable_only=YES
dirlist_enable=YES
local_root=commun |
/etc/vsftpd.conf:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
|
#background=YES
anonymous_enable=NO
local_enable=YES
write_enable=NO
anon_umask=022
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO
chroot_local_user=YES
guest_enable=YES
guest_username=ftp
nopriv_user=nobody
user_config_dir=/repertoires des comptes
listen=YES
listen_port=21
pasv_promiscuous=YES
port_enable=YES
dual_log_enable=YES
#ssl_enable=YES
#ssl_tlsv1=YES
#ssl_sslv2=YES
#ssl_sslv3=YES
#rsa_cert_file=/etc/ssl/certs/vsftpd.pem
accept_timeout=60
max_clients=100
max_per_ip=4 |
et enfin,
/etc/pam_ldap.conf:
Code:
1 2 3 4 5 6 7 8 9 10
|
base dc=monserveur,dc=org
uri ldaps://ldap.monserveur.org
ldap_version 3
port 636
scope sub
pam_login_attribute uid
pam_password crypt
ssl start_tls
ssl on |
Si quelqu'un avait une idée car je n'ai rien trouvé dans la "littérature classique".
par avance merci
Edit: Après réflexion, je penche du côté de vsftp mais je ne trouve toujours rien là dessus.
Edit: Solution:
En fait c'était normal, pour ceux que ça intéresse, ldap étant insensible à la casse dans mon cas, je me trouvais dans la situation où le compte existait dans ldap (puisque c'est un compte valide si l'on ne tient pas compte de la casse) mais comme vsftpd ne trouvais pas le fichier de conf de ce compte (vu le soucis de casse que le système de fichier prenait en compte), il appliquait la rêgle par défaut. Il suffisait en fait de vérouiller les autorisation par défaut dans le fichier vsftpd.conf.