GNU/Linux >> Tutoriels Linux >  >> Linux

Commande SCP Linux - Comment transférer un fichier SSH de distant à local

Chaque fois que vous travaillez avec des ordinateurs ou tout autre appareil électronique doté d'une capacité de stockage, vous devrez peut-être distribuer ou partager des informations et des fichiers de différentes manières.

Certains des fichiers les plus couramment partagés comprennent des fichiers audio, des images, des vidéos, des fichiers PDF ou toute forme de documents Word.

La plupart du temps, les informations partagées seront privées ou confidentielles, ce qui signifie qu'elles sont destinées à une personne spécifique ou à un groupe de personnes, il est donc essentiel de les protéger.

En ce qui concerne les appareils comme les téléphones mobiles, nous avons des applications qui facilitent le transfert de fichiers comme xender, appshare ou même parfois l'utilisation de Bluetooth. Maintenant, quand il s'agit d'ordinateurs, le cas n'est pas différent, nous avons des logiciels et même des sites qui facilitent la même chose.

Lorsqu'il s'agit de partager des données dans des systèmes d'exploitation comme Linux, vous pouvez choisir parmi plusieurs commandes pour partager des informations. Mais aujourd'hui, nous allons nous concentrer sur le SCP commande. Il vous permet de partager facilement et en toute sécurité des fichiers et des données.

Dans l'écart actuel du marché, avoir des compétences Linux est très essentiel et utile d'autant plus si vous êtes un administrateur système. En tant qu'administrateur système, le partage de données fera partie de votre activité quotidienne et vous aurez besoin que les données partagées soient en sécurité, et en utilisant la commande SCP, vous pourrez y parvenir.

Avant de commencer, commençons par comprendre ce qu'est SCP, puis nous apprendrons quelques commandes que vous pouvez utiliser pour le transfert de fichiers.

Que sont les commandes SCP ?

SCP est l'acronyme de Secure Copy Protocol. Il s'agit d'un utilitaire de ligne de commande qui permet à l'utilisateur de copier en toute sécurité des fichiers et des répertoires entre deux emplacements, généralement entre des systèmes Unix ou Linux.

Le protocole garantit que la transmission des fichiers est cryptée pour empêcher toute personne ayant des intentions suspectes d'obtenir des informations sensibles.

En termes plus simples, nous pouvons dire que SCP est une option plus sûre pour le cp (copier ) commande.

Il est également important de noter que SCP utilise le cryptage sur une connexion SSH (Secure Shell), ce qui garantit que les données transférées sont protégées contre les attaques suspectes.

Syntaxe SCP

Comme toutes les autres commandes utilisées dans le terminal, le SCP a également un format qui est utilisé pour une exécution réussie. En comprenant la syntaxe, il vous est plus facile d'écrire les commandes :

scp [OPTIONS] [[user@]src_host:]file1 [[user@]dest_host:]file2
  • scp - Il initialise la commande et s'assure qu'un shell sécurisé est en place.
  • OPTIONS - Ils accordent des autorisations différentes selon la façon dont ils ont été utilisés. Voici quelques-unes des options les plus courantes :
  • P (Majuscules) - spécifie le port pour établir la connexion avec l'hôte distant.
  • p (minuscule) - préserve l'horodatage pour faciliter la modification et l'accès.
  • r - copie l'intégralité du répertoire de manière récursive
  • q - copie les fichiers silencieusement, n'affiche pas les messages de progression. Également appelé mode silencieux.
  • C - pour la compression des données pendant la transmission.
    Pour en savoir plus sur les OPTIONS, lisez les options scp
  • src_host - où le fichier est hébergé. La source peut être un client ou un serveur selon l'origine du fichier.
  • dest_host - où le fichier sera copié.

Puisque nous traitons de la transmission de fichiers, cela signifie définitivement qu'il doit y avoir une implication de plus d'une machine pour rendre le processus possible. Nous pouvons utiliser SCP dans les cas suivants :

  • Copier les fichiers sur la même machine.
  • Copier des fichiers d'un hôte local vers un hôte distant et vice versa.
  • Copiez des fichiers entre deux serveurs distants différents.

À ce stade, il sera juste de dire qu'avant d'utiliser des commandes SCP, vous devrez mettre en place quelques éléments :

  • SSh installé sur les ordinateurs client et serveur.
  • Accès racine aux ordinateurs client et serveur

Avec deux choses prêtes, vous êtes prêt à partir. Commençons par voir les commandes en action.

Commandes SCP communes

Copier le fichier de l'hôte local vers le serveur distant

Lors de la copie de fichiers, il est essentiel de pouvoir transférer des fichiers/données du stockage local vers un serveur distant. Lorsque vous utilisez les commandes SCP, vous devrez spécifier quelques éléments pour que cela se produise.

Vous devrez spécifier le chemin d'accès au fichier comme source et également spécifier le chemin de l'hôte distant, où les fichiers sont copiés.

Prenons un scénario où nous avons un fichier test.txt et nous devons le copier sur un serveur distant, notre commande ressemblera à ceci :

scp test.txt userbravo@destination:/location2

Nous ne sommes pas limités au nombre de fichiers que nous pouvons copier. Disons que nous sommes sur notre bureau dans le dossier appelé web où nous avons .php extensions de fichier et nous devons copier le répertoire de base du serveur distant. Notre commande ressemblera à :

scp *.php userbravo@destination_host:/~/

*.php - copie tous les fichiers avec l'extension .php dans le dossier actuellement spécifié.
/~/ - signifie les copier dans le répertoire personnel.

Supposons que vous souhaitiez copier un fichier nommé test.txt et l'enregistrer sous un nom différent sur le serveur distant cette fois-ci en utilisant une option de port. La commande sera :

scp -P 8080 test.txt userbravo@destination_host:/user/home/test2.txt

Dans cet exemple, nous avons copié un fichier test.txt de la machine locale vers la télécommande où il sera enregistré sous test2.txt en utilisant le port 8080.

Copier des fichiers de distant à local

Une meilleure façon de comprendre cela est d'utiliser un exemple. Prenons un scénario dans lequel vous souhaitez copier des fichiers à partir d'un système distant. Pour copier les fichiers, vous devrez d'abord invoquer le SCP, suivi du nom d'utilisateur distant @ adresse IP, chemin d'accès au fichier.

Si vous ne spécifiez pas le chemin, il est supposé par défaut dans ce cas qui sera le répertoire personnel de l'utilisateur, celui-ci sera suivi du chemin où le fichier sera stocké localement.

La syntaxe

scp file <remote_username>@<IPorHost>:<PathToFile>   <LocalFileLocation>

Disons que je voulais copier un fichier nommé linuxcheatsheet depuis l'appareil distant avec cette adresse 192.168.1.100 .

La feuille de triche Linux Le fichier est stocké dans le répertoire personnel de l'utilisateur kali, l'utilisateur que je vais authentifier. Par conséquent, après les deux-points, je n'ai pas besoin de spécifier le chemin car c'est celui par défaut, qui est le répertoire personnel, et je tape simplement le nom du fichier ("linuxcheatsheet"). Ensuite, je spécifie le répertoire courant comme emplacement local pour stocker le fichier en tapant un point.

scp linuxcheatsheet [email protected]: .

Copier des fichiers d'un hôte distant vers un autre

La beauté de l'utilisation de SCP dans le transfert de fichiers est qu'il ne permet pas seulement la connexion entre des machines locales, mais aussi qu'il vous permet de vous connecter à des serveurs distants.

Disons que nous voulions copier un fichier nommé test.txt, sur un autre serveur distant, la commande ressemblerait à ci-dessous :

scp [email protected]:/files/test.txt [email protected]:/files

Ce que cette commande va faire est de copier test.txt à partir du dossier de fichiers dans l'utilisateur1 et d'en créer une réplique dans l'utilisateur2 qui s'exécute sur host2.com toujours dans le dossier des fichiers.

Copier plusieurs fichiers

Lors de la copie de plusieurs fichiers, tout ce que vous avez à faire est de spécifier le nom du fichier comme chemin source. par exemple.

La syntaxe

scp file1 file2 ... user@<ip_address_of_user>: Destination

Disons que nous voulions copier les fichiers 1, 2, 3 et 4. La commande ressemblerait à ceci :

scp file1.txt file2.txt file3.txt file4.txt [email protected]:/home/user/Desktop

Points à emporter :

  • Pour pouvoir copier des fichiers, vous devez disposer d'autorisations de lecture sur le fichier source et d'une autorisation d'écriture sur le système cible.
  • La commande SCP s'appuie sur SSH pour un transfert de données sécurisé, ce qui signifie qu'elle nécessite un mot de passe pour s'authentifier sur des systèmes distants.
  • Faites attention lorsque vous copiez des fichiers portant le même nom et le même emplacement, car SCP les écrasera sans vous en avertir.
  • Pour pouvoir faire la distinction entre les emplacements locaux et distants, utilisez les deux-points complets  : .

Conclusion

Que vous soyez un ingénieur de support, un administrateur système ou même un développeur en pleine croissance comme moi qui utilise Linux ou qui souhaite l'apprendre, il est probable que vous deviez transférer des fichiers à un moment donné. Et connaître ces commandes SCP simples vous sera utile.

Dans cet article, nous avons couvert certains des scénarios les plus courants dans lesquels vous voudriez utiliser SCP et nous espérons que vous avez appris quelque chose de nouveau.

Profitez du codage ❤


Linux
  1. Comment diviser et combiner des fichiers à partir de la ligne de commande sous Linux

  2. Utiliser Scp pour transférer un fichier du répertoire local X vers le répertoire distant Y ?

  3. Comment utiliser Netcat pour transférer des fichiers sous Linux

  4. Comment transférer des fichiers sous Linux avec SCP et Rsync

  5. Comment transférer des fichiers en toute sécurité à l'aide de la commande SCP sous Linux

Comment utiliser la commande SCP pour transférer des fichiers

Comment télécharger des fichiers à partir de serveurs Linux distants

Comment utiliser la commande SCP sous Linux

4 façons de transférer des fichiers entre des systèmes distants et locaux via SSH

Commande Linux SCP pour transférer des fichiers en toute sécurité

Comment exécuter la commande SUDO dans WinSCP pour transférer des fichiers de Windows vers Linux