Dans le contexte de Secure Shell (SSH), SFTP décrit ces deux choses-ci : - un protocole de communication fonctionnant au-dessus de SSH pour transférer et gérer des fichiers à distance - un programme en ligne de commande qui implémente la partie cliente de ce protocole de communication, comme celui fourni par OpenSSH
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.
Le programme sftp apporte une interface similaire au programme ftp. Le protocole SFTP n'est pas FTP au-dessus de SSL, c'est un protocole conçu intégralement par le groupe de travail IETF SECSH. Certaines implémentations du programme scp utilisent en fait le protocole SFTP à la place du protocole scp.
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.
apt-get update && apt-get install openssh-client
sftp nom_utilisateur_distant@hôte_distant
Exemple
sftp jojo@192.168.200
get /répertoires_distants/fichier /répertoires_locaux/
get -r /répertoires_distants/dossier /répertoires_locaux/
put /répertoires_locaux/fichier /répertoires_distants/
Il faut au préalable créer le répertoire distant pour l'utiliser :
mkdir /répertoires_distants/$dossier
put -r /répertoires_locaux/$dossier /répertoires_distants/