Il y a des moments où vous souhaitez transférer des fichiers entre votre système local et un serveur distant. Plusieurs protocoles et méthodes sont disponibles qui vous permettent de gérer les transmissions de fichiers de manière sécurisée.

La commande scp sous Linux est l'un de ces outils qui aide un utilisateur à partager des fichiers à distance entre des hôtes locaux et distants. Dans cet article, nous discuterons en détail de la commande scp, de son utilisation et de certaines fonctionnalités supplémentaires de la commande.

Qu'est-ce que la commande Scp

Scp, un acronyme pour Copie sécurisée, est un utilitaire de ligne de commande dans les systèmes d'exploitation basés sur Linux qui permet à un utilisateur de copier des fichiers entre des hôtes distants et locaux. Étant donné que la commande transfère des fichiers sur un réseau vers un autre hôte, un accès SSH est requis. SSH (Secure Shell) est un protocole qui vous permet de gérer les services réseau en toute sécurité sur n'importe quel réseau.

instagram viewer

La commande scp prend également en charge certaines fonctionnalités supplémentaires telles que la spécification des paramètres d'authentification, la modification du port, le transfert de répertoires, etc.

Pourquoi Scp est meilleur que les autres méthodes

Scp est généralement préféré aux autres méthodes de transfert de fichiers car, pendant le transfert, la connexion entre les deux hôtes est cryptée. Le protocole SSH est responsable du chiffrement des fichiers, des mots de passe et de tout autre détail sensible.

Les autres méthodes de transfert telles que Telnet ou FTP n'ont aucun cryptage. En outre, la paire de clés utilisateur / mot de passe est également enregistrée en texte brut, ce qui n'est pas du tout une bonne pratique. Un pirate peut facilement accéder à vos informations en reniflant votre réseau.

Comment transférer des fichiers en toute sécurité à l'aide de Scp

À l'aide de la commande scp, vous pouvez transférer des fichiers entre:

  1. Un hôte local et un hôte distant
  2. Un hôte distant et un système local
  3. Deux hôtes distants

Syntaxe de base

La syntaxe de base de la commande scp est:

scp [options] [source] [destination]

Transfert de l'hôte local vers un système distant

Si vous êtes un administrateur de serveur, le transfert de fichiers entre un hôte local et des hôtes distants peut vous être utile. Pour télécharger un fichier nommé document.txt vers un hôte distant:

scp /home/document.txt utilisateur @ hôte-distant: /home/document.txt

Notez que la source est le chemin du fichier sur votre stockage local. Et la destination est le chemin du fichier sur l'hôte distant. Vous devez également spécifier le nom d'utilisateur et le nom de domaine du serveur distant. Dans la commande ci-dessus, utilisateur est le nom d'utilisateur et hôte distant est le nom de domaine.

Le chemin de destination est séparé des détails de l'hôte distant à l'aide du côlon personnage (:). Gardez à l'esprit que l'utilisateur doit exister sur le serveur distant si vous souhaitez transférer les fichiers avec succès. En outre, l'utilisateur doit avoir un accès en écriture au répertoire dans lequel vous souhaitez enregistrer le fichier.

Après avoir émis la commande mentionnée ci-dessus, le système vous demandera le mot de passe de l'utilisateur distant. Tapez le mot de passe et appuyez sur Entrer.

Mot de passe de l'utilisateur @ hôte distant:

Si le mot de passe est valide, le transfert de fichiers s'initialise. Si vous avez entré un mot de passe incorrect, une erreur se produit.

Avant d'essayer de copier le fichier à l'aide de la commande scp, assurez-vous que les détails de l'hôte distant et le mot de passe sont corrects en vous connectant au serveur à l'aide de SSH.

D'un hôte distant à un hôte local

Pour copier des fichiers d'un hôte distant vers un hôte local, échangez simplement le chemin source et le chemin de destination dans la commande scp.

utilisateur scp @ hôte-distant: /home/document.txt /home/document.txt

Le système vous demandera à nouveau le mot de passe de l'utilisateur distant. Saisissez le mot de passe pour confirmer le processus de transfert.

Entre deux hôtes distants

Pour copier des fichiers entre deux serveurs distants, les chemins source et de destination doivent être des répertoires sur les hôtes distants.

scp user1 @ remote-host1: /home/document.txt user2 @ remote-host2: /home/folder/document.txt

Encore une fois, une invite apparaîtra vous demandant d'entrer le mot de passe pour chacun des deux utilisateurs.

Options de ligne de commande Scp

Outre le simple transfert des fichiers de la source à la destination, scp dispose d'options supplémentaires qui peuvent être invoquées à l'aide d'arguments spécifiques.

Changer le port

Par défaut, la commande scp fonctionne sur le port 22. Cependant, vous pouvez toujours écraser la configuration par défaut et modifier le port. Le -P flag vous permet de faire de même.

Pour utiliser un autre numéro de port lors de la copie de fichiers d'un hôte local vers un hôte distant:

scp -P 35 /home/document.txt utilisateur @ hôte-distant: /home/document.txt

La commande susmentionnée garantira que la commande scp utilise le port 35 pour transférer des fichiers.

Conserver les horodatages des fichiers

Tu sais peut-être que Linux définit les horodatages pour chaque fichier pour stocker l'heure de modification, l'heure d'accès et l'heure de modification associées au fichier. Lorsque vous transférez le fichier vers un autre emplacement à l'aide de scp, les horodatages du fichier de destination sont remplacés par l'heure actuelle.

Si, pour une raison quelconque, vous souhaitez conserver ces horodatages, utilisez le -p drapeau. Remarquerez que -P et -p les drapeaux sont différents les uns des autres.

scp -p /home/document.txt utilisateur @ hôte-distant: /home/remote/document.txt

Copier les répertoires

Si vous souhaitez copier des répertoires au lieu de fichiers, utilisez le -r flag pour transférer les répertoires de manière récursive.

scp -r utilisateur @ hôte-distant: / home / videos / home / videos

Mode supprimé

Lorsque vous entrez la commande scp pour transférer des fichiers, le terminal affiche la barre de progression et d'autres informations associées à l'écran. Cependant, vous pouvez choisir de ne pas afficher ces informations en utilisant le -q drapeau.

scp -q utilisateur @ hôte-distant: /home/document.txt /home/document.txt

Utiliser un fichier de paires de clés pour l'authentification

Si vous souhaitez authentifier la connexion de l'hôte distant à l'aide d'un fichier de paire de clés, spécifiez le chemin du fichier à l'aide du -je drapeau.

scp -i /home/keypair.pem /home/document.txt utilisateur @ hôte-distant: /home/document.txt

Chaînage de plusieurs drapeaux ensemble

Comme toute autre commande Linux, vous pouvez enchaîner plusieurs arguments pour rendre la commande scp plus efficace.

Par exemple, pour changer de port et transférer des fichiers en mode supprimé:

scp -P 34 -q utilisateur @ hôte-distant: /home/document.txt home / document.txt

Si vous souhaitez utiliser un fichier de paires de clés pour l'authentification et devez copier les répertoires vers le chemin de destination:

scp -i /home/secret/keypair.pem -r / home / dossier utilisateur @ hôte-distant: / home / dossier

Transfert de fichiers entre systèmes Linux

Dans le monde d'Internet, le transfert de fichiers entre systèmes est devenu une tâche essentielle. Pour ceux qui administrent des serveurs Linux, il est parfois important de faire une sauvegarde du serveur avant d'émettre une commande spécifique. Dans de telles situations, la commande scp est pratique.

De même, la commande cp aide à copier les fichiers d'un emplacement à un autre dans un système local. Il existe de nombreuses commandes de base indispensables si vous ne faites que commencer avec Linux.

E-mail
Aide-mémoire de référence des commandes Linux

Cette simple feuille de triche vous aidera à vous familiariser avec le terminal de ligne de commande Linux en un rien de temps.

Lire la suite

Rubriques connexes
  • Linux
  • Gestion de fichiers
  • Linux
  • SSH
A propos de l'auteur
Deepesh Sharma (33 articles publiés)

Deepesh est l'éditeur junior pour Linux chez MUO. Il écrit du contenu informatif sur Internet depuis plus de 3 ans. Pendant son temps libre, il aime écrire, écouter de la musique et jouer de la guitare.

Plus de Deepesh Sharma

Abonnez-vous à notre newsletter

Rejoignez notre newsletter pour des conseils techniques, des critiques, des ebooks gratuits et des offres exclusives!

Un pas de plus…!

Veuillez confirmer votre adresse e-mail dans l'e-mail que nous venons de vous envoyer.

.