VSFTPD VIRTUAL USERS


Cette méthode permet de créer des utilisateurs ftp sans être obligé de créer des utilisateurs système.

Pré-requis :

Pour cela, il vous faut ces deux packages : Vsftpd et db4-utils.

Paramétrage de vsftpd :

Le serveur vsftpd est paramétré dans le fichier /etc/vsftpd/vsftpd.conf dont voici un exemple pour mon cas :

# Interdire les connexions anonymes au serveur
anonymous_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO

# Autoriser les utilisateurs locaux (obligatoire même si on ne veut que des utilisateurs virtuels)
local_enable=YES

# Autoriser les utilisateurs virtuels
guest_enable=YES
guest_username=userftp11

# Activer les droits spécifiques par utilisateur
user_config_dir=/etc/vsftpd/vsftpd_user_conf

# activation de logs
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.xfer.log
xferlog_std_format=YES
log_ftp_protocol=YES
vsftpd_log_file=/var/log/vsftpd.log

# Configuration du serveur en standalone
listen=YES
tcp_wrappers=YES
connect_from_port_20=YES
ftpd_banner= »Bienvenue sur le serveur FTP »

# Configuration de l’authentification
pam_service_name=vsftpd
userlist_enable=YES

 

Configuration des droits propres à chaque utilisateur

Pour chaque utilisateur, il faut créer un fichier portant le nom de l’utilisateur dans le répertoire défini par la directive user_config_dir.

Mon fichier /etc/vsftpd/vsftpd_user_conf/lecteur

anon_world_readable_only=NO
local_root=/var/ftp/

Mon fichier /etc/vsftpd/vsftpd_user_conf/crontibuteur

anon_world_readable_only=NO
local_root=/var/ftp2/

Configuration de l’authentification PAM

Créer le fichier /etc/pam.d/vsftpd suivant :

auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/login
account required /lib64/security/pam_userdb.so db=/etc/vsftpd/login

Ainsi, PAM va donc interroger la base BDB /etc/vsftpd/login.db pour authentifier les utilisateurs.

Créer la base BDB des utilisateurs

Créer un fichier nommé login.txt dans ce format.

nom d’utilisateur1
mot de passe1
nom d’utilisateur2
mot de passe2

Une fois le fichier .txt créé, il faut créer la base de donnée de pam.d. Pour cela, il faut taper cette commande :

db4_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db

db4_load peut être sur certaine distribution sous cette forme : dbXX_load avec XX etant la version de db.

Vous pouvez maintenant essayer de vous connecter.

Divers

Si vous voulez quand même vous connecter avec les comptes systeme, vous devez ajouter ces lignes avant celle existante dans le fichier /etc/pam.d/vsftpd :

auth sufficient pam_unix.so
account sufficient pam_unix.so

Si le compte root n’a pas le droit de se connecter, c’est qu’il apparaît dans ces deux fichiers :

  • /etc/vsftpd/ftpusers
  • /etc/vsftpd/user_list

19 Responses to "VSFTPD VIRTUAL USERS"

  • amateur_will says:
  • admin says:
  • amateur_will says:
  • amateur_will says:
  • amateur_will says:
  • olivier says:
  • amateur_will says:
  • amateur_will says:
  • amateur_will says:
  • olivier says:
  • amateur_will says:
  • amateur_will says:
  • olivier says:
  • amateur_will says:
  • olivier says:
  • amateur_will says:
  • amateur_will says:
  • amateur_will says:
  • olivier says:
Leave a Comment

Notifiez-moi des commentaires à venir via email. Vous pouvez aussi vous abonner sans commenter.