Supposons que vous souhaitiez transférer des fichiers entre des serveurs sur un système Linux. Il existe de nombreuses façons d’accomplir cette tâche, mais si votre priorité est de transférer des fichiers en toute sécurité, il vous reste quelques options. La solution la plus simple consiste à utiliser la commande scp ou secure copy pour transférer vos fichiers sans vous soucier de la sécurité. Dans cet article, nous expliquerons comment utiliser le transfert de fichiers en toute sécurité à l’aide de la commande scp sur votre système Linux.

Transférer des fichiers avec la commande scp sous Linux (2023)

Qu’est-ce que la commande scp sous Linux

Lorsqu’il s’agit de transférer des fichiers sur un réseau sécurisé, la commande scp peut être très utile. Il signifie protocole de copie sécurisée et transfère des fichiers et des répertoires entre deux systèmes via une connexion SSH (Secure Shell). Avec ssh, vous pouvez être assuré de la sécurité de vos fichiers car ils sont cryptés par défaut. En termes plus simples, la commande scp est une version plus sécurisée de la commande cp, que vous pouvez lire dans notre article sur les commandes Linux Terminal.

Comment utiliser la commande scp : syntaxe et options

Avant de pouvoir transférer des fichiers via scp, voyons la syntaxe et les options de la commande ici :

scp

Publicité

Comprendre la syntaxe:

  • D’abord, spécifie le système ‘source’ à partir duquel vous devez transférer vos fichiers/répertoires.
  • Deuxième, spécifie le système ‘cible’ vers lequel vous voulez transférer vos fichiers/répertoires.

Si vous laissez l’un des paramètres ci-dessus, la commande scp sous Linux recherchera d’abord le fichier, puis le copiera localement. Certaines des options à coupler avec la commande sont :

Choix Destination
-P Spécifie le port à connecter au système hôte. S’il est omis, il utilisera le port 22 par défaut.
-p Préserve les heures de modification, les heures d’accès et les modes du fichier d’origine lorsqu’il est copié sur le système cible.
-r Copie l’intégralité du répertoire sur le système cible de manière récursive.
-J Utilisé pour connecter le système source et le système de destination via un système proxy (hôte de saut).
-3 lorsque cet indicateur est utilisé, il copie les fichiers à la fois sur le système cible et sur le système local
-4 force la commande scp à n’utiliser que des adresses IPv4.
-6 force la commande scp à n’utiliser que des adresses IPv6.

Comment copier des fichiers à l’aide de la commande scp

Avant d’utiliser la commande scp sous Linux, vous devez remplir certaines conditions préalables sur les systèmes hôte et cible :

  • ssh doit être installé
  • accès root ou tout utilisateur avec des privilèges sudo

Copier les fichiers de l’hôte local vers la cible distante

Si vous avez un fichier que vous devez transférer de votre système local vers une cible distante, vous devez utiliser la syntaxe suivante :

scp @:

Si la syntaxe ci-dessus peut sembler compliquée, un exemple la clarifiera :

scp test.txt remote2@139.144.11.105:/home/remote2/Documents/

Dans l’exemple ci-dessus :

  • test.txt est le nom du fichier à transférer et il se trouve dans le répertoire courant du système local.
  • test est le nom d’utilisateur sur le système cible.
  • 139.144.11.105 est l’adresse IP du système cible.
  • /home/remote2/Documents/ est l’emplacement sur le système cible où le fichier transféré sera enregistré.
Transfert D'Un Fichier Du Système Local Au Récepteur Distant - Commande Scp Linux

Copier les fichiers de l’hôte distant vers la cible locale

Si vous devez transférer un fichier d’un hôte distant vers votre ordinateur local, utilisez la syntaxe de commande scp suivante sur votre système Linux :

scp @:

Par exemple, supposons que vous ayez besoin de transférer un fichier nommé test.py depuis le serveur distant sur lequel vous travaillez, utilisez cette commande :

scp test@10.10.11.113:/home/test/test1.py ~/test1.py

Dans cet exemple :

  • test est le nom d’utilisateur de l’hôte distant.
  • 10.10.11.113 est l’adresse IP de l’hôte distant.
  • /home/test/test1.py est le chemin du fichier à transférer depuis l’hôte distant.
  • ~/test1.py est le nom du fichier une fois qu’il a été transféré sur la machine locale et stocké dans le répertoire personnel.
Envoi De Fichier Du Serveur Distant Au Système Local - Commande Scp Linux

Transférer des fichiers d’un hôte distant vers une autre cible distante

Avec la commande scp, vous pouvez non seulement transférer des fichiers entre votre système local et une machine distante, mais aussi transférer des fichiers entre deux systèmes distants. Mais, avant de pouvoir transférer des fichiers d’un système distant vers un autre système distant, il est recommandé de générer une clé ssh privée et une clé ssh publique sur le système source et de stocker une copie de la clé publique dans le système de destination.

Généralement, les utilisateurs se plaignent de l’erreur « Échec de la vérification de la clé de l’hôte » lors du transfert de fichiers entre deux systèmes distants. Pour contourner l’erreur, utilisez une clé ssh comme mesure supplémentaire. Nous avons expliqué comment vous pouvez le faire ici :

1. Générez une paire de clés publique/privée sur le serveur source avec cette commande :

ssh-keygen -t

2. Pour les algorithmes de chiffrement, vous pouvez utiliser « rsa”, qui est l’algorithme le plus couramment utilisé ou tout autre algorithme de votre choix.

3. Ensuite, il vous sera demandé de choisir l’emplacement où stocker la clé ssh. Vous pouvez soit le stocker à n’importe quel endroit de votre choix ou à l’emplacement par défaut.

4. Pour la phrase de passe, vous pouvez entrer n’importe quoi de votre choix ou la laisser vide en appuyant sur Entrée.

Générer Une Clé Ssh Et Envoyer Une Copie Au Système Récepteur

5. Ensuite, copiez la clé publique sur le serveur de destination à l’aide de la commande ci-dessous. Avec cela, vous pouvez même vous connecter au système de destination sans mot de passe en utilisant ssh.

ssh-copy-id @

Note: la méthode de connexion sans mot de passe ne fonctionnera que pour l’utilisateur pour lequel vous avez généré la clé ssh.

6. Une fois que vous avez créé et stocké la clé ssh sur le serveur distant, utilisez cette syntaxe de commande scp pour échanger des fichiers entre deux systèmes distants exécutant Linux :

scp @: @:

Transfert De Fichier Entre Deux Systèmes Distants - Commande Scp Linux

Supposons que vous ayez besoin de transférer un fichier nommé test.txt d’un hôte distant vers un autre récepteur distant, utilisez la commande :

scp remote1@10.10.11.113:/home/test1/test.txt remote2@10.11.27.111:/home/remote2/Documents/test1.txt

Dans cet exemple :

  • remote1 est le nom de l’utilisateur dans l’hôte de l’expéditeur distant
  • 10.10.11.113 est l’adresse IP de l’hôte expéditeur distant
  • /home/test1/test.txt est le chemin vers le fichier à envoyer
  • remote2 est le nom de l’utilisateur dans la cible du récepteur distant
  • 10.11.27.111 est l’adresse IP de la cible du récepteur distant
  • /home/remote2/Documents/test1.txt est le nom et le chemin à enregistrer pour le fichier à recevoir.

Transférer plusieurs fichiers à l’aide de la commande scp

Transférer plusieurs fichiers un par un peut être une tâche fastidieuse pour n’importe qui. Au lieu de cela, vous pouvez utiliser la syntaxe ci-dessous pour échanger des fichiers à l’aide de la commande scp sous Linux :

scp @:

Par exemple – Supposons que vous deviez envoyer quatre fichiers, y compris test1.txt, test2.py, test3.sh et test4.c, à un récepteur distant, vous pouvez utiliser la commande ci-dessous :

scp -P 22 test1.txt test2.py test3.sh test4.c remote1@10.10.11.113:/home/remote_1/Documents

Comprenons comment la commande dans l’exemple fonctionne et ce qu’elle fait :

  • -p 2222 est utilisé pour spécifier de se connecter via le port 22
  • test1.txt test2.py test3.sh test4.c sont le nom des fichiers à transférer
  • remote_1 est le nom d’utilisateur du système récepteur
  • 10.10.11.113 est l’adresse IP du récepteur
  • /home/remote_1/Documents fait référence au chemin pour stocker le fichier reçu.
Transfert De Plusieurs Fichiers À L'Aide De La Commande Scp

Vous pouvez même utiliser des caractères génériques pour envoyer plusieurs fichiers avec la même extension, comme indiqué ci-dessous :

scp . @:

Par exemple, si vous devez envoyer tous les fichiers .py à un serveur distantutilisez la commande scp ci-dessous dans le terminal Linux :

scp *.py remote1@10.10.11.113:/home/remote_1/

Ici,

  • *.py signifie tous les fichiers python
  • remote1 est le nom d’utilisateur du destinataire
  • 10.10.11.113 est l’adresse IP du destinataire
  • /home/remote_1/ est l’emplacement où stocker le fichier reçu
Sélection De Plusieurs Fichiers Avec La Même Extension Et Transfert

Questions fréquemment posées

Le transfert de fichiers SCP est-il sécurisé ?

Le Secure Copy Protocol ou scp est un protocole basé sur la technologie SSH et utilise le cryptage et l’authentification pour l’échange de fichiers entre deux hôtes. Cela garantit une sécurité et une intégrité complètes des données entre les deux hôtes.

SCP est-il plus sécurisé que SFTP ?

Les protocoles SCP et SFTP sont à égalité en termes de sécurité. Le principal avantage de l’utilisation de scp sur SFTP réside dans les vitesses de transfert rapides, particulièrement utiles dans les réseaux à latence élevée.

Transférer des fichiers en toute sécurité à l’aide de la commande scp sous Linux

À un moment donné, chaque utilisateur doit échanger des fichiers sur le réseau. La commande scp facilite le transfert de fichiers de manière sécurisée et efficace, même sur un réseau à latence élevée. Sûrement, connaître les différentes options et la syntaxe scp peut également être utile. Vous pouvez également vous référer à nos guides sur la façon de renommer un fichier sous Linux et comment supprimer un fichier sous Linux pour améliorer encore vos compétences en gestion de fichiers sur le système d’exploitation. Nous espérons que cet article vous a aidé à apprendre à utiliser la commande scp pour transférer des fichiers sur des ordinateurs Linux. Si vous rencontrez des problèmes lors de l’utilisation de la commande, faites-le nous savoir dans la section des commentaires.

Rate this post
Publicité
Article précédentL’US Air Force paie 75,5 millions de dollars pour un réseau de 25 000 milles carrés pour protéger ses silos nucléaires et partager des données
Article suivant7 émissions OTT à surveiller pendant le long week-end Holi
Avatar
Violette Laurent est une blogueuse tech nantaise diplômée en communication de masse et douée pour l'écriture. Elle est la rédactrice en chef de fr.techtribune.net. Les sujets de prédilection de Violette sont la technologie et la cryptographie. Elle est également une grande fan d'Anime et de Manga.

LAISSER UN COMMENTAIRE

S'il vous plaît entrez votre commentaire!
S'il vous plaît entrez votre nom ici