SFTP et FTPS chiffrent tous deux vos transferts FTP. Tous deux ont un « S » dans leur nom. On les confond souvent — et cette confusion a des conséquences concrètes, car ce sont des technologies entièrement différentes qui fonctionnent de manières radicalement différentes.
Choisir le mauvais protocole lors de la configuration d'une connexion se solde par un échec de connexion. Choisir le bon nécessite de comprendre ce que chacun est vraiment. Voici l'explication claire.
FTP : le point de départ
Avant d'aborder les variantes sécurisées, il est utile de comprendre le FTP de base. Le File Transfer Protocol a été conçu au début des années 1970 — bien avant qu'Internet ressemble à ce qu'il est aujourd'hui. Il ne propose aucun chiffrement. Les identifiants (nom d'utilisateur et mot de passe) transitent en clair sur le réseau. Le contenu des fichiers aussi.
Le FTP est encore largement utilisé sur les réseaux internes où le trafic ne quitte jamais un environnement de confiance, sur les hébergements anciens, ou dans des situations contrôlées où le chiffrement n'est pas une préoccupation. C'est simple, ça fonctionne, et pratiquement tous les serveurs le supportent. Mais sur l'Internet public, envoyer des identifiants en clair est quelque chose à éviter absolument.
C'est là qu'entrent en jeu les deux variantes sécurisées — et que la confusion commence.
SFTP (SSH File Transfer Protocol)
Malgré son nom, le SFTP n'est pas du FTP auquel on aurait ajouté de la sécurité. C'est un protocole entièrement différent, développé indépendamment dans le cadre de la suite de protocoles SSH (Secure Shell).
Le SFTP fonctionne via SSH sur le port 22. Tout — l'authentification, les commandes, le contenu des fichiers — est chiffré par la couche SSH. Un client SFTP et un client FTP standard parlent des protocoles fondamentalement différents, même si le résultat final (transférer des fichiers) paraît identique à l'utilisateur.
Caractéristiques clés du SFTP :
- Fonctionne via SSH. Si un serveur a SSH activé, il dispose presque certainement de SFTP — sans configuration supplémentaire.
- Port unique (22). Toute la communication passe par un seul port, ce qui simplifie la configuration du pare-feu.
- Authentification par clé. Au lieu d'un mot de passe, vous pouvez vous authentifier avec une paire de clés SSH. La clé privée ne quitte jamais votre machine ; le serveur ne conserve que la clé publique. C'est bien plus sécurisé que l'authentification par mot de passe.
- Chiffrement de bout en bout. Les identifiants et le contenu des fichiers sont toujours chiffrés, quel que soit le réseau utilisé.
- Aucun certificat TLS requis. L'authentification est gérée par SSH — sans autorité de certification, sans renouvellement de certificat.
FTPS (FTP sur TLS)
Le FTPS, c'est du FTP classique avec du chiffrement TLS ajouté par-dessus. C'est une approche différente : prendre le protocole FTP existant et envelopper la connexion dans TLS, la même couche de chiffrement qu'HTTPS.
Il existe deux modes de FTPS :
FTPS explicite (FTPES)
Le client se connecte au serveur sur le port 21 (le port FTP standard) et envoie immédiatement une commande AUTH TLS pour passer la connexion en chiffré. Le serveur doit supporter cette commande. Ce mode est dit « explicite » car le client demande explicitement la mise à niveau TLS.
FTPS implicite
Le client se connecte sur le port 990 et la négociation TLS s'effectue immédiatement — avant toute communication FTP. Il n'y a pas de phase non chiffrée. Ce mode est moins courant mais encore utilisé sur certains serveurs.
Caractéristiques clés du FTPS :
- Basé sur FTP. Même jeu de commandes, mêmes considérations de mode passif/actif, même comportement multi-ports pour les transferts de données.
- Nécessite un certificat TLS. Le serveur a besoin d'un certificat SSL/TLS valide, à renouveler périodiquement.
- Complexité avec les pare-feux. En mode passif, le FTP ouvre une plage de ports dynamiques pour les données. Les pare-feux doivent comprendre le FTP pour inspecter ces connexions correctement. Avec le chiffrement TLS, le pare-feu ne peut plus inspecter le trafic FTP, ce qui peut compliquer le mode passif.
- Authentification par mot de passe uniquement. Le FTPS ne supporte pas l'authentification par clé — vous vous connectez avec un nom d'utilisateur et un mot de passe (chiffrés par TLS, cela dit).
- Haute compatibilité. De nombreux environnements d'entreprise et d'hébergement proposent le FTPS car c'est une voie de mise à niveau directe depuis une installation FTP existante.
Comparaison côte à côte
| Caractéristique | FTP | SFTP | FTPS |
|---|---|---|---|
| Basé sur | FTP | SSH | FTP + TLS |
| Port par défaut | 21 | 22 | 21 (explicite) / 990 (implicite) |
| Chiffrement | Aucun | Toujours (SSH) | Oui (TLS) |
| Auth. par clé | Non | Oui | Non |
| Certificat requis | Non | Non | Oui |
| Compatible pare-feu | Complexe | Simple (1 port) | Complexe |
| Disponibilité serveur | Universelle | Tout serveur SSH | Configuration requise |
Lequel choisir ?
Utilisez SFTP si vous contrôlez le serveur (ou s'il s'agit d'un serveur Linux/Unix avec SSH), si la sécurité est une priorité, et si vous souhaitez une configuration de pare-feu simple. Le SFTP est la norme moderne. En l'absence de raison particulière d'utiliser autre chose, c'est le choix par défaut le plus judicieux.
Utilisez FTPS si votre hébergeur ou le serveur d'un client l'exige, ou si vous ajoutez du chiffrement à une installation FTP existante sans pouvoir changer l'infrastructure. De nombreux environnements d'entreprise qui exploitent des serveurs FTP depuis des années choisissent le FTPS comme voie de mise à niveau car il nécessite moins de changements.
Utilisez le FTP simple si vous êtes sur un réseau interne de confiance où le chiffrement n'est pas nécessaire, ou si vous interagissez avec un système ancien qui ne supporte aucune des variantes sécurisées. Évitez-le absolument pour tout ce qui transite par l'Internet public.
FTPSuite supporte les trois protocoles
FTPull (pour les téléchargements automatiques) et FTPush (pour les envois automatiques) gèrent nativement FTP, SFTP et FTPS. Sélectionner le protocole dans les paramètres de connexion se fait en un clic — l'application gère automatiquement les différences sous-jacentes. Vous saisissez l'hôte, le port, les identifiants et le protocole ; le reste est pris en charge.
Si vous n'êtes pas sûr du protocole utilisé par votre serveur, consultez notre guide : FTP, SFTP et FTPS : quel protocole utilise votre serveur ?