Learning Center
Système Linux

Comment copier des fichiers via SSH

10 oct. 2025
Hostman Team
Hostman Team

Le protocole SSH (Secure Shell) est un protocole réseau permettant la gestion de systèmes d’exploitation via la ligne de commande à distance. Il est largement considéré comme la norme pour l’accès distant aux machines *nix. SSH permet une connexion sécurisée à un serveur, l’exécution de commandes à distance, la gestion de fichiers (création, suppression, copie, etc.) et bien plus. La plupart des fournisseurs de cloud et d’hébergement exigent SSH pour accéder à leurs services. Dans cet article, nous verrons comment copier des fichiers via SSH sur les systèmes Windows et Linux.

Comment fonctionne SSH
Copier le lien

SSH peut transmettre n’importe quel type de données (audio, vidéo, données de protocole applicatif) via un canal de communication chiffré. Contrairement aux protocoles obsolètes et non sécurisés comme Telnet et rlogin, SSH garantit la confidentialité et l’authenticité des données — des éléments essentiels pour les communications sur Internet.

Voici comment une connexion sécurisée entre un client et un serveur est établie :

  1. Établissement de la connexion TCP : Par défaut, le serveur écoute sur le port 22. Les deux parties partagent une liste d’algorithmes pris en charge (compression, chiffrement, échange de clés) et conviennent de ceux à utiliser.

  2. Authentification : Pour éviter l’usurpation d’identité, les deux parties vérifient leurs identités à l’aide du chiffrement asymétrique (paires de clés publique/privée). Le serveur est authentifié en premier. Lors de la première connexion, le client affiche un avertissement avec les détails du serveur. Les clés de serveurs de confiance sont stockées dans /home/<username>/.ssh/known_hosts.

  3. Génération de clé : Une fois le serveur vérifié, les deux parties génèrent une clé symétrique pour chiffrer toutes les données échangées.

  4. Authentification de l’utilisateur : Elle s’effectue à l’aide d’un mot de passe ou d’une clé publique envoyée par le client et stockée dans /home/<username>/.ssh/authorized_keys sur le serveur.

L’implémentation la plus populaire sous Linux est OpenSSH, qui est préinstallée sur la plupart des distributions (Ubuntu, Debian, RHEL, etc.). Sous Windows, des clients comme PuTTY ou MobaXterm sont utilisés. Depuis Windows 10 et Server 2019, les outils OpenSSH sont également disponibles nativement.

Copier des fichiers via SSH
Copier le lien

Deux utilitaires principaux pour copier des fichiers via SSH sous Linux sont scp et sftp. Les deux sont inclus dans OpenSSH.

SSH prend en charge deux versions de protocole : 1 et 2. OpenSSH prend en charge les deux, mais la version 1 est rarement utilisée.

Configuration de l’autocomplétion
Copier le lien

Pour activer l’autocomplétion avec la touche Tab lors de l’utilisation de scp, configurez l’authentification par clé publique :

Générer une paire de clés :

ssh-keygen

Exemple de sortie :

Generating public/private rsa key pair.
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):

Par défaut, vos clés (id_rsa pour la clé privée et id_rsa.pub pour la clé publique) sont enregistrées dans ~/.ssh/.

Copier la clé publique sur la machine distante :

ssh-copy-id [username]@[ip-address]

Après avoir saisi le mot de passe de l’utilisateur, un message confirmera que la clé a été ajoutée.

Secure Copy (SCP)
Copier le lien

Pour les petits transferts de données (par ex. fichiers de configuration), scp est idéal.

Copier du local vers le distant :

scp test.txt user@192.168.1.29:/home/user/

Copier plusieurs fichiers :

scp test1.txt test2.txt user@192.168.1.29:/home/user/

Copier du distant vers le local :

scp user@192.168.1.29:/home/user/test.txt ~/

Copier des répertoires :

scp -r testdir user@192.168.1.29:/home/user/

Copier d’un serveur à un autre :

scp gendo@192.168.1.25:/home/gendo/test.txt user@192.168.1.29:/home/user/

Secure FTP (SFTP)
Copier le lien

SFTP est un autre utilitaire inclus dans OpenSSH. Depuis OpenSSH 9.0, scp utilise par défaut SFTP au lieu de l’ancien protocole SCP/RCP.

Contrairement au FTP classique, sftp transmet les données chiffrées via un tunnel sécurisé. Il ne nécessite pas de serveur FTP séparé.

Exemple d’utilisation :

sftp misato@192.168.1.29

sftp> ls
sftp> lcd testdir/
sftp> get test.txt
sftp> bye

Des gestionnaires de fichiers graphiques comme Midnight Commander ou Nautilus utilisent également sftp. Dans Nautilus, le serveur distant apparaît comme un dossier local, par exemple user@ip.

Image1

Copier des fichiers via SSH sous Windows
Copier le lien

Sous Windows, l’outil en ligne de commande pscp de PuTTY est utilisé pour copier des fichiers.

Copier vers le serveur :

pscp C:\server\test.txt misato@192.168.1.29:/home/misato/

Copier depuis le serveur :

pscp misato@192.168.1.29:/home/misato/test.txt C:\file.txt

Lister les fichiers sur le serveur distant :

pscp -ls user@192.168.1.29:/home/misato

Utiliser des guillemets pour les chemins contenant des espaces :

pscp "C:\dir\bad file name.txt" misato@192.168.1.29:/home/misato/

Afficher l’aide :

pscp

Conclusion
Copier le lien

Nous avons vu comment copier des fichiers vers et depuis un serveur en utilisant le protocole SSH sécurisé. Si vous travaillez avec des serveurs cloud, comprendre SSH est essentiel — c’est la méthode standard d’accès à distance aux machines *nix et un élément clé de l’administration système et du DevOps quotidien.