web-dev-qa-db-fra.com

FTPS versus SFTP versus SCP

Je voudrais savoir exactement quelle est la différence entre les protocoles suivants: FTPS, SFTP et SCP. Par exemple, Unix a un outil scp, FileZilla offre FTP et SFTP, tandis que JetBrains PhpStorm propose des protocoles distincts SFTP et FTPS.

Merci pour la clarification.

43
John Sonderson

FTPS est FTP utilisant le protocole SSL/TLS pour le cryptage. Cela diffère de la famille de protocoles SCP/SFTP qui utilise SSH comme tunnel de transport.

Vous utiliserez généralement des programmes clients tels que WinSCP pour SCP et SFTP (SFTP est une version mise à niveau de SCP), alors que vous utiliseriez généralement un navigateur Web ou Web Download manager (comme Filezilla ) pour FTPS.

FTPS est basé sur le Web, utilisant une syntaxe de commande textuelle et une sémantique, alors que SFTP est basé sur les protocoles sécurisés Shell communs sur les systèmes * NIX.

Cet article décrit bien les différences: http://www.codeguru.com/csharp/.net/net_general/internet/article.php/c14329/FTPS-vs-SFTP-What-to -Choose.htm


Edit: Pour exposer à la demande:

FTP est un protocole Internet qui remonte à 1971 (avec un certain nombre de mises à jour au fil des ans). Il est principalement axé sur la distribution de contenu et, dans le cas de FTPS, utilise SSL pour assurer une protection contre les écoutes illicites et les modifications illicites. L'authentification FTP nécessite SSL pour protéger les informations d'identification en transit.

La plupart des navigateurs nécessitent l'utilisation d'un plugin externe pour utiliser FTPS, en partie parce que ce n'est plus un protocole couramment utilisé. Quand il était populaire, les navigateurs Web étaient presque exclusivement HTTP, et tout le monde utilisait un client FTP distinct. Au moment où FTP/FTPS semblait le plus logique, HTTP n’était pas capable de gérer correctement les téléchargements de fichiers. Ce n’est qu’à la publication de HTTP\1.1 en 1997 (et à sa mise à jour en 1999) que HTTP a pu gérer correctement les flux binaires.

Il est à noter que HTTP et FTP utilisent presque identique sémantique et syntaxe, et même utiliser les mêmes codes de retour bien connus (200, 301, 403, 404, 500, etc.). FTP est un peu plus ancien (HTTP était normalisé en 1989 après la domination de TCP\IP). Les similitudes importantes entre les deux protocoles indiquent une lignée partagée, ou au moins un ensemble de conventions partagées. Je pense que c’est une raison plus que suffisante d’appeler FTP "Web-Based", aux côtés d’autres protocoles de couche applicative tels que HTTP, SMTP , et DNS (même si le DNS utilise une présentation binaire, pas un texte comme HTTP/FTP/SMTP).

La famille SSH est un ensemble de protocoles axés sur l'administration de serveur et l'accès à distance à la capacité de traitement des serveurs, plutôt que sur la simple distribution de contenu. Il permet aux utilisateurs privilégiés d'un système de se connecter à un shell pour effectuer des travaux sur le serveur lui-même. SCP et SFTP ont été développés pour prendre en charge les nombreuses tâches de gestion de fichiers liées à ce travail. Imaginez que vous deviez installer une mise à jour de votre instance Apache sur un serveur distant. ssh in, utilisez scp\sftp pour télécharger le package de mise à jour, puis exécutez-le pour l'installer. Un flux de travail très différent de celui que vous pouvez obtenir avec FTPS.

J'espère que cela aide à clarifier.

44
Frank Thomas

SCP est l'outil de transfert de fichiers de SSH. Il nécessite SSH sur le client et le serveur. Ce n'est pas interactif.

SFTP est un autre outil de transfert de fichiers qui peut être utilisé avec SSH (il peut donc à nouveau avoir besoin de SSH sur le client et le serveur) ou avec tout autre outil de connexion sécurisée compatible, car il est conçu pour être indépendant de SSH. C'est interactif comme l'ancien FTP simple. Notez que ce n'est pas FTP sur SSH, mais un nouveau protocole.

FTPS est tout simplement un vieux FTP sur SSL.

18
Envite

SCP étant un outil ssh, il permet des opérations de copie/déplacement côté serveur, tandis que sftp nécessite la circulation du trafic via le client pour de telles tâches. D'autre part, les opérations sftp pourraient être suspendues et reprises.

1
imic