Guide pratique pour maîtriser le client SSH intégré de Windows 11

Informatique

Guide pratique pour maîtriser le client SSH intégré de Windows 11

27 décembre 2025 15 min de lecture Gaspard Mercier

Windows 11 intègre nativement un client SSH basé sur OpenSSH, éliminant le besoin de recourir à des logiciels tiers comme PuTTY pour établir des connexions sécurisées vers des serveurs distants. Cette fonctionnalité, disponible depuis Windows Server 2019 et Windows 10 version 1809, représente une évolution majeure pour les administrateurs système et les développeurs qui gèrent des environnements hétérogènes. Découvrez comment exploiter pleinement ce client intégré pour optimiser vos connexions distantes et vos transferts de fichiers.

En bref
  • ✓️ Windows 11 inclut nativement un client SSH, facilitant les connexions sécurisées sans logiciels tiers comme PuTTY.
  • ✓Vérifiez l’installation du client SSH via PowerShell et installez-le si nécessaire avec des commandes simples.
  • ✓Le client SSH permet la gestion de connexions sécurisées et de transferts de fichiers avec divers outils comme ssh.exe et scp.exe.
  • ✓Les méthodes d’authentification incluent la connexion par mot de passe ou par clé publique pour améliorer la sécurité.
  • ✓SCP et SFTP sur Windows 11 offrent des solutions sécurisées pour transférer des fichiers vers et depuis des serveurs distants.

Comment vérifier et installer le client SSH sur Windows 11

Le client SSH est généralement préinstallé sur Windows 11, mais il est recommandé de vérifier sa présence avant de procéder à sa configuration. Cette vérification s’effectue rapidement via PowerShell, l’interface de ligne de commande native de Windows. Ouvrez PowerShell en tant qu’administrateur et exécutez la commande suivante pour confirmer l’installation :

Get-WindowsCapability -Online | Where{ $_.Name -like ‘OpenSSH.Client*’ }

Si le client SSH n’apparaît pas dans les résultats ou affiche un statut d’absence, l’installation devient nécessaire. Plusieurs méthodes permettent d’ajouter ce composant au système. La première approche, directe et efficace, utilise PowerShell avec une commande simple :

Add-WindowsCapability -Online -Name OpenSSH.Client

Cette commande télécharge les fichiers nécessaires depuis les serveurs Microsoft et les intègre dans votre installation Windows. L’alternative DISM (Deployment Image Servicing and Management) fonctionne de manière équivalente :

dism /online /Add-Capability /CapabilityName:OpenSSH.Client~~~~0.0.1.0

Attention à ne pas confondre le client SSH avec le serveur SSH. Tandis que le client permet de se connecter à un serveur distant, le serveur SSH (OpenSSH Server) accepte les connexions entrantes sur votre machine locale. Installez exclusivement le client si votre objectif est de gérer des machines distantes, ou les deux composants si vous avez besoin d’une bidirectionnalité complète.

Accéder aux utilitaires SSH dans le système

Une fois l’installation terminée, les binaires d’OpenSSH se situent dans le répertoire C:WindowsSystem32OpenSSH, et non dans le dossier Programmes conventionnel. Cette localisation reflète le statut de composant système d’OpenSSH. Vous n’avez pas besoin d’y accéder directement ; les utilitaires fonctionnent depuis n’importe quel terminal Windows, PowerShell ou invite de commande.

Le client SSH expose plusieurs outils spécialisés, chacun ayant un rôle distinct dans la gestion des connexions sécurisées :

  • 🔐 ssh.exe : établit une connexion interactive avec un serveur distant
  • 📤 scp.exe : transfère des fichiers individuels via le protocole SCP
  • 📁 sftp.exe : offre une interface FTP encapsulée dans SSH pour des transferts interactifs
  • 🔑 ssh-keygen.exe : génère des paires de clés publique-privée
  • 🛡️ ssh-agent.exe : gère et stocke les clés SSH en mémoire
  • ➕ ssh-add.exe : ajoute les clés privées à l’agent SSH
  • 🔍 ssh-keyscan.exe : récupère les clés publiques de serveurs distants

Pour valider la présence du client, tapez simplement ssh dans PowerShell. Si le message d’aide apparaît, le client fonctionne correctement.

Établir une connexion SSH avec authentification par mot de passe

La méthode la plus directe pour se connecter à un serveur distant consiste à utiliser le client SSH avec une authentification basique par mot de passe. Cette approche convient aux environnements de test ou aux connexions ponctuelles, bien qu’une authentification par clé soit recommandée pour les environnements de production.

Pour aller plus loin

Installer Git et bien démarrer le contrôle apporte des repères complémentaires pour situer installer git et bien démarrer le contrôle de version.

La syntaxe fondamentale reste simple et suit le modèle standard du protocole SSH :

ssh nomutilisateur@adresseip

Par exemple, pour accéder à un serveur Linux avec l’utilisateur « florian » hébergé à l’adresse IP 192.168.14.158 :

ssh [email protected]

Lors de la première connexion, Windows vous demande d’accepter la clé de l’hôte distant. Cette étape sécuritaire prévient les attaques de type man-in-the-middle. Saisissez yes et appuyez sur Entrée pour valider. Ensuite, le mot de passe vous sera demandé. Une fois authentifié, vous accédez à un shell interactif sur la machine distante.

Si le serveur SSH opère sur un port autre que le port 22 (le port standard), vous devez le spécifier avec l’option -p (minuscule pour ssh) :

ssh [email protected] -p 22222

Pour terminer la session, exécutez simplement la commande exit ou appuyez sur Ctrl+D.

Gérer les connexions sur ports non-standards

Nombreuses sont les organisations qui modifient le port SSH par défaut pour renforcer la sécurité. Cette pratique, bien qu’offrant une sécurité par l’obscurité limitée, demeure courante. Windows 11 gère facilement ces configurations alternatives grâce à l’option de port.

Les administrateurs déploient fréquemment SSH sur des ports supérieurs à 1024, comme 2222, 22000 ou même des numéros aléatoires à cinq chiffres. À chaque nouvelle connexion sur un port spécifique, l’option -p doit être réitérée. Pour optimiser ce processus, les utilisateurs avancés configurent des profils personnalisés dans le fichier de configuration SSH ~/.ssh/config, ce qui permet de créer des alias simplifiés.

Astuce
Si vous utilisez fréquemment des connexions SSH, pensez à configurer l’agent SSH pour gérer et stocker vos clés en mémoire. Cela vous évitera de ressaisir votre passphrase à chaque connexion.

Authentification SSH par clé publique : sécurité renforcée et automatisation

L’authentification par clé publique représente le standard de sécurité dans les environnements professionnels et critiques. Contrairement aux mots de passe, les paires de clés offrent une protection cryptographique robuste et facilitent l’automatisation des connexions sans interaction humaine.

La génération d’une paire de clés s’effectue avec l’utilitaire ssh-keygen.exe :

ssh-keygen

L’outil interactif vous demande plusieurs informations. Vous pouvez conserver les valeurs par défaut en appuyant simplement sur Entrée, ou personnaliser le chemin et le nom des fichiers. À la fin du processus, deux fichiers sont créés dans le répertoire C:UsersVotreUtilisateur.ssh :

Fichier Type Utilisation Confidentialité
id_ed25519 📋 Clé privée Stockée localement, utilisée pour signer les demandes de connexion 🔒 Strictement confidentielle
id_ed25519.pub 🔓 Clé publique Copiée sur le serveur distant pour autoriser les connexions ✅ Peut être partagée
id_rsa (ancienne génération) 📋 Clé privée RSA Format legacy, moins recommandé aujourd’hui 🔒 Strictement confidentielle
id_rsa.pub (ancienne génération) 🔓 Clé publique RSA Format legacy, toujours fonctionnel ✅ Peut être partagée

La clé privée demeure le secret absolu de votre machine. Elle ne doit jamais être copiée, partagée ou transmise, même partiellement. La clé publique, au contraire, doit être installée sur chaque serveur auquel vous souhaitez accéder.

Déployer la clé publique sur un serveur distant

Contrairement à Linux et macOS, Windows ne possède pas la commande ssh-copy-id en natif. Une alternative directe consiste à copier manuellement le contenu de la clé publique vers le fichier ~/.ssh/authorized_keys sur le serveur distant.

Pour aller plus loin

Pour compléter cette lecture, Créer une CSR OpenSSL sans exposer votre apporte des repères utiles sur créer une csr openssl sans exposer votre clé privée.

La commande suivante automatise ce processus :

cat « C:UsersVotreUtilisateur.sshid_ed25519.pub » | ssh [email protected] « mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys »

Cette commande enchaîne plusieurs opérations : elle lit votre clé publique locale, se connecte au serveur distant via SSH (vous devrez saisir votre mot de passe une dernière fois), crée le répertoire .ssh s’il n’existe pas, puis ajoute votre clé publique au fichier authorized_keys. Après cette étape, les connexions futures utilisent automatiquement votre clé privée sans demander de mot de passe.

Pour vérifier que l’authentification par clé fonctionne, relancez une connexion SSH. Si tout est configuré correctement, vous accédez au serveur sans saisir de mot de passe :

ssh [email protected]

Automatiser l’authentification avec l’agent SSH et les passphrases

Si vous avez défini une passphrase lors de la génération de la clé (recommandé pour renforcer la sécurité), le système vous la demande à chaque connexion. Pour éviter cette répétition fastidieuse tout en conservant la protection offerte par la passphrase, l’agent SSH de Windows entre en jeu.

L’agent SSH stocke temporairement vos clés en mémoire, déverrouillées par la passphrase saisie une seule fois au démarrage. Les connexions ultérieures n’exigent plus la passphrase.

Deux étapes sont nécessaires. D’abord, configurez le service ssh-agent pour démarrer automatiquement :

Set-Service ssh-agent -StartupType ‘Automatic’

Ensuite, démarrez-le immédiatement :

Start-Service ssh-agent

Maintenant, ajoutez votre clé privée à l’agent :

ssh-add « C:UsersVotreUtilisateur.sshid_ed25519 »

Le système vous demande la passphrase une seule fois. Dès lors, chaque connexion SSH fonctionne sans intervention supplémentaire, tant que le service reste actif. Pour valider que l’ajout a réussi, vous verrez un message de confirmation incluant votre identité locale.

Explication
SCP est excellent pour les transferts de fichiers simples et rapides via la ligne de commande, tandis que SFTP offre une interface interactive semblable au FTP, pratique pour les transferts multiples.
Guide pratique pour maîtriser le client SSH intégré de Windows 11
Guide pratique pour maîtriser le client SSH intégré de Windows 11

Transférer des fichiers avec SCP et SFTP depuis Windows

Au-delà des simples connexions interactives, Windows 11 offre deux protocoles pour transférer des fichiers de manière sécurisée. SCP (Secure Copy) et SFTP (SSH File Transfer Protocol) répondent à des besoins différents, avec des avantages distincts selon le contexte d’utilisation.

SCP excelle pour les transferts simples et en ligne de commande, idéal pour les scripts d’automatisation. SFTP, à l’inverse, propose une interface interactive ressemblant au FTP traditionnel, pratique pour les opérations manuelles impliquant de multiples fichiers ou dossiers.

Envoyer des fichiers avec SCP vers un serveur distant

SCP fonctionne selon une syntaxe similaire à celle de la commande cp sous Linux, mais avec la capacité de franchir les limites du réseau. Pour envoyer un fichier local vers un serveur distant :

Pour approfondir ce point, consultez pratique : configurer une adresse IP fixe, qui traite plus précisément de guide pratique : configurer une adresse ip fixe sur debian 13 étape par étape.

scp « C:UsersVotreUtilisateurDocumentsrapport.pdf » [email protected]:/home/florian

Cette commande copie le fichier rapport.pdf vers le répertoire /home/florian du serveur distant. Notez l’absence d’espace après le deux-points, qui sépare l’adresse du serveur du chemin distant.

Si le serveur utilise un port non-standard, spécifiez-le avec l’option -P (majuscule pour SCP, contrairement à SSH) :

scp -P 22222 « C:UsersVotreUtilisateurDocumentsrapport.pdf » [email protected]:/home/florian

Pour envoyer un dossier entier et son contenu récursivement, utilisez l’option -r :

scp -r « C:UsersVotreUtilisateurDocumentsProjetComplet » [email protected]:/home/florian

Cette opération copie le dossier ProjetComplet avec tous ses fichiers et sous-dossiers sur le serveur distant.

Télécharger des fichiers depuis un serveur distant

L’opération inverse (téléchargement) inverse simplement la source et la destination dans la commande SCP :

scp [email protected]:/home/florian/donnees.xlsx « C:UsersVotreUtilisateurDownloads »

Cette commande récupère le fichier donnees.xlsx depuis le serveur et l’enregistre dans le dossier Téléchargements local. L’option -r s’applique également au téléchargement, permettant de rapatrier des dossiers complets :

scp -r [email protected]:/home/florian/Sauvegardes « C:UsersVotreUtilisateurSauvegardes_distantes »

Utiliser SFTP pour des transferts interactifs avancés

SFTP offre une expérience différente : au lieu d’exécuter une seule commande de transfert, vous établissez une session interactive avec le serveur distant, comparable à une connexion FTP. Pour démarrer une session SFTP :

sftp [email protected]

Le prompt change en sftp>, indiquant que vous êtes dans une session SFTP. Vous pouvez maintenant exécuter des commandes spécifiques. Pour envoyer un fichier :

put « C:UsersVotreUtilisateurDocumentsdocument.txt »

Pour lister les fichiers du serveur distant :

ls /home/florian

Pour approfondir ce point, consultez incontournable des protocoles FTP, FTPS et SFTP, qui traite plus précisément de guide incontournable des protocoles ftp, ftps et sftp : comprendre et maîtriser le transfert de fichiers pour les novices.

Pour télécharger un fichier :

get /home/florian/rapport_mensuel.pdf « C:UsersVotreUtilisateurDownloads »

SFTP permet également de naviguer dans l’arborescence distante avec cd, de créer des dossiers avec mkdir, et de lister le répertoire local avec lls. Pour quitter la session, tapez exit.

Bien que SFTP soit plus polyvalent, SCP reste privilégié pour les scripts et les transferts massifs en raison de sa simplicité et de sa performance brute.

Conseil
Pour renforcer la sécurité des connexions SSH, changez régulièrement vos clés privées et utilisez des passphrases complexes. En cas de compromission suspectée, révoquez immédiatement et générez de nouvelles clés.

Bonnes pratiques de sécurité et optimisation des connexions SSH

La maîtrise technique du client SSH suppose également une compréhension des enjeux de sécurité qui sous-tendent chaque connexion. Les erreurs de configuration ou les comportements négligents peuvent compromettre l’intégrité de vos systèmes distants et des données qu’ils contiennent.

La sécurité SSH repose sur plusieurs piliers : la complexité de l’authentification, la gestion des clés, la configuration des serveurs distants, et l’éducation des utilisateurs aux risques d’ingénierie sociale.

Protéger vos clés privées et gérer les passphrases

La clé privée est le fondement de votre sécurité. Contrairement aux mots de passe, qui peuvent être changés rapidement après une compromission, une clé privée révélée exige une révocation immédiate et une régénération sur tous les serveurs où elle est autorisée.

Stockez votre clé privée dans un emplacement sûr, idéalement un dossier dont seul votre compte utilisateur a accès. Le répertoire par défaut C:UsersVotreUtilisateur.ssh bénéficie de permissions restrictives en natif, mais ne reposez pas exclusivement sur cela. Considérez un chiffrement du disque dur complet (BitLocker sous Windows) pour une protection supplémentaire.

Les passphrases offrent une ligne de défense supplémentaire. Même si quelqu’un accède à votre clé privée, sans la passphrase, celle-ci reste inutilisable. Bien qu’elle ajoute une étape d’authentification, l’agent SSH minimise l’inconvénient en ne demandant la passphrase qu’une seule fois par session.

Changez vos clés SSH tous les deux à trois ans, ou immédiatement si vous soupçonnez une compromission. Maintenez un registre des serveurs où chaque clé est autorisée, facilitant la révocation en cas de besoin.

Configuration sécurisée des serveurs distants

Votre sécurité dépend aussi de la configuration des serveurs auxquels vous vous connectez. Si vous gérez ces serveurs, implémentez ces recommandations :

  1. 🚫 Désactiver l’authentification par mot de passe et exiger exclusivement les clés SSH
  2. 🔄 Forcer les protocoles SSH version 2, bannissant la version 1 obsolète
  3. ⏱️ Implémenter un délai d’inactivité pour fermer les sessions zombies
  4. 📍 Filtrer les connexions par adresse IP blanche si possible
  5. 🔔 Activer la journalisation détaillée des tentatives de connexion
  6. 🔀 Changer le port SSH par défaut (bien que ce soit une sécurité par l’obscurité)
  7. 👥 Désactiver l’accès root direct via SSH, exigeant un passage par sudo

Surveillance et dépannage des connexions SSH

Le mode verbose de SSH affiche des informations de débogage détaillées, utiles pour diagnostiquer les problèmes de connexion :

ssh -v [email protected]

Augmentez le niveau de verbosité avec -vv ou -vvv pour des détails encore plus profonds. Ces informations révèlent les étapes de la négociation de connexion, les algorithmes choisis, et les erreurs survenant lors de l’authentification.

Sur les serveurs Linux distants, consultez le journal SSH dans /var/log/auth.log ou /var/log/secure pour voir les tentatives de connexion et identifier les tentatives non autorisées. Ces logs permettent de détecter les attaques par force brute ou les comportements suspects.

Windows 11 enregistre également les activités SSH dans l’Observateur d’événements, sous la section Applications et services → OpenSSH. Consultez-le régulièrement pour détecter les anomalies.

Windows 11 met à disposition un client SSH natif et performant, intégré profondément dans le système d’exploitation et disponible depuis PowerShell, l’Invite de commande, ou Windows Terminal. Maîtriser ses fonctionnalités transforme la gestion de serveurs distants en un processus fluide et sécurisé, sans dépendre de logiciels tiers. Les trois cas d’usage essentiels—connexion interactive, transfert de fichiers, et automatisation scriptée—trouvent des solutions directement intégrées dans le protocole SSH, permettant une administration système efficace et cohérente. La route vers une infrastructure bien gérée commence par la compréhension et l’application rigoureuse de ces outils.

Pour approfondir ce point, consultez pratique pour réinitialiser Windows 11 tout en, qui traite plus précisément de guide pratique pour réinitialiser windows 11 tout en conservant vos fichiers personnels.

Gaspard Mercier
À propos de l'auteur Gaspard Mercier

Gaspard Mercier s'intéresse de près aux technologies et à la sécurité informatique, un sujet qu'il explore et pratique au quotidien. Il partage sur son site des guides et…

À lire aussi

À lire ensuite

Imprimantes de codes-barres: Le choix clé pour gagner en efficacité
Informatique

Imprimantes de codes-barres: Le choix clé pour gagner en efficacité

Recherchez-vous un équipement capable de vous aider dans la gestion de votre organisation? Les imprimantes de codes-barres occupent une place importante dans de nombreux secteurs. Elles permettent d'identifier rapidement les produits, colis.

·3 min
Poursuivez avec les guides du site

Poursuivez avec les guides du site

Les guides complètent cet article avec une lecture plus structurée, des cas concrets et les points de vigilance à garder en tête.