Ceci est une ancienne révision du document !


Mise en place d'un serveur FTP sous linux

Ce tutoriel montre comment configurer simplement un serveur FTP pour transférer des données entre un serveur et un client.

1) Installer le paquet vsftpd qui servira de serveur FTP :

 apt-get install vsftpd 

2) Editer le fichier de configuration du serveur /etc/vsftpd.conf

 nano /etc/vsftpd.conf 

Et y décommenter, modifier, ou ajouter ces lignes :

listen=YES     #Activation du mode standalone (écoute permanente du réseau), à désactiver avec Xinetd.
anonymous_enable=YES     #Autoriser les utilisateurs anonymes
write_enable=YES     #Activer l'écriture sur le FTP
local_enable=YES     #Autoriser les utilisateurs du système à se connecter au serveur
chroot_local_user=YES     #Forcer les utilisateurs du système à utiliser leur propre répertoire personnel (/home/user)
allow_writeable_chroot=YES     #Autoriser les utilisateurs du système à écrire dans leur propre répertoire personnel.
anon_root=/ftp    #Répertoire racine des utilisateurs anonymes (par défaut /srv/ftp si non renseigné)

Les réglages précédents ne sont pas tous obligatoires et il en existe plein d'autres.

3) Redémarrer le service vsftpd pour prendre en compte les modifications :

 service vsftpd restart 

La mise en place du serveur FTP est terminée !

:!: Attention : Lorsque que les utilisateurs du systèmes sont utilisés pour se connecter au serveur, il est parfois recommandé de leur désactiver l'accès au shell afin qu'il ne puissent pas contrôler le serveur via SSH :

 usermod -s /bin/false user 

(Cette commande modifie le shell par défaut de l'utilisateur, ici programme /bin/false n'existe pas, donc l'accès au shell est impossible tant que /bin/bash n'a pas été rétabli)