Vsftpd
| Fiche express | |
|---|---|
| Type | Serveur FTP (démon) |
| Paquet | vsftpd
|
| Config | /etc/vsftpd/vsftpd.conf (RHEL/CentOS)
|
| Service | vsftpd
|
| Contexte | RHEL/CentOS — voir Vsftpd (Debian) pour Debian/Ubuntu |
| Voir aussi | Vsftpd (Debian) · Anonymous vsftp · Authentication data on MySQL · Vsftp backdoor |
vsftpd (« very secure FTP daemon ») est un serveur FTP pour Linux, réputé pour sa sécurité et sa légèreté. Il gère aussi bien les accès anonymes que les utilisateurs locaux ou des utilisateurs virtuels authentifiés via PAM (base Berkeley DB, MySQL, LDAP…).
Installation (RHEL/CentOS)
yum -y install vsftpd db4-utils
Configuration de base
Le fichier de configuration principal est /etc/vsftpd/vsftpd.conf. Avant toute
modification, en garder une copie de référence :
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.ori
Pour des utilisateurs virtuels authentifiés via une base Berkeley DB locale (voir aussi Authentication data on MySQL pour un backend MySQL) :
touch /etc/vsftpd/virtual.txt
Authentification PAM
Éditer /etc/pam.d/vsftpd — attention au chemin exact de
pam_userdb.so, qui varie selon l'architecture (/lib/security64/ en
64 bits) :
# config spécifique utilisateurs virtuels (base Berkeley DB)
auth sufficient pam_unix.so
account sufficient pam_unix.so
auth required /lib/security64/pam_userdb.so db=/etc/vsftpd/virtual
account required /lib/security64/pam_userdb.so db=/etc/vsftpd/virtual
Les deux lignes suivantes, plus courtes, suffisent en général (résolution automatique du chemin de la librairie par PAM) :
auth required pam_userdb.so db=/etc/vsftpd/virtual
account required pam_userdb.so db=/etc/vsftpd/virtual
Droits sur le répertoire partagé
chmod -R 770 /var/www/html/
Gestion du service
Sur RHEL/CentOS 5-6 (SysV init, voir Chkconfig) :
chkconfig --add vsftpd
chkconfig vsftpd on
service vsftpd start
Sur RHEL7+ (systemd, voir Systemctl) :
systemctl enable vsftpd
systemctl start vsftpd
Sécurité
La version 2.3.4 de vsftpd a été distribuée avec une porte dérobée connue — voir Vsftp backdoor pour le détail de la vulnérabilité et sa détection. Il est donc essentiel de ne jamais rester sur une version aussi ancienne et de suivre les mises à jour de sécurité de la distribution.
Voir aussi
- Vsftpd (Debian) — installation et configuration par défaut sous Debian/Ubuntu
- Anonymous vsftp — configuration d'un accès FTP anonyme et durcissement SELinux
- Authentication data on MySQL — authentification des utilisateurs virtuels via MySQL
- Mount sftp share — montage d'un partage distant en SFTP côté client (sshfs)
- Vsftp backdoor — porte dérobée historique de la version 2.3.4
- Chkconfig — activation du service au démarrage (SysV init)
- Systemctl — équivalent systemd