Création d'un serveur FTP

Installation

Le FTP (File Transfer Protocol) est un protocole de communication dédié à l'échange informatique de fichiers sur un réseau TCP/IP. Il permet, depuis un ordinateur, de copier des fichiers vers un autre ordinateur du réseau.

Nous allons voir ici comment mettre en place un serveur FTP sur une machine virtuelle de Gandi.

La première étape consiste à installer le logiciel ProFTP sur le serveur.

apt-get install proftpd

Il est préférable de valider l'installation en standalone, ainsi le serveur FTP sera toujours à l'écoute. Dans le cas du choix inetd, le serveur FTP ne se lance qu'au moment où une connexion est initialisée.

Paramétrage

A l'aide d'un éditeur de texte type nano, éditez le fichier shells qui se trouve dans /etc/ et rajouter la ligne /bin/false

Note :

Nano vous permettra d'éditer vos documents de type texte (comme vi mais en plus intuitif). L'installation se fait avec la commande apt-get install nano

Pour notre exemple, nous allons créer les dossiers ftp, et les sous-domaines upload et download, avec les droits en lecture seule pour download et lecture/écriture pour upload, afin que les utilisateurs puissent y déposer des fichiers.

cd /home/ftp/
mkdir download upload
cd /home
sudo chmod 755 ftp
cd ftp
chmod 755 download
chmod 777 upload

Voilà la création des dossiers et des droits terminée, passons à la création du compte "gandi" qui aura accès au FTP.

useradd gandi -d /home/ftp -s /bin/false -m
passwd gandi

Il ne vous reste plus qu'à éditer le fichier /etc/proftpd/proftpd.conf avec nano pour modifier la configuration de votre serveur (adresse du port, nom du serveur, nombre de personnes qui peuvent s'y connecter…)

En particulier, pour que chaque nouvel utilisateur Unix ait directement accès à son dossier /home/nom_utilisateur, il faut décommenter la ligne #DefaultRoot ~ du fichier de configuration. Dès lors, cet utilisateur ne pourra pas circuler librement dans l'arborscence, et sera limité à son /home/~

Le lancement du serveur se fait avec la commande suivante :

sudo /etc/init.d/proftpd start

Pour le stopper, remplacez start par stop, et pour le redémarrer utilisez restart.