Le serveur FTP

Paramétrer le serveur FTP

Notre serveur tel quel fonctionne mais il est nécéssaire de faire certains paramétrages comme interdire la connection FTP à l'utilisateur root ou encore confiné les utilisateurs dans leurs espaces personnels afin qu'ils ne puissent pas remonter dans l'arborescence des fichiers. Connectons nous à notre serveur pour voir si nous pouvons remonter cette arborescence. Si tel est le cas rentrez la commande suivante:


sudo echo "/bin/false" >> /etc/shells


Ensuite, ouvrons le fichier proftpd.conf Ce fichier est situé dans le chemin suivant:

Sous Debian et ses dérivées:


/etc/proftpd/proftpd.conf


Sous Fedora:


/etc/proftpd.conf


Ce fichier est le fichier de configuration de notre serveur. C'est dedans que l'on pourra modifier le port d'écoute de notre serveur, interdire la connection de root, etc, ... Pour interdire la connection de root et confiner les utilisateurs dans leurs espace FTP, vous devez ajouter les lignes suivantes après l'instruction DefaultRoot ~:


<Global>
RootLogin off
RequireValidShell on
</Global>


Pour que les modificaions soient prises en comptes, redémarrez le serveur:


sudo systemctl restart proftpd


Sous Fedora, il faut autoriser FTP dans SeLinux avec la commande suivante:


sudo setsebool -P ftpd_full_access=1


Pour changer le port d'écoute, cherchez la ligne Port 21 et remplacez 21 par le numéro du port souhaité. Sous Fedora cette ligne n'existe pas car certains ports sont attribué pour le FTP dans SeLinux. Pour connaitre la liste tapez la commande suivante:


sudo semanage port -l


Cherchez la ligne ftpd_port_t C'est la que les ports pour FTP sont renseignés. Vous n'aurez qu'à choisir le port souhaité parmis ceux proposé par SeLinux et ajouter la ligne Port numero au début de votre fichier proftpd.conf en remplçant numero par celui souhaité. Une fois que c'est fait. Toujours pour les utilisateurs de Fedora, il vous faut ajouter le port qu'écoute FTP dans le firewall avec les commandes suivantes:


sudo firewall-cmd --default-zone=public
sudo firewall-cmd --zone=public --add-port=21/tcp --permanent
sudo firewall-cmd --zone=public --add-service=ftp --permanent
sudo firewall-cmd --reload


Si proftpd écoute un autre port que 21 remplacez celui-ci par le numéro du port choisis dans la ligne sudo firewall-cmd --zone=public --add-port=numero/tcp --permanent
Bien évidament il y a d'autres modifications possibles mais nous n'allons pas les évoqués car celles que nous venons de faire sont les principales pour une connection depuis un client FTP.