- Aperçu
- Variables utilisées
- Étape 1 : Installer le serveur OpenSSH
- Étape 2 : Démarrer et activer le service
- Étape 3 : Configurer le pare-feu
- Étape 4 : Configurer l’authentification par clé (recommandé)
- Étape 5 : Première connexion et vérification
- Étape 6 : Renforcement de la sécurité
- Étape 7 : Vérifier les journaux
- Conclusion
Aperçu
Cet article explique comment installer le serveur OpenSSH sur Windows Server, configurer l’authentification par clé, le service, et le pare-feu, étape par étape.
Variables utilisées
| Variable | Exemple | Remarque |
|---|---|---|
<<SERVER>> |
192.168.1.10 |
Nom d’hôte ou adresse IP de la machine cible |
Étape 1 : Installer le serveur OpenSSH
Ouvrez PowerShell avec des privilèges d’administrateur, puis exécutez :
Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
Étape 2 : Démarrer et activer le service
Démarrez le service sshd et configurez-le pour qu’il démarre automatiquement :
Start-Service sshd
Set-Service -Name sshd -StartupType Automatic
💡 Remarque
Lors du premier démarrage, les fichiers de configuration et les clés d’hôte sont générés automatiquement :
%ProgramData%\ssh\sshd_config(fichier de configuration)%ProgramData%\ssh\ssh_host_*(clés d’hôte)Modifiez ces fichiers après leur création.
Étape 3 : Configurer le pare-feu
Autorisez le trafic SSH (port 22 par défaut) dans le pare-feu :
New-NetFirewallRule -Name "OpenSSH-Server" -DisplayName "OpenSSH Server (sshd)" `
-Enabled True -Direction Inbound -Protocol TCP -LocalPort 22 -Action Allow
Étape 4 : Configurer l’authentification par clé (recommandé)
-
Guide de génération et de configuration des clés côté client
-
Ajoutez la clé publique dans le fichier
authorized_keys:- Pour un utilisateur standard :
C:\Users\<User>\.ssh\authorized_keys - Pour un administrateur :
%ProgramData%\ssh\administrators_authorized_keys
- Pour un utilisateur standard :
-
Modifiez le fichier
sshd_configet vérifiez les lignes suivantes :PubkeyAuthentication yes AuthorizedKeysFile __PROGRAMDATA__/ssh/administrators_authorized_keys
Étape 5 : Première connexion et vérification
Depuis le client, connectez-vous :
ssh Administrator@<<SERVER>>
Lors de la première connexion, un avertissement de clé d’hôte apparaîtra.
Une fois connecté, exécutez whoami pour vérifier que vous êtes bien l’utilisateur attendu.
Étape 6 : Renforcement de la sécurité
Modifiez sshd_config pour restreindre les accès :
Port 2222
AllowGroups SSHAdmins
AllowUsers Administrator deployuser
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
Port 2222: changer le port réduit les attaques automatisées.AllowGroups SSHAdmins: limite l’accès aux membres d’un groupe défini.AllowUsers Administrator deployuser: restreint l’accès à des comptes précis.PasswordAuthentication noetKbdInteractiveAuthentication no: désactivent l’authentification par mot de passe.PubkeyAuthentication yes: force l’usage des clés publiques.
ℹ️ Note
Sur Windows Server 2025 et versions ultérieures, les restrictions de groupe SSH sont activées par défaut.
Assurez-vous que le groupe ou les utilisateurs existent et disposent de droits minimaux nécessaires.
Activez la journalisation détaillée pour audit :
LogLevel VERBOSE
Étape 7 : Vérifier les journaux
Affichez les événements récents avec PowerShell :
Get-WinEvent -LogName OpenSSH/Operational `
| Where-Object { $_.TimeCreated -ge (Get-Date).AddHours(-1) } `
| Select-Object TimeCreated, Id, LevelDisplayName, Message
Pour vérifier les journaux disponibles :
wevtutil el | findstr OpenSSH
Spécifiez le nom exact obtenu avec -LogName.
Conclusion
En configurant OpenSSH sur Windows Server, vous pouvez administrer votre serveur à distance de manière sécurisée, comme sur un système Linux.
En combinant authentification par clé, pare-feu et configuration fine du service, vous garantissez un accès distant fiable et protégé.
