Hello,
Sur Ubuntu 14 (oui, je sais… mais je n’ai pas choisi… je reprends ce qui est en place), j’essaye de mettre en place un vsftpd que mon prédécesseur avait visiblement laissé à l’abandon avec une conf qui ne fonctionne plus.
Lui utilisait les comptes locaux, moi je veux utiliser les comptes virtuels, comme sur ma vieille Jessie.
J’ai donc repris la même conf, qui est celle-ci :
listen=YES ftpd_banner=FTP server ready message_file=.message dirmessage_enable=YES anonymous_enable=NO local_enable=YES write_enable=NO anon_upload_enable=NO anon_mkdir_write_enable=NO anon_other_write_enable=NO guest_enable=YES guest_username=www-data anon_umask=022 chroot_local_user=YES allow_writeable_chroot=YES max_clients=200 max_per_ip=4 secure_chroot_dir=/var/run/vsftpd pam_service_name=vsftpd dual_log_enable=YES xferlog_enable=YES xferlog_file=/var/log/vsftpd.xfer.log log_ftp_protocol=YES vsftpd_log_file=/var/log/vsftpd.log user_config_dir=/etc/vsftpd/vsftpd_user_conf
et pour le ficher de conf d’un user :
anon_world_readable_only=NO
local_root=/home/connect
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
et pour le etc/pam.d/vsftpd :
# Standard behaviour for ftpd(8).
#auth required pam_listfile.so item=user sense=deny file=/etc/ftpusers onerr=succeed
# Note: vsftpd handles anonymous logins on its own. Do not enable pam_ftp.so.
# Standard pam includes
#@include common-account
#@include common-session
#@include common-auth
#auth required pam_shells.so
# --------------------------
#auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/login
#account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd/login
# --------------------------
auth required pam_userdb.so db=/etc/vsftpd/login crypt=hash
account required pam_userdb.so db=/etc/vsftpd/login crypt=hash
session required pam_loginuid.so
J’ai volontairement laissé les commentaires pour montrer que j’ai essayé différentes conf qui n’aboutissaient pas (le dernier bloc étant celui fonctionnant sur ma jessie, et le bloc du milieu étant celui recommandé dans les tutos).
Mon problème ==> A la connexion, dans mon client FTP, j’ai l’erreur suivante :
|Statut :|Connexion à x.x.x.x:21…|
|—|---|
|Statut :|Connexion établie, attente du message d’accueil…|
|Statut :|Serveur non sécurisé, celui-ci ne supporte pas FTP sur TLS.|
|Commande :|USER toto|
|Réponse :|331 Please specify the password.|
|Commande :|PASS **************|
|Réponse 500 OOPS: cannot change directory:/var/www|
|Erreur :|Erreur critique : Impossible d’établir une connexion au serveur|
Côté logs, j’ai ceci :
Wed Apr 4 10:58:08 2018 [pid 24273] FTP response: Client “x.x.x.x”, "220 FTP server ready"
Wed Apr 4 10:58:08 2018 [pid 24273] FTP command: Client “x.x.x.x”, "AUTH TLS"
Wed Apr 4 10:58:08 2018 [pid 24273] FTP response: Client “x.x.x.x”, "530 Please login with USER and PASS."
Wed Apr 4 10:58:08 2018 [pid 24273] FTP command: Client “x.x.x.x”, "AUTH SSL"
Wed Apr 4 10:58:08 2018 [pid 24273] FTP response: Client “x.x.x.x”, "530 Please login with USER and PASS."
Wed Apr 4 10:58:08 2018 [pid 24273] FTP command: Client “x.x.x.x”, "USER toto"
Wed Apr 4 10:58:08 2018 [pid 24273] [toto] FTP response: Client “x.x.x.x”, "331 Please specify the password."
Wed Apr 4 10:58:08 2018 [pid 24273] [toto] FTP command: Client “x.x.x.x”, "PASS "
Wed Apr 4 10:58:08 2018 [pid 24272] [toto] OK LOGIN: Client “x.x.x.x”
Dernier détail, j’ai généré ma base d’user comme ceci :
db5.3_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db
Voilà.
Je vois sur le net que lorsque ce problème se pose, c’est l’histoire de selinux, à la différence qu’ici, il n’y a pas de selinux sur cette machine !
Voyez-vous quelque-chose ? Merci de votre aide !