vsftpd : Le fichier de configuration vsftpd.conf
Table des matières
Cet article récapitule les options de configuration du fichier vsftpd.conf pour un serveur FTP sous Linux.
Le fichier de configuration est situé dans /etc/vsftpd/vsftpd.conf.
Il existe aussi des fichiers spécifiques dans /etc/vsftpd/
Pour activer le FTP anonyme, permettant d'accéder au FTP sans compte d'utilisateur, modifier :
L'arborescence est le contenu du dossier personnel de l'utilisateur ftp (Sur CentOS : /var/ftp)
Pour désactiver, mettre la valeur sur NO.
Attention, le FTP n'étant pas sécurisé, les informations transitent en clair.
Pour permettre aux utilisateurs locaux d'écrire dans leur espace personnel :
Avec cela, les utilisateurs peuvent remonter dans l'arborescence du système.
Pour les emprisonner dans leur /home, activer les options :
Créer le fichier /etc/vsftpd/chroot_list et indiquer (1 utilisateur par ligne) la liste des utilisateurs à chrooter.
Si la ligne chroot_local_user est à YES, tous les utilisateurs sont chrootés SAUF ceux de la liste.
La solution la plus sécure, est de retirer les droits du dossier chrooté de l'utilisateur et de créer un dossier dans lequel il a les droits d'écrire.
Exemple avec l'utilisateur adrien :
Pour configurer VSFTPD en utilisant FTPS (FTP sécurisé) avec un certificat voici comment procéder.
On doit d'abord posséder un certificat évidemment.
Si on en a pas on pourra en générer un "autosigné" avec la commande suivante :
On définit de bonnes permissions au fichier généré :
Et on ajoute ces options dans le fichier vsftpd.conf :
Introduction
Cet article récapitule les options de configuration du fichier vsftpd.conf pour un serveur FTP sous Linux.
Articles associés
Fichier de configuration
Le fichier de configuration est situé dans /etc/vsftpd/vsftpd.conf.
Il existe aussi des fichiers spécifiques dans /etc/vsftpd/
Activer le FTP Anonyme
Pour activer le FTP anonyme, permettant d'accéder au FTP sans compte d'utilisateur, modifier :
Code BASH :
anonymous_enable=YES
L'arborescence est le contenu du dossier personnel de l'utilisateur ftp (Sur CentOS : /var/ftp)
Pour désactiver, mettre la valeur sur NO.
Le FTP pour les utilisateurs locaux
Activer la connexion
Attention, le FTP n'étant pas sécurisé, les informations transitent en clair.
Pour permettre aux utilisateurs locaux d'écrire dans leur espace personnel :
Code BASH :
local_enable=YES write_enable=YES local_umask=022
Avec cela, les utilisateurs peuvent remonter dans l'arborescence du système.
Emprisonner les utilisateurs dans leur dossier personnel
Pour les emprisonner dans leur /home, activer les options :
Code BASH :
chroot_local_user=NO chroot_list_enable=YES allow_writeable_chroot=YES chroot_list_file=/etc/vsftpd/chroot_list
Créer le fichier /etc/vsftpd/chroot_list et indiquer (1 utilisateur par ligne) la liste des utilisateurs à chrooter.
Si la ligne chroot_local_user est à YES, tous les utilisateurs sont chrootés SAUF ceux de la liste.
La solution la plus sécure, est de retirer les droits du dossier chrooté de l'utilisateur et de créer un dossier dans lequel il a les droits d'écrire.
Exemple avec l'utilisateur adrien :
Code BASH :
mkdir /home/adrien/pub chown -R adrien:adrien chmod a-w /home/adrien
FTPS : Le FTP sur SSL
Pour configurer VSFTPD en utilisant FTPS (FTP sécurisé) avec un certificat voici comment procéder.
On doit d'abord posséder un certificat évidemment.
Si on en a pas on pourra en générer un "autosigné" avec la commande suivante :
Code BASH :
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/vsftpd/vsftpd.pem -out /etc/vsftpd/vsftpd.pem
On définit de bonnes permissions au fichier généré :
Code BASH :
chmod 600 /etc/vsftpd/vsftpd.pem
Et on ajoute ces options dans le fichier vsftpd.conf :
Code BASH :
ssl_enable=YES force_local_data_ssl=YES force_local_logins_ssl=YES rsa_cert_file=/etc/vsftpd/vsftpd.pem