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


encrypted.pngSauvegarde par ssh avec la commande scp avec clé publique - clé privée
Ce tutoriel présente comment effectuer une copie de fichier entre 2 serveurs en utilisant scp, en passant par des clé publique et clé privée afin de ne pas avoir à saisir de mot de passe
mycomputer.pngOutils intéressants sous Linux
Voici quelques outils intéressants pour vous faciliter la vie sous Linux : nmap, nslookup
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
terminal.pngInstallation de subversion un dépôt de données SVN
Vous trouverez dans cet article l'intégralité de l'installation d'un entrepôt de sources subversion, celà permet de gérer les version en développement de sauvegarder toutes les modifications de vos sources de sites ou programmes
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.pngApt-proxy, serveur proxy de dépot de paquets debian
Apt-proxy permet de centraliser l'accès aux dépots debian en créant un proxy sur lequel toutes les machines de votre lan vont chercher les paquets à installer et mettre à jour
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
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
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