Serveur ftp proftpd avec utilisateurs virtuels sous linux debian ubuntu

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


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
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
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.
log.pngInstallation d'un systeme de monitoring MRTG (Multi Router Traffic Grapher) sous debian
Ce tutoriel a pour but d'installer l'outil de monitoring MRTG. Cet outil permet de générer des graphiques en fonction de données SNMP, ou de scripts shell.
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
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
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
terminal.pngCommandes de base Debian et Ubuntu
Liste de commandes Linux les plus utilisées et les plus courantes sous Debian et Ubuntu avec les options qui vont biens
terminal.pngCréation d'un virtualhost sous apache2
Ce mini tutoriel vous présente comment créer un virtualhost apache