Serveur ftp proftpd avec utilisateurs virtuels sous linux debian ubuntu

18/05/2010 - 24968 consultations - 2 commentaires


Ce tutoriel vous présente comment installer le serveur ftp proftpd à partir des paquets debian. Pour éviter de créer autant d'utilisateurs Linux que de compte FTP il est possible de créer des utilisateurs virtuels seulement disponibles pour le serveur FTP

Nous allons commencer par installer ProFTPd :
apt-get install proftpd

Nous allons créer les utilisateurs virtuels du serveur FTP grâce à la commande ftpasswd.
Cette commande stocke la liste des utilisateurs dans le fichier : /etc/fptd.passwd,
La syntaxe de ce fichier étant assez proche de celle du fichier des utilisateurs : /etc/passwd.

Voici donc un exemple de commande :
ftpasswd --passwd --name=<login> --uid=<user_id> --gid=<group_id> --home=<ftp_root_path> --shell=/bin/false

Comme par exemple l'utilisateur totoleharicot ayant pour dossier /home/totoleharicot :
cd /etc
ftpasswd --passwd --name=totoleharicot --uid=106 --gid=33 --home=/home/totoleharicot --shell=/bin/false

On peut voir que l'utilisateur n'a pas d'accès shell (/bin/false), si celui-ci n'est pas présent dans la liste des shells disponibles,
ajoutez le au fichier: /etc/shells
nano /etc/shells
Ajouter en fin de fichier la ligne suivante si elle n'est pas déjà présente:
/bin/false

Si on est curieux on regarde ce qu'il y a dans le fichier /etc/ftpd.passwd:
cat /etc/ftpd.passwd
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

Enfin il reste à indiquer à ProFTPd d'utiliser les "utilisateurs virtuels" en modifiant le fichier de configuration /etc/proftpd/proftpd.conf :
nano /etc/proftpd/proftpd.conf
Ajouter la ligne suivante:
AuthUserFile    /etc/ftpd.passwd

Enfin pour plus de sécurité, il vous est possible de bloquer vos utilisateurs dans leur dossier racine (leur évitant de lister les fichiers en dehors de leur dossier) en ajoutant la ligne suivante dans le fichier de configuration /ect/proftpd.conf :
DefaultRoot ~
... comme indiqué dans la doc ...
# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
#DefaultRoot ~

Enfin on sauvegarde le fichier et on redémarre ProFTPd pour prendre en compte les nouveaux paramètres :
/etc/init.d/proftpd restart

Commentaires (2)

Pat - 20/09/2012 à 02h23
Bonjour.. j'espère que vous êtes encore dispo...

j'ai fait tout ça mais quand je redémarre le serveur, il met uknow user "useurrrr" et quand je décommente la ligne User useurrrr lors de la connection rien ne passe erreur 530 : login incorrect avec FileZilla...
une idée?

D'avance merci...
Pat

Nicolo - 28/09/2012 à 14h57
Salut, toujours dispo avec du retard ;)

Va faire un tour dans les logs /var/log/proftpd (en vérifiant qu'ils sont bien activés) en général c'est assez parlant

Commentez cet article

Nom (obligatoire)
E-mail (obligatoire)
Site Internet (facultatif)
code anti-spam

Me tenir inform� des nouveaux messages


ark.pngGestion de paquets sous debian etch et sarge et sous ubuntu
Cet article vous présente les commandes de gestion de paquets debian
ark.pngInstallation d'un système de sauvegarde avec rsync
Ce tutoriel vous présente l'installation d'un système de sauvegarde pour par exemple un site web à l'aide de l'outils rsync
database.pngTutoriel de sauvegarde automatisées de bases de données MySQL, compression en tar.gz et envoi par FTP sous Linux Debian
Ce tutoriel vous présente comment automatiser la sauvegarde de base de données MySQL en compressant les sauvegardes et en les plaçant sur un FTP distant.
mycomputer.pngInstallation debian Sarge avec VMWare sous Ubuntu
Ce tutoriel vous présente comment installer debian Sarge dans une image virtuelle avec VMWare Player sous Ubuntu Linux
cdcopy.pngMettre à jour debian etch 4.0 vers debian lenny 5.0
Ce mini tutoriel vous explique comment mettre à jour votre distribution stable debian de etch 4.0 à lenny 5.0
terminal.pngInstallation d'Apache 2.0 et PHP 5.1
Tutoriel d'installation d'Apache 2.0 et PHP 5.1 sous Debian Sarge à partir des paquets backports.org
cal.pngCorriger l'erreur mysql Table './bacula/File' is marked as crashed and should be repaired avec myisamchk sous linux debian
Ce tutoriel vous présente comment réparer une table mysql crashée au format myisam avec l'utilitaire myisamchk
kcmdevices.pngInstaller et formater un disque dur externe usb sous Linux Debian Etch
Ce tutoriel vous présente comment installer votre dique usb sous Linux debian de l'installation en passant par le formatage jusqu'au montage dans votre système de fichier
mail_generic.pngProblème à l'installation d'Exim4 : Could not perform immediate configuration on 'exim4-daemon-light'. sous Linux Debian
Il peut arriver que vous rencontriez un problème lors de l'installation d'Exim4, une erreur du style : Could not perform immediate configuration on 'exim4-daemon-light'.