Wie Sie vielleicht schon wissen, enthält Windows 10 eine integrierte SSH-Software – sowohl einen Client als auch einen Server! In diesem Artikel erfahren Sie, wie Sie den SSH-Server aktivieren können.
Hinweis
Hinweis: Mit der OpenSSH-Server-App können Sie eine Verbindung zu Ihrem Computer über das SSH-Protokoll herstellen. Sie erlaubt es Ihnen nicht, auf andere Computer in Ihrem Netzwerk zuzugreifen. Um eine Verbindung zu anderen Computern herzustellen, sollten Sie den OpenSSH-Client installieren.
Mit Windows 10 hat Microsoft endlich auf seine Nutzer gehört, nachdem diese jahrelang nach einem SSH-Client und -Server gefragt haben. Durch die Einbindung einer OpenSSH-Implementierung wird der Wert des Betriebssystems erhöht.
Zum Zeitpunkt der Erstellung dieses Artikels befindet sich die in Windows 10 enthaltene OpenSSH-Software in einem BETA-Stadium. Das bedeutet, dass sie einige Stabilitätsprobleme haben kann.
Der mitgelieferte SSH-Server ist ähnlich wie die Linux-App. Auf den ersten Blick scheint er die gleichen Funktionen zu unterstützen wie sein *NIX-Pendant. Es handelt sich um eine Konsolen-App, die aber als Windows-Dienst arbeitet.
Lassen Sie uns sehen, wie man den OpenSSH-Server in Windows 10 aktiviert.
Aktivieren Sie den OpenSSH-Server in Windows 10
- Öffnen Sie die Einstellungen-App und gehen Sie zu Apps -> Apps & Funktionen.
- Klicken Sie auf der rechten Seite auf Optionale Funktionen verwalten.
- Klicken Sie auf der nächsten Seite auf die Schaltfläche Eine Funktion hinzufügen.
- In der Liste der Features wählen Sie OpenSSH Server aus und klicken auf die Schaltfläche Installieren.
- Starten Sie Windows 10 neu.
Damit wird die OpenSSH Server Software in Windows 10 installiert.
Die Binärdateien befinden sich im Ordner c:\windows\system32\Openssh
. Neben den SSH-Client-Anwendungen enthält der Ordner die folgenden Server-Tools:
- sftp-server.exe
- ssh-agent.exe
- ssh-keygen.exe
- sshd.exe
- und die Konfigurationsdatei “sshd_config”.
Der SSH-Server ist so konfiguriert, dass er als Dienst läuft.
Zum Zeitpunkt dieses Schreibens wird er nicht automatisch gestartet. Sie müssen ihn manuell konfigurieren.
So starten Sie den OpenSSH-Server in Windows 10
- Doppelklicken Sie auf den sshd-Eintrag in Dienste, um seine Eigenschaften zu öffnen.
- Auf der Registerkarte “Anmelden” sehen Sie das Benutzerkonto, das vom sshd-Server verwendet wird. In meinem Fall ist es NT Service\sshd.
- Nun öffnen Sie eine erweiterte Eingabeaufforderung.
- Gehen Sie mit dem Befehl
cd c:\windows\system32\Openssh
in das Verzeichnis c:\windows\system32\Openssh. - Hier führen Sie den Befehl
ssh-keygen -A
aus, um Sicherheitsschlüssel für den sshd-Server zu erzeugen. - Nun geben Sie in der erweiterten Eingabeaufforderung
explorer.exe .
ein, um den Datei-Explorer im OpenSSH-Ordner zu starten. - Update: Microsoft hat eine Anleitung veröffentlicht, die den Prozess der Rechtevergabe sehr einfach macht.
Öffnen Sie PowerShell als Administrator und führen Sie diese Befehle aus:Install-Module -Force OpenSSHUtilsRepair-SshdHostKeyPermission -FilePath C:\Windows\System32\OpenSSH\ssh_host_ed25519_key
Das war’s! Alle erforderlichen Berechtigungen sind gesetzt.
- Alternativ können Sie diese Schritte durchführen.
Klicken Sie mit der rechten Maustaste auf die Datei ssh_host_ed25519_key und ändern Sie die Eigentümerschaft auf den Benutzer des sshd-Dienstes, z. B. NT Service\sshd. - Klicken Sie auf “Add” und fügen Sie die Berechtigung “Read” für den Benutzer “NT Service\sshd” hinzu. Entfernen Sie nun alle anderen Berechtigungen, um etwas wie dieses zu erhalten:Klicken Sie auf “Apply” und bestätigen Sie den Vorgang.
- Schließlich öffnen Sie die Dienste (Drücken Sie die Tasten Win + R und geben Sie services.msc in das Feld “Ausführen” ein) und starten Sie den sshd-Dienst. Er sollte starten:
- Zulassen Sie den SSH-Port in der Windows-Firewall. Standardmäßig verwendet der Server den Port 22. Führen Sie diesen Befehl in einer erweiterten Eingabeaufforderung aus:
netsh advfirewall firewall add rule name="SSHD Port" dir=in action=allow protocol=TCP localport=22
Microsoft hat den folgenden alternativen Befehl für die PowerShell bereitgestellt:New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH Server (sshd)' -Service sshd -Enabled True -Direction Inbound -Protocol TCP -Action Allow -Profile Domain
- Schließlich legen Sie ein Kennwort für Ihr Benutzerkonto fest, wenn Sie es nicht haben.
Nun können Sie es in Aktion ausprobieren.
Verbinden mit dem SSH-Server in Windows 10
Öffnen Sie Ihren ssh-Client. Sie können ihn auf demselben Computer starten, z. B. mit dem eingebauten OpenSSH-Client, oder ihn von einem anderen Computer in Ihrem Netzwerk aus starten.
Im allgemeinen Fall lautet die Syntax für den OpenSSH-Konsolen-Client wie folgt:
ssh username@host -p port
In meinem Fall sieht der Befehl wie folgt aus:
ssh [email protected]
Wobei winaero mein Windows-Benutzername und 192.168.2.96 die IP-Adresse meines Windows-10-PCs ist. Ich werde mich von einem anderen PC, auf dem Arch Linux läuft, damit verbinden.
Endlich bist du drin!
Der Server führt klassische Windows-Konsolenbefehle aus, z.B. more, type, ver, copy.
Aber ich kann den FAR Manager nicht ausführen. Er erscheint schwarz-weiß und kaputt:
Eine weitere interessante Beobachtung: Man kann GUI-Apps wie den Explorer starten. Wenn Sie mit demselben Benutzerkonto angemeldet sind, das Sie für SSH verwenden, werden sie auf dem Desktop gestartet. Siehe:
Der eingebaute SSH-Server ist definitiv eine interessante Sache zum Spielen. Er ermöglicht es Ihnen, einen Windows-Rechner zu verwalten, ohne Tools wie rdesktop auf Ihrem Linux-Computer zu installieren, oder sogar Windows-Einstellungen von einem Linux-Computer aus zu ändern, auf dem kein X-Server installiert ist.
Zum Zeitpunkt dieses Schreibens befindet sich der eingebaute SSH-Server in Windows 10 in einem BETA-Stadium, so dass er in naher Zukunft noch interessanter und zu einer nützlichen Funktion werden sollte.
Unterstützen Sie uns
Winaero ist sehr auf Ihre Unterstützung angewiesen. Sie können der Seite helfen, Ihnen weiterhin interessante und nützliche Inhalte und Software zu bieten, indem Sie diese Optionen nutzen: