Dmitry Nikolaev - stock.adobe.co

OpenSSH mit Windows Server 2019 und Windows 10 einsetzen

Linux-Server lassen sich von Windows-Servern aus remote mit SSH verwalten. Das funktioniert in Windows Server 2019 auch in die andere Richtung.

Über den Link Optionale Features verwalten, der in der Einstellungs-App von Windows Server 2019 und Windows 10 zur Verfügung steht, lassen sich Betriebssystem-Funktionen installieren, die nicht über den Server-Manager verfügbar sind.

Dazu gehört auch die Implementation von OpenSSH. Wird der OpenSSH-Server in der grafischen Oberfläche nicht angezeigt, muss er über die PowerShell installiert werden. Danach ist der Server auch hier zu sehen, zum Beispiel um ihn auch wieder zu deinstallieren.

OpenSSH unter Windows Server 2019 und Windows 10 installieren

Die Installation kann aber auch in der PowerShell mit dem folgenden Befehl erfolgen:

Get-WindowsCapability -Online | ? name -like *OpenSSH.Server* |

Add-WindowsCapability -Online

Für die Installation sollte der Server aber auf den neusten Stand gebracht werden. Dazu muss das aktuelle, kumulative Update für Windows Server 2019 über die Update-Funktion installiert werden.

Abbildung 1: OpenSSH kann unter Windows 10 und Windows Server 2019 über die PowerShell installiert werden.
Abbildung 1: OpenSSH kann unter Windows 10 und Windows Server 2019 über die PowerShell installiert werden.

Nach der Installation müssen die Systemdienste des OpenSSH-Servers noch aktiviert und gestartet werden. Wer OpenSSH auch beim Windows-Start automatisch aktivieren will, setzten den Start-Typ des Dienstes auf Automatisch und startet die Dienste gleich:

Set-Service sshd -StartupType Automatic

Set-Service ssh-agent -StartupType Automatic

Start-Service sshd

Start-Service ssh-agent

Ob der Dienst gestartet ist, zeigt der folgende Befehl an:

Get-Service -Name *ssh* | select DisplayName, Status, StartType

Ob der Server eingehende SSH-Verbindungen akzeptiert, hängt auch von der Konfiguration der Windows-Firewall ab. Hier kann ebenfalls mit der PowerShell überprüft werden, ob die entsprechende Firewall-Regel aktiviert wurde:

Get-NetFirewallRule -Name *SSH*

Die „Action“ für die Regel muss dazu auf „Allow“ stehen.

Abbildung 2: In der PowerShell lässt sich die die Firewall-Regel für OpenSSH überprüfen.
Abbildung 2: In der PowerShell lässt sich die die Firewall-Regel für OpenSSH überprüfen.

OpenSSH in der Praxis einsetzen

Die Verbindung zum OpenSSH-Server in Windows wird mit dem folgenden Befehl aufgebaut:

ssh <Name oder IP>

Die Verbindung erfolgt standardmäßig mit dem lokalen Administrator-Konto. Für dieses muss zur Verbindung auch das Kennwort eingegeben werden. Wer produktiven OpenSSH für die Verwaltung von Windows-Servern nutzen möchte, sollte allerdings besser auf die Public-Key-Authentifizierung setzen. Das erleichtert die Verbindung, und es ist keine Eingabe des Kennworts mehr notwendig.

Danach öffnet sich die Befehlszeile und die Befehle werden per SSH an den Server weitergegeben. Dadurch kann über das Netzwerk mit SSH ein Windows-Server oder eine Windows-Arbeitsstation verwaltet werden. Standardmäßig wird eine Eingabeaufforderung geöffnet. Von hier aus kann der Server remote über das Netzwerk verwaltet werden.

Mit dem Befehl powershell kann eine PowerShell-Sitzung innerhalb der SSH-Eingabeaufforderung gestartet werden. Das ermöglicht auch die Verwendung der PowerShell zur Remote-Verwaltung in einem zentralen Fenster. Natürlich kann auch parallel weiter mit der PowerShell remote gearbeitet werden, auch ohne SSH zu verwenden.

Linux-Subsystem für Windows und SSH nutzen

Die Windows Defender-Firewall in Windows 10 kann Firewall-Regeln für jeden Prozess im Windows Subsystem for Linux (WSL) erstellen. So können zum Beispiel auch hier SSH-Server betrieben werden, oder ausgehende Verbindung von Linux-Prozessen gesteuert werden.

Die ausgehenden Prozesse können sich mit Linux-Servern genauso verbinden, wie mit dem lokalen Windows-System. Vor allem in hybriden Netzwerken, in denen Linux und Windows parallel eingesetzt werden, kann das Windows Subsystem for Linux (WSL) sinnvoll sein, da die Linux-Befehle direkt in Windows zur Verfügung stehen.

Nächste Schritte

Windows Server 2019: Security per Windows Admin Center

Das Windows Subsystem for Linux im Überblick

Windows Server 2019: Die Firewall steuern

Erfahren Sie mehr über Serverbetriebssysteme