Serveur FTP · 5 min read · Sep 23, 2025
Comment installer le serveur FTP vsftpd et le sécuriser avec TLS sur Debian 11

Le protocole de transfert de fichiers ou FTP est un protocole réseau très ancien et l’un des plus connus. Il n’est pas sécurisé par rapport à SFTP ou SCP de nos jours, mais reste le premier choix de nombreux utilisateurs pour transférer des fichiers entre un serveur et un client. FTP est considéré comme non sécurisé car il transfère des données ainsi que des identifiants d’utilisateur sans aucun type de cryptage.
Nous avons une large gamme de serveurs FTP open-source disponibles de nos jours comme FTPD, VSFTPD, PROFTPD et pureftpd. Parmi tous, VSFTPD est un protocole très sécurisé, rapide et le plus largement utilisé pour transférer des fichiers entre deux systèmes.
VSFTPD est également connu sous le nom de “Very Secure File Transfer Protocol Daemon” avec le support de SSL, IPv6, FTPS explicite et implicite.
Dans ce guide, nous allons vous montrer comment installer le serveur FTP vsftpd sur Debian 11.
Prérequis
Un serveur exécutant Debian 11. Un utilisateur non-root avec des privilèges sudo.
1. Installer Vsftpd
Avant de commencer l’installation, mettez à jour votre serveur Debian 11 en exécutant la commande suivante dans le terminal :
sudo apt update -y
sudo apt upgrade -yDebian a un très grand dépôt et le paquet vsftpd est disponible dans le dépôt officiel, donc vous pouvez facilement installer le vsftpd en exécutant la commande suivante :
sudo apt install vsftpd -yAprès l’installation du paquet, démarrez le service Vsftpd, vérifiez l’état du service et activez le service au démarrage.
sudo systemctl start vsftpd
sudo systemctl status vsftpd
systemctl enable vsftpd.service2. Créer un utilisateur FTP et configurer pour la connexion FTP
Maintenant, créez un nouveau compte utilisateur pour FTP, en utilisant cet utilisateur nous allons nous connecter au serveur FTP plus tard.
sudo adduser sohanLes utilisateurs ajoutés dans le fichier vsftpd.userlist ont la permission d’accéder au serveur FTP.
Ensuite, nous devons ajouter l’utilisateur sohan dans la liste des utilisateurs vsftpd. Ouvrez le fichier et ajoutez un utilisateur en exécutant la commande suivante :
echo "sohan" | sudo tee -a /etc/vsftpd.userlist3. Créer un répertoire utilisateur FTP
Ensuite, nous devons créer un répertoire FTP pour notre utilisateur FTP et définir la propriété avec la commande suivante :
sudo mkdir -p /home/sohan/ftp_directory
sudo chown nobody:nogroup /home/sohan/ftp_directory
sudo chmod a-w /home/sohan/ftp_directoryMaintenant, créez un répertoire où les fichiers peuvent être téléchargés et donnez la propriété à l’utilisateur sohan en exécutant la commande :
sudo mkdir -p /home/sohan/ftp_directory/ftp_datasudo chown sohan:sohan /home/sohan/ftp_directory/ftp_datacd /home/sohan/ftp_directory/chmod -R 777 ftp_data4. Configurer Vsftpd
Ensuite, vous devez changer certains paramètres par défaut pour configurer un serveur FTP.
Tout d’abord, créez une copie de sauvegarde du fichier de configuration original de vsftpd.
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.bakDans le serveur FTP, les utilisateurs anonymes se voient accorder l’accès par défaut. Pour rendre le serveur FTP plus sécurisé, nous allons désactiver la connexion des utilisateurs anonymes et n’accorder l’accès qu’à l’utilisateur spécifique.
Ensuite, ouvrez le fichier vsftpd.conf et apportez les modifications comme ci-dessous :
vim /etc/vsftpd.confanonymous_enable=NO
local_enable=YESIl y a d’autres changements que nous devons apporter dans la configuration, ouvrez d’abord vsftpd.conf
sudo vim /etc/vsftpd.confEnsuite, assurez-vous que vsftpd.conf doit contenir les lignes suivantes :
listen=NO
listen_ipv6=YES
anonymous_enable=NO
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
user_sub_token=$USER
local_root=/home/$USER/ftp_directory
userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NOEnregistrez et fermez le fichier. Vous pouvez changer la configuration ci-dessus selon vos besoins.
Maintenant, redémarrez le service vsftpd et vérifiez l’état du service en exécutant les commandes suivantes :
sudo systemctl restart vsftpdEnsuite, assurez-vous que le service vsftpd est en cours d’exécution en exécutant la commande suivante dans le terminal :
sudo systemctl status vsftpd5. Autoriser vsftpd dans le pare-feu et accéder au serveur vsftpd
Ensuite, si vous utilisez un pare-feu, autorisez le port 21 et le port 22 en exécutant la commande suivante :
sudo ufw allow 21/tcp
sudo ufw allow 22/tcpPuis rechargez le pare-feu pour appliquer les modifications :
sudo ufw reloadEnsuite, ouvrez n’importe quel client FTP comme FileZilla et entrez les détails de votre serveur, comme le protocole, l’hôte, l’utilisateur :

Maintenant, cliquez sur connecter, puis entrez votre mot de passe :

Ensuite, cela affichera des détails comme ci-dessous, cliquez sur OK.

À ce stade, vous êtes connecté au serveur FTP, et vous pouvez télécharger et télécharger des fichiers/dossiers.

6. Sécuriser Vsftpd avec SSL/TLS
Disons que vous souhaitez transférer des données cryptées via FTP, pour ce faire, vous devez créer un certificat SSL et activer la connexion SSL/TLS.
Vous pouvez créer un certificat en utilisant OpenSSL avec la commande suivante :
sudo mkdir /etc/cert
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/cert/vsftpd.pem -out /etc/cert/vsftpd.pemMaintenant, vous devrez modifier le fichier vsftpd.conf et apporter quelques modifications :
sudo vim /etc/vsftpd.confAjoutez les lignes suivantes à la fin :
rsa_cert_file=/etc/cert/vsftpd.pem
rsa_private_key_file=/etc/cert/vsftpd.pem
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
require_ssl_reuse=NO
ssl_ciphers=HIGHEnregistrez et quittez le fichier, puis redémarrez Vsftpd en utilisant la commande suivante :
sudo systemctl restart vsftpd7. Accéder à FTP via SSL/TLS
Ouvrez le client FTP FileZilla et allez dans Fichier > Gestionnaire de sites. Ici, cliquez sur ajouter un nouveau site et entrez le nom de l’hôte/site, ajoutez l’adresse IP, définissez le protocole à utiliser, Chiffrement : Exiger FTP explicite sur TLS et type de connexion. Ensuite, cliquez sur le bouton Connecter. Vous devriez voir l’image suivante :

Ensuite, entrez votre mot de passe :

Ensuite, vous verrez le certificat SSL, vérifiez les détails du certificat et cliquez sur OK.

Enfin, vous verrez le contenu de votre serveur FTP et pourrez transférer vos données en toute sécurité d’un système à un autre.

Conclusion
Dans le guide ci-dessus, nous avons installé le serveur VSFTPD sur Debian 11. Nous avons également appris comment se connecter via une connexion non cryptée et via une connexion cryptée en utilisant un certificat SSL.
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.