Si vous disposez d'ouvrages ou d'articles de référence ou si vous connaissez des sites web de qualité traitant du thème abordé ici, merci de compléter l'article en donnant les références utiles à sa vérifiabilité et en les liant à la section « Notes et références ».
Dans le contexte de Secure Shell (SSH), SSH File Transfer Protocol (SFTP) est un Internet Draft de l'IETF qui définit des extensions au protocole SSH :
un programme en ligne de commande qui implémente la partie cliente de ce protocole de communication, comme celui fourni par OpenSSH.
Le programme sftp apporte une interface similaire au programme ftp. Le protocole SFTP n'est pas FTP au-dessus de SSL (visitez File Transfer Protocol over SSL), c'est un nouveau protocole conçu intégralement par le groupe de travail IETF SECSH en 2001[1].
Il n'existe pas de RFC décrivant le protocole SFTP, mais seulement un brouillon (draft) qui date de 2006[2].
sftp est souvent associé au protocole (et au programme) SSH-2, parce qu'ils ont été conçus en même temps par le même groupe. Cependant, il est possible de le faire fonctionner sur SSH-1, et certaines implémentations le font.
Comparaison avec SCP
Comparé au précédent protocole scp, le protocole SFTP supporte beaucoup plus d'opérations sur des fichiers à distance. Il se comporte plus comme un protocole de système de fichiers.
Il est censé être plus indépendant de la plate-forme d'utilisation ; par exemple, avec scp, l'extension des wildcards (*) spécifiés par le client sont à la charge du serveur, qui en fait ce qu'il veut, alors que l'architecture de SFTP évite ce genre de problèmes.
Certaines implémentations du programme scp utilisent en fait le protocole SFTP à la place du protocole scp.
Logiciels
Cette section contient une ou plusieurs listes. Le texte gagnerait à être rédigé sous la forme de paragraphes synthétiques. Les listes peuvent demeurer si elles sont introduites par une partie rédigée et sourcée, de façon à bien resituer les différents éléments (septembre 2022).