1. Le protocole FTP
FTP (File Transfer Protocol)
est un protocole client-serveur de transfert de fichiers. Défini par
la RFC 114 de 1971, remplacée par la RFC 959 de 1985, c’est l’un
des protocoles les plus anciens de la famille TCP/IP.
Implémenté par de nombreux
logiciels sur l’ensemble des systèmes d’exploitation, et
particulièrement Linux, il reste très utilisé.
Cependant, il nécessite une configuration attentive côté serveur,
pour assurer une sécurité suffisante.
Les trois principaux logiciels serveurs à connaître
sont Pure-FTPd, vsftpd et, dans une moindre mesure, ProFTPd.
a. Principes de fonctionnement
Le protocole applicatif FTP s’appuie sur TCP
et utilise le port bien connu 21 pour la transmission des commandes
entre le client et le serveur. Les données s’échangent
via une connexion TCP avec le port 20.
FTP peut fonctionner en mode anonyme ou avec
authentification des clients. Dans ce dernier cas, le client doit
fournir un compte utilisateur et un mot de passe valides pour le
système du serveur. Cependant, le protocole FTP utilise des échanges
en clair entre le client et le serveur, ce qui pose un problème
de sécurité concernant le mot de passe.
En mode anonyme, les serveurs FTP associent à toutes
les connexions des clients un compte unique du système,
aux droits limités au strict minimum nécessaire. ...