SSH-Key mit Windows Bordmitteln erstellen

SSH-Keys bieten gegenüber der Anmeldung mit Username und Passwort deutlich mehr Sicherheit. Erzeugt wird das Schlüsselpaar auf dem Client (PC oder Notebook), nicht auf dem Server.

Der private SSH-Key bleibt auf dem eigenen Rechner – und damit geheim. Du sparst dir den Anmeldedialog und sorgst gleichzeitig für eine noch größere Sicherheit. Seit Version 1709 hat Windows 10 einen integrierten SSH-Client und -Server erhalten. Der OpenSSH-Client ist mittlerweile bereits standardmäßig installiert. Ein separates Programm wie PuTTY wird also nicht mehr benötigt.

Das Ganze funktioniert relativ einfach mit dem Befehl ssh direkt aus der Eingabeeinforderung oder der PowerShell. Es können auch SSH-Keys erzeugt werden. Das wollen wir jetzt tun. Starte dazu die Windows PowerShell, und gebe ein:

ssh-keygen -t rsa -b 4096 -C "admin@host.de"

Die Parameter nach dem eigentlichen Befehl sind optional und steuern den Typ des zu erstellenden Schlüssels und die Bitlänge. Der Kommentar ersetzt den vom Utility automatisch generierten Kommentar zusammengesetzt aus Benutzer und Rechnername. Hier hat sich die Angabe der Email-Adresse bewährt, wenn man den Key für verschiedene Dienste nutzt. Nach drücken der Enter-Taste wird ähnlich zu Linux-Systemen der Standard-Pfad und -Dateiname für den Key vorgeschlagen. Diese solltet ihr beibehalten, da Windows bei einer Serveranmeldung standardmäßig hier nachschaut.

Enter passphrase (empty for no passphrase):
Enter same passphrase again:

Jetzt könnt ihr eine Passphrase vergeben. Obwohl dieser Schritt optional ist, dort sollte man unbedingt ein Kennwort vergeben. Das würde sonst dem Szenario gleich kommen, deine EC-Karte ohne PIN zu betreiben!

PS C:\Users\User> ssh-keygen -t rsa -b 4096 -C "admin@host.de"
Generating public/private rsa key pair.
Enter file in which to save the key (C:\Users\User/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in C:\Users\User/.ssh/id_rsa.
Your public key has been saved in C:\Users\User/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:3GXM/U6L0FHkYiUI+CP0yAcp8l2tk2f9KzEgYuWHjiA admin@host.de
The key's randomart image is:
+---[RSA 4096]----+
|   o. ...        |
|  o    .   + +.**|
|   o      . o oo=|
|  . .      . o . |
|   .          .  |
|E = .o . o . .   |
|.+ *. o o o = . .|
|    . + o+oE. .  |
|   . o.o + .     |
+-----------------+
PS C:\Users\User>

Bevor du mit deinem SSH-Schlüssel eine Verbindung zu einem vorhandenen Server herstellst, musst du den öffentlichen Teil zur Datei ~/.ssh/authorized_keys hinzufügen. Wie das funktioniert habe ich in einem weiteren Beitrag beschrieben.

Posted in Web
Scroll to top