Le protocole FTP (File Transfer Protocol) est encore largement utilisé pour transférer des fichiers.
Pour des raisons de sécurité, il est essentiel de mettre en place une version sécurisée avec vsftpd (Very Secure FTP Daemon).
Dans cet article, nous allons voir comment installer, configurer et sécuriser un serveur FTP sous Linux.
Plan de l’article
- Installation de vsftpd
- Configuration de base
- Sécurisation du serveur FTP
- Tests et validation
- Conclusion
Installation de vsftpd
Sous Debian/Ubuntu :
sudo apt update
sudo apt install vsftpd
Sous CentOS/RHEL :
sudo yum install vsftpd
Démarrer et activer le service :
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
Configuration de base
Le fichier principal est /etc/vsftpd.conf
.
Exemple minimal :
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
anonymous_enable=NO
: désactive les connexions anonymes.local_enable=YES
: autorise les utilisateurs locaux.write_enable=YES
: permet l’upload.chroot_local_user=YES
: enferme les utilisateurs dans leur répertoire.
Redémarrer le service :
sudo systemctl restart vsftpd
Sécurisation du serveur FTP
- Activer TLS pour sécuriser les connexions :
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.key
- Limiter les utilisateurs autorisés (
userlist_enable=YES
). - Configurer un pare-feu (UFW, nftables) pour limiter les accès.
Tests et validation
Tester la connexion avec un client FTP :
ftp serveur-exemple.com
Ou avec un client graphique (FileZilla).
Vérifiez que la connexion utilise bien TLS/SSL.
Conclusion
Avec vsftpd, vous pouvez mettre en place un serveur FTP sécurisé :
- Authentification par utilisateurs locaux,
- Chiffrement TLS,
- Restrictions fines d’accès.
Une solution simple, robuste et adaptée aux environnements de production.