Serveur ftp proftpd avec utilisateurs virtuels sous linux debian ubuntu

18/05/2010 - 22370 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


encrypted.pngProtéger un dossier web apache2 par login et mot de passe avec un htaccess et un htpasswd sous debian lenny
Ce tutoriel vous présente comment protéger un répertoire web apache2 par login et mot de passe avec un htaccess et un htpasswd sous debian lenny
ark.pngVérification automatique des mises à jour Linux Debian avec cron-apt
Ce tutoriel vous présente comment savoir simplement quand votre serveur Linux Debian nécessite l'installation de nouvelles mises à jour avec cron-apt.
mycomputer.pngInstaller le serveur FTP Proftpd et stocker les utilisateurs dans une base de données MySQL sous Linux Debian Squeeze avec mots de passe encryptés en MD5
Ce tutoriel vous présente comment installer le serveur FTP Proftpd lié à MySQL sous Linux Debian Squeeze ainsi que la gestion de vos utilisateurs dans une table MySQL avec encryption des mots de passe en MD5
ark.pngGestion de paquets sous debian etch et sarge et sous ubuntu
Cet article vous présente les commandes de gestion de paquets debian
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
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
terminal.pngVider la mémoire cache d'un serveur Linux Debian
Ce tutoriel vous présente comment récupérer la mémoire cache alouée mais non utilisée par le système afin de la rendre disponible aux processus qui en ont besoin.
mycomputer.pngMise à jour de votre distribution Linux Debian 5.0 Lenny à Linux Debian 6.0 Squeeze
Ce tutoriel vous indique comment mettre à jour votre distribution Linux Debian 5.0 Lenny à Linux Debian 6.0 Squeeze
database.pngInstallation MySQL 5 sous Debian Sarge avec les paquets backports.org
Tutoriel d'installation de MySQL 5 sous Debian Sarge à partir des paquets backports.org