Menu
Donnez votre avis

Linux - Gentoo - Installation et configuration de VSFTPD

Posez votre question
VSFTPD est un serveur FTP simple d’installation et très facile à utiliser.

Installation et mise en place


Pour l’installer sous Gentoo, il faut lancer la commande :
emerge vsftpd

Une fois installé, il est possible de lancer le Daemon via /etc/init.d/vsftpd start
Et de le programmer au démarrage de votre machine via rc-update add vsftpd default.

Configuration


La configuration de vsftpd passe essentiellement par la modification des paramètres présents dans le fichier /etc/vsftpd/vsftpd.conf (un fichier vsftpd.conf.sample est fourni en exemple dans le même répertoire).

Configuration de l’utilisation de ssl


Pour configurer l’utilisation de ssl, il faut générer un certificat ssl comme suit :
/etc/ssl/certs/openssl req -x509 -nodes -days 7300 -newkey rsa:2048 \
  -keyout /etc/ssl/certs/vsftpd.pem -out /etc/ssl/certs/vsftpd.pem

Il faut suivre attentivement les étapes de génération de certificat en fournissant les informations nécessaires.
Il faut ensuite reprendre la configuration du fichier /etc/vsftpd/vsftpd.conf en y intégrant les paramètres suivants :
#Activation de ssl
ssl_enable=YES

#Choisir d’activer ou non l’accès en anonyme via ssl
# allow_anon_ssl=NO

#Ce paramètre doit être activé pour faire fonctionner ssl
ssl_tlsv1=YES

#Paramètres facultatifs
force_local_logins_ssl=YES
ssl_sslv2=YES
ssl_sslv3=YES

#Donner le chemin vers les fichiers *.pem générésrsa_cert_file=/etc/ssl/certs/vsftpd.pem
#les fichiers *.pem contiennent les clés ainsi que les certificatsrsa_private_key_file=/etc/ssl/certs/vsftpd.pem

Gestion des utilisateurs virtuels avec authentification PAM


Il faut :
  • Créer au niveau /etc/vsftpd/ un fichier texte utilisateurs.txt contenant la liste des utilisateurs à créer avec leurs mots de passe ayant la structure suivante :

Utilisateur1
Mot de passe1
Utilisateur2
Mot de passe2
…
UtilisateurX
Mot de passeX

A noter qu’il faut finir le fichier avec un retour à la ligne.
  • Générer la base de données des utilisateurs à partir de ce fichier

DbX.Y_load -T -t hash -f /etc/vsftpd/utilisateurs.txt /etc/vsftpd/utilisateurs.db

A noter qu’il faut installer la bibliothèque dbX-util via la commande
emerge db
ou X.Y est la version.
  • il faut ensuite protéger la base de données

chmod 600 /etc/vsftpd/utilisateurs.db
  • Ajouter au fichier /etc/pam.d/vsftpd (à créer s’il n’existe pas) les deux lignes

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/utilisateurs
account required /lib/security/pam_userdb.so db=/etc/vsftpd/utilisateurs

A noter qu’il faut installer si ce n’est déjà fait la bibliothèque pam_userdb via la commande
emerge pam_userdb
.
Pour identifier les utilisateurs en utilisant le fichier /etc/passwd et avec la base de données PAM, il faut injecter les lignes suivantes :
auth sufficient pam_unix.so
account sufficient pam_unix.so
  • Editer le fichier vsftpd.conf pour y ajouter les paramètres :

local_enable=YES
chroot_local_user=YES
guest_enable=YES
guest_username=ftpuser

A noter que les utilisateurs virtuels ont les mêmes privilèges que les utilisateurs anonymes. Pour qu'ils aient accès en écriture au dossier partagé, en plus de l'option
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
Jean-François Pillou

Cet article est régulièrement mis à jour par des experts sous la direction de Jean-François Pillou, fondateur de CommentCaMarche et directeur délégué au développement numérique du groupe Figaro.

En savoir plus sur l'équipe CCM

Ajouter un commentaire

Commentaires

Commenter la réponse de Utilisateur anonyme