FTP actif versus FTP passif

Date: 17/04/2008 | Catégories: Open-source,Reseau | Tags: ,,

Je me pose régulièrement la question de la différence entre les deux modes de transfert de fichiers FTP: actif ou passif. Voici donc un billet mémo à destination des petites têtes (dont je fais parti...).

Le mode FTP actif

C'est le mode par défaut des clients FTP. Le client établi dans un premier temps une session TCP sur le port 21 (FTP) du serveur ("control channel"). Une fois la session établie et l'authentification FTP acceptée, c'est le serveur qui établi une session TCP (avec le port source 20, FTP-DATA) vers un port dynamique du client ("data channel").


FTP-actif---Nicolargo.png

Le mode FTP passif

Il faut garder en mémoire que le mode passif est conseillé à partir du moment ou les clients peuvent se trouver derrière un Firewall/NAT. En effet dans ce mode, toutes les initialisions de sessions TCP se font à partir du client.

Comme pour le FTP actif, le client établi une première session TCP sur le port 21 (FTP) du serveur ("control channel"). Une fois la session établie et l'authentification FTP acceptée, on demande au serveur de se mettre en attente de session TCP grâce à la commande PASV. Alors le client peut établir une seconde session TCP sur un port dynamique vers le serveur ("data channel").

Le numéro de port dynamique est transmis du serveur vers le client suite à la commande PASV. On peut réduire la plage de port en configurant le serveur FTP. Par exemple, pour le serveur pro-ftpd:

# vi /usr/local/etc/proftpd.conf
...
PassivePortRange 30000 32000
...


FTP-passif---Nicolargo.png

Pour les fans, vous pouvez consulter la RFC du protocole FTP (en français).

Partager ce billet





WordPress » Erreur

Il y a eu une erreur critique sur ce site.

En apprendre plus sur le débogage de WordPress.