Documentation technique — Serveur FTP

Qu'est-ce que le FTP ?

Le FTP (File Transfer Protocol) est un protocole réseau qui permet de transférer des fichiers entre un client et un serveur via internet ou un réseau local. Il a été défini dans la RFC 959.

Il fonctionne selon un modèle client-serveur : le client se connecte au serveur pour envoyer ou récupérer des fichiers.

Logo Serveur FTP

Les deux canaux de communication

Canal de contrôle (port 21)

Ce canal reste ouvert pendant toute la session. Le client y envoie des commandes comme USER, PASS, LIST, RETR… et le serveur répond avec des codes numériques (ex : 230 = connexion réussie).

Canal de données (port 20)

Ce canal s'ouvre uniquement pendant le transfert d'un fichier ou d'un listage de répertoire, puis se referme automatiquement.

Mode actif et mode passif

Mode actif

Le client ouvre un port et le communique au serveur via la commande PORT. C'est le serveur qui initie la connexion de données vers le client. Ce mode pose des problèmes avec les pare-feux côté client.

Mode passif

Le client envoie la commande PASV. Le serveur ouvre un port et le communique au client, qui initie alors la connexion de données. Ce mode est recommandé car il est compatible avec la plupart des pare-feux.

Installer vsftpd sur Linux

vsftpd est le serveur FTP le plus courant sous Linux. Voici les commandes pour l'installer sur Ubuntu ou Debian :

sudo apt update
sudo apt install vsftpd
sudo systemctl start vsftpd
sudo systemctl enable vsftpd
        

Pour en savoir plus, consultez la documentation officielle : security.appspot.com/vsftpd

Poser une question sur le FTP

Une question sur le protocole FTP ? Remplissez ce formulaire et vous recevrez une réponse.