{{tag>sysadmin netadmin ftp todo}} ====== Serveur FTP : mode actif ou passif ====== Les modes (actif ou passif) désignent les deux **modes de transfert de données** entre le client et le **serveur FTP**. C'est coté client qu'on spécifie quel mode sera utilisé pour les transferts de données entre le client et le serveur via une commande spécifique du protocole FTP. ===== Configuration du mode passif ===== Côté serveur, on peut en général configurer quelle plage de ports le serveur utilisera en mode passif. Ici on souhaite restreindre cette plage aux ports [49300, 49400]. ===== Transfert en mode passif ===== ==== Pare-feu côté client ==== En général le pare-feu du poste client est configuré pour autoriser les connexions initiées par le client lui-même. Dans ce cas, il n'y a pas de configuration spécifique à apporter côté client. Pour les configurations plus restrictives, on peut cependant avoir besoin d'autoriser la plage de ports configurée pour le mode passif sur le serveur (pour l'exemple port 49300 à 49400). Pour cet exemple le serveur FTP à l'adresse IP 192.168.0.50 # Ajout d'une règle à netfilter via UFW autorisant le trafic du client vers le port de commande # du serveur FTP (par défaut 21) sudo ufw allow out log proto tcp from any to 192.168.0.50 port 21 comment 'Allow FTP to 192.168.0.50' # Ajout d'une règle à netfilter via UFW autorisant les ports sudo ufw allow out log proto tcp from any to 192.168.0.50 port 49300:49400 comment 'Allow FTP passive mode to 192.168.0.50' Pour utiliser le mode passif, une fois connecté au serveur FTP, depuis le client, **il faut préciser qu'on utilise le mode passif**: ftp ftp.example.com ftp> passive Passive mode on. ftp> ls 227 Entering Passive Mode 150 Starting data transfer. -r--r--r-- 1 ftp ftp 62286 Mar 31 11:55 file_example.xml . . . 226 Operation successful ===== Références ===== * https://fr.strephonsays.com/active-ftp-and-vs-passive-ftp-1233 * https://www.wistee.fr/serveur-ftp/ftp-actif-passif.html