Question Quelle est la différence entre SCP et SFTP?


Habituellement, j'utilise le scp commande pour transférer des fichiers sur * nixes.

Quelle est la différence entre SFTP et SCP? Ne travaillent-ils pas tous les deux sur SSH?


143
2018-04-26 17:36


origine




Réponses:


En résumé, SCP ne peut être utilisé que pour transférer des fichiers, et il est non interactif (c’est-à-dire que tout doit être spécifié sur la ligne de commande). SFTP est plus élaboré et permet aux commandes interactives de créer des répertoires, de supprimer des répertoires et des fichiers (tous étant soumis aux autorisations du système, bien sûr), etc.


89
2018-04-26 18:10



En ce qui concerne l'interactivité: La différence que vous décrivez concerne des clients SFTP / SCP spécifiques tels qu'ils sont implémentés dans OpenSSH. Cela ne concerne pas les protocoles eux-mêmes. Il est parfaitement possible d'implémenter un client SCP interactif ou un client SFTP non interactif. - Martin Prikryl
Encore une chose: scp ne fonctionne pas si le serveur autorise uniquement l'accès SFTP via la ligne ForceCommand internal-sftp. je pense PermitTTY no empêche également l'accès scp mais autorise l'accès sftp, bien que j'aurais pu simplement taper mon mot de passe à chaque fois que j'ai essayé. Mais ces deux choses ne doivent pas empêcher le sftp. Source: expérience personnelle. - ecube
Puis-je supposer qu'un serveur SFTP est également capable d'accepter les transferts SCP? - gus
@gus non, voir le commentaire de ecube - Pere


De Wikipédia:

Par rapport au protocole SCP antérieur,   qui permet uniquement les transferts de fichiers, le   Le protocole SFTP permet une gamme de   opérations sur des fichiers distants - c'est   plus comme un système de fichiers distant   protocole. Un client SFTP supplémentaire   capacités par rapport à un client SCP   inclure la reprise interrompue   transferts, listes de répertoires et   suppression de fichier à distance [1] Pour ces   raisons pour lesquelles il est relativement simple de   implémenter un client SFI graphique comparé   avec un client SCP GUI.

et

Bien que SCP et SFTP utilisent tous les deux   même chiffrement SSH pendant le fichier   transfert avec le même niveau général   des frais généraux, SCP est généralement beaucoup   plus rapide que le SFTP lors du transfert   fichiers, en particulier sur la haute latence   réseaux. Cela se produit parce que SCP   met en œuvre un transfert plus efficace   algorithme, un qui ne nécessite pas   en attente de confirmations de paquets. Ce   conduit à une vitesse plus rapide mais vient à la   frais de ne pas pouvoir interrompre   un transfert si différent de SFTP, SCP   le transfert ne peut pas être annulé sans   terminer la session.


97
2018-04-26 19:36



"SCP est généralement beaucoup plus rapide que SFTP lors du transfert de fichiers." - Micah Bolen
"Mais au prix de ne pas pouvoir interrompre un transfert". C'est un compromis assez important. - aaaaaa


Du point de vue de la ligne de commande:

  • scp ne possède pas de mode interactif et ne peut pas lire les scripts de commandes, ce qui signifie que tout doit être écrit sur la ligne de commande.
  • sftp a un mode interactif et peut lire les commandes d'un fichier.

Une autre différence importante entre les 2 commandes est que sftp ne peut pas mettre un fichier local à un emplacement distant en utilisant une seule ligne de commande


6
2018-01-20 11:04





SSH (Secure SHell) est un protocole de réseau cryptographique permettant aux connexions distantes et aux autres services réseau de fonctionner en toute sécurité sur un réseau non sécurisé.

Différences: SFTP fonctionne en mode interactif (session) et SCP fonctionne en mode non interactif. En utilisant SFTP, nous pouvons accéder à un système de fichiers distant, c'est-à-dire créer, supprimer et répertorier des fichiers.

Similitudes: Les deux SCP (Secure Copy Protocol) et SFTP (SSH File Tle transfert Protocol) sont des protocoles réseau, qui prennent en charge la gestion des fichiers entre les hôtes d’un réseau. Les deux utilisent SSH.

plus


1
2018-05-25 03:52





La plupart des différences entre les deux protocoles ont déjà été mentionnées dans d’autres réponses, et plus verbalement dans https://unix.stackexchange.com/q/8707/19088

Une autre différence, selon le documentation de curl, est que le protocole SCP n'est pas très portable et ne fonctionne généralement qu'entre systèmes Unix.

Au fait, boucle implémente les deux protocoles et contrairement à l'implémentation client OpenSSH SFTP par défaut, il est non interactif pour les deux SFTP et SCP.

Et notez qu'il y a aussi le POISSON protocole, qui vous permet de transférer des fichiers via SSH sans avoir besoin de SCP ou SFTP. Pour autant que je sache, FISH n'est pas très populaire, actuellement mis en œuvre dans quelques gestionnaires de fichiers (Commandant de minuit et certains sont basés sur KDE) et Lftp.


0
2017-08-13 19:46



"Une autre différence, selon la documentation de curl, est que le protocole SCP n'est pas très portable et ne fonctionne généralement qu'entre systèmes Unix." L'ironie de cette partie de votre réponse est que l'interface utilisateur SCP la plus populaire s'appelle WinSCP, et - vous l'avez deviné - c'est un programme Windows. - brett
@brett le client le plus populaire est probablement le scp d'OpenSSH, je dirais qu'il est très déployé. WinSCP est un client SCP / SFTP / etc mais il est aujourd'hui principalement utilisé en tant que client (s) FTP: "En juin 2003, la version 3.0 était disponible, introduisant la prise en charge de l'alternative à SCP, le protocole SFTP. au protocole principal. Malgré cela, le nom bien établi "WinSCP" a été préservé. " (from History of WinSCP: winscp.net/eng/docs/project_history) - Pere