PowerShell-Remoting, Hyper-V Manager: Fehler wegen Netzwerkverbindungstyp "Öffentlich"

    Remote AdministrationMöchte man auf einem Rechner WinRM aktivieren, dann kann es vor­kom­men, dass dies mit der Fehler­meldung scheitert, wo­nach ein Netzwerk vom Typ "Öffentlich" sei und die Firewall-Aus­nahme des­halb nicht funk­tioniere. Läuft Hyper-V unter Windows 10, dann blockiert der Default Switch das Ein­schalten von WinRM.

    WinRM wird für das PowerShell-Remoting sowie von Management-Tools wie dem Hyper-V Manager (seit Windows 10 und Server2016) benötigt. Man kann es inter­aktiv über PowerShell oder das Tool winrm aktivieren, als Alternative bieten sich die Gruppen­richtlinien an.

    Wirft der Hyper-V Manager die berüchtigte Meldung

    Fehler beim Versuch, eine Verbindung mit dem Server <Name> herzustellen. Vergewissern Sie sich, dass der Verwaltungsdienst für virtuelle Computer ausgeführt wird und Sie zum Herstellen einer Verbindung mit dem Server berechtigt sind.

    aus, dann sollte man als nicht-privilegierter Benutzer erst klären, ob man die nötigen Rechte hat.

    Fehlermeldung von Hyper-V Manager, wenn am Ziel-PC WinRM nicht aktiviert ist.

    WinRM aktivieren

    Liegt es aber tatsächlich daran, dass am Zielrechner WinRM nicht aktiviert ist, dann kann man das mit dem PowerShell-Cmdlet

    Enable-Remoting

    oder mit

    winrm quickconfig

    nachholen.

    Hierbei kann es zu folgendem Fehler kommen:

    Fehlernummer: -2144108183 0x80338169

    Die WinRM-Firewallausnahme funktioniert nicht, da einer der Netzwerk­verbindungs­typen auf diesem Computer auf "Öffentlich" festgelegt ist. Ändern Sie den Netzwerk­verbindungs­typ entweder in "Domäne" oder in "Privat", und wiederholen Sie den Vorgang.

    Meldung von winrm quickconfig, wenn das Remote-Management über ein Netzwerk vom Typ 'Öffentlich' erfolgen würde.

    Microsoft sieht offensichtlich ein Risiko darin, das Remote-Management über ein Netzwerk vom Typ Public zuzulassen. Ein gängiger Tipp besteht in dieser Situation darin,

    Enable-Remoting -SkipNetworkProfileCheck

    aufzurufen. Damit umgeht man die Prüfung des Netzwerktyps und erlaubt auch Zugriffe über öffentliche Netzwerke im gleichen Subnetz.

    Bevor man dieses möglicher­weise unsichere Vorgehen wählt, sollte man dem Rat der Fehlermeldung folgen und die Netzwerk­verbindungen darauf prüfen, ob sie vom Typ "Öffentlich" sind und sie ggf. auf "Privat" zu ändern.

    Netzwerk vom Typ 'Öffentlich' im Netzwerk- und Freigabecenter

    Das kann man über die GUI des Netzwerk -und Freigabecenters tun oder mittels PowerShell:

    Get-NetConnectionProfile

    Windows 10 bietet darüber hinaus in der App Einstellungen unter Netzwerk und Internet => Ethernet die Möglichkeit, eine Verbindung von "Öffentlich" auf "Privat" umzuschalten.

    Typ des Netzwerks ändern in der App Einstellungen

    Mit PowerShell lässt sich dieses Ziel durch

    Get-NetConnectionProfile | Set-NetConnectionProfile -NetworkCategory Private

    für alle Interfaces erreichen.

    Keine Typänderung für Domänennetzwerke

    Das Ändern des Verbindungs­typs klappt aber generell nicht für Domänen­netzwerke, Domain­Authenticated wird nur automatisch vergeben. Dennoch kann es passieren, dass man auf einem PC mit Windows 10 Hyper-V die obige Fehler­meldung beim Aktivieren von WinRM erhält, wenn er Mitglied in einer Domäne ist.

    Ursache des Übels ist der mit dem Release 1709 eingeführte Standard-Switch, dessen NAT-Netzwerk sich offenbar als "Öffentlich" zu erkennen gibt. Allerdings lässt sich das mit

    Get-NetConnectionProfile -NetworkCategory Public

    nicht anzeigen.

    Nachdem sich der Default Switch weder ändern noch löschen lässt, braucht man hier eine alternative Lösung. Nachdem "Die WinRM-Firewallausnahme funktioniert nicht" letztlich nichts anderes bedeutet als dass die Regel Windows Remoteverwaltung (HTTP eingehend) für die Profile Domäne und Privat nicht aktiviert wurde, muss man das selbst nachholen.

    Eingehende Firewall-Regel für WinRM

    Dafür bietet sich entweder die GUI von Windows Firewall mit erweiterter Sicherheit an oder einfach der PowerShell-Befehl

    Set-NetFirewallRule -Name WINRM-HTTP-In-TCP-NoScope -Profile Domain -Enabled True

    Alternativ könnte man den Standard Switch mit

    Disable-NetAdapter -Name "vEthernet (Default Switch)"

    temporär deaktivieren und danach erneut

    winrm quickconfig

    ausführen. Permanent abschalten lässt er sich ohnehin nicht, nach dem nächsten Reboot ist er wieder zurück.

    Standard-Switch von Hyper-V über die GUI deaktivieren

    Bei dieser Methode sollte man mit

    Get-NetFirewallRule -Name WINRM-HTTP-In-TCP-NoScope

    prüfen, ob die Firewall-Ausnahme wirklich gesetzt wurde.

    1 Kommentar

    Bild von Sergej Wenzel
    Sergej Wenzel sagt:
    17. Juli 2019 - 8:18

    Danke für den TIP!

    genau damit habe ich mich am Wochenende beschäftigt und kam nicht weiter.