Article de reference

Protocole de copie sécurisée

Le protocole Secure Copy Protocol ( SCP ) est un moyen de transférer de manière sécurisée des fichiers informatiques entre un hôte local et un hôte distant ou entre deux hôtes d...

Le protocole Secure Copy Protocol ( SCP ) est un moyen de transférer de manière sécurisée des fichiers informatiques entre un hôte local et un hôte distant ou entre deux hôtes distants. Il est basé sur le protocole Secure Shell (SSH). « SCP » fait généralement référence à la fois au protocole Secure Copy Protocol et au programme lui-même.

Selon les développeurs d'OpenSSH en avril 2019, SCP est obsolète, inflexible et difficile à corriger ; ils recommandent l'utilisation de protocoles plus modernes comme SFTP et rsync pour le transfert de fichiers. À partir de la version 9.0 d'OpenSSH, scple client utilise donc SFTP pour les transferts de fichiers par défaut au lieu de l'ancien protocole SCP/RCP.

Protocole de copie sécurisée

Le SCP est un protocole réseau , basé sur le protocole BSD RCP , qui prend en charge les transferts de fichiers entre les hôtes d'un réseau. SCP utilise Secure Shell (SSH) pour le transfert de données et utilise les mêmes mécanismes pour l'authentification, garantissant ainsi l' authenticité et la confidentialité des données en transit . Un client peut envoyer (télécharger) des fichiers à un serveur, en incluant éventuellement leurs attributs de base (autorisations, horodatages). Les clients peuvent également demander des fichiers ou des répertoires à un serveur (téléchargement). SCP s'exécute sur le port TCP 22 par défaut. Comme RCP, il n'existe pas de RFC qui définit les spécificités du protocole.

Fonction

Normalement, un client établit une connexion SSH avec l'hôte distant et demande qu'un processus SCP soit démarré sur le serveur distant. Le processus SCP distant peut fonctionner dans l'un des deux modes suivants :

  • mode source, qui lit les fichiers (généralement à partir du disque) et les renvoie au client, ou
  • mode sink, qui accepte les fichiers envoyés par le client et les écrit (généralement sur le disque) sur l'hôte distant.

Pour la plupart des clients SCP, le mode source est généralement déclenché avec l' -findicateur (from), tandis que le mode sink est déclenché avec -t(to). Ces indicateurs sont utilisés en interne et ne sont pas documentés en dehors du code source SCP.

Mode de télécommande à télécommande

Par le passé, dans une copie sécurisée à distance, le client SCP ouvrait une connexion SSH vers l'hôte source et lui demandait d'ouvrir à son tour une connexion SCP vers la destination. (Le mode à distance ne prenait pas en charge l'ouverture de deux connexions SCP et l'utilisation du client d'origine comme intermédiaire). SCP ne peut pas être utilisé pour copier à distance de la source vers la destination lorsque l'on fonctionne en mode d'authentification par mot de passe ou par clavier interactif, car cela révélerait les informations d'authentification du serveur de destination à la source. Cela est toutefois possible avec des méthodes basées sur des clés ou GSSAPI qui ne nécessitent pas de saisie de l'utilisateur.

Depuis peu, le mode distant vers distant prend en charge le routage du trafic via le client à l'origine du transfert, même s'il s'agit d'un tiers du transfert. De cette façon, les informations d'identification d'autorisation doivent résider uniquement sur le client d'origine, le tiers.

Problèmes liés à l'utilisation de profils shell bavards

SCP n'attend pas de texte communiquant avec le shell de connexion SSH. Le texte transmis en raison du profil SSH (par exemple echo "Welcome"dans le .bashrcfichier) est interprété comme un message d'erreur et une ligne nulle ( echo "") provoque le blocage du client SCP en attendant que le message d'erreur soit terminé.

programme scp

Le programme SCP est un outil logiciel implémentant le protocole SCP en tant que démon de service ou client. Il s'agit d'un programme permettant d'effectuer une copie sécurisée.

Le programme SCP le plus utilisé est peut-être le programme de ligne de commande scp OpenSSH , fourni dans la plupart des implémentations SSH. Le scpprogramme est l'analogue sécurisé de la rcpcommande. Le scpprogramme doit faire partie de tous les serveurs SSH qui souhaitent fournir un service SCP, car il fonctionne également comme serveur SCP. Depuis OpenSSH 9.0, le programme a été mis à jour pour utiliser le protocole SFTPscp plus récent et plus sécurisé ; une option a été ajoutée pour utiliser SCP avec les anciens serveurs SCP uniquement. -O

Syntaxe

En règle générale, la syntaxe d'un scpprogramme est semblable à la syntaxe de cp(copie) :

Copie d'un fichier local sur un hôte distant :

scp LocalSourceFile 
utilisateur @ remotehost : répertoire / TargetFile

Copie du fichier depuis l'hôte distant et copie récursive du dossier (avec -rcommutateur) depuis l'hôte distant :

scp utilisateur @ remotehost : répertoire / SourceFile 
LocalTargetFile scp -r utilisateur @ hôte : répertoire / SourceFolder 
LocalTargetFolder

Notez que si l'hôte distant utilise un port autre que le port par défaut 22, il peut être spécifié dans la commande. Par exemple, pour copier un fichier depuis l'hôte :

scp -P 2222 utilisateur @ hôte : répertoire / fichier source 
fichier cible

Autres clients

Comme le protocole Secure Copy Protocol implémente uniquement les transferts de fichiers, les clients SCP GUI sont rares, car sa mise en œuvre nécessite des fonctionnalités supplémentaires ( au moins la liste des répertoires ). Par exemple, WinSCP utilise par défaut le protocole SFTP. Même lorsqu'ils fonctionnent en mode SCP, les clients comme WinSCP ne sont généralement pas des clients SCP purs, car ils doivent utiliser d'autres moyens pour implémenter la fonctionnalité supplémentaire (comme la lscommande ). Cela entraîne à son tour des problèmes de dépendance à la plate-forme.

Les clients SFTP sont des outils plus complets pour la gestion des fichiers via SSH .

Sécurité

En 2019, la vulnérabilité CVE - 2019-6111 a été annoncée concernant l' outil et le protocole SCP openssh permettant aux utilisateurs d'écraser des fichiers arbitraires dans le répertoire cible du client SCP.

Plus d articles de Worldlex Wiki

Revenez a l index pour explorer davantage de pages sur l histoire, la science, la culture, la geographie et la societe en francais.

Explorer l index