Wie man Windows-Fehler behebt: "Der WinRM-Client kann die Anfrage nicht verarbeiten"
Der Fehler Windows Remote Management (WinRM) tritt normalerweise auf, wenn das System keine sichere Verbindung zwischen dem lokalen Computer und dem Remote-Host herstellen kann.
Fehlerübersicht und häufige Ursachen
Dieser Fehlercode tritt typischerweise bei der Verwendung von PowerShell Remote, der Verwaltung von Hyper-V-Servern oder dem Ausführen von administrativen Skripten auf.
- Disabled WinRM Service: Der Dienst läuft weder auf dem lokalen noch auf dem entfernten Rechner.
- Authentication Issues: Windows blockiert die Verbindung, weil der Remote-Host nicht vertrauenswürdig ist.
- Network Location Profile: Das Netzwerkprofil ist auf "Public" eingestellt, was den WinRM-Verkehr automatisch blockiert.
- Firewall Blockage: Windows-Firewall oder Sicherheitssoftware eines Drittanbieters blockiert Port 5985 (HTTP) oder Port 5986 (HTTPS).
- Incorrect Execution Policy: PowerShell-Einschränkungen verhindern die Remote-Ausführung von Skripten.
Schrittweise Lösungen
Folgen Sie diesen Lösungen in der Reihenfolge. Sie müssen PowerShell oder die Eingabeaufforderung als Administrator ausführen, um diese Befehle auszuführen.
Korrektur 1: Aktivieren und Starten des WinRM-Dienstes
Der absolute erste Schritt besteht darin, sicherzustellen, dass der WinRM-Dienst ordnungsgemäß ausgeführt und so konfiguriert ist, dass er auf beiden Computern automatisch gestartet wird.
- Drücken Sie die... Windows Key, Typ
powershellMit der rechten Maustaste. Windows PowerShell, und wählen Run as administrator. - Geben Sie den folgenden Befehl ein, um den WinRM-Dienst zu konfigurieren, und drücken Sie Enter:
winrm quickconfig - If prompted to confirm changes (such as creating exceptions in the firewall or changing the service startup type), type
y(Ja) und drücken. Enter. - Als nächstes müssen Sie den WinRM-Dienst manuell starten, um sicherzustellen, dass er aktiv ist:
Start-Service WinRM - Setzen Sie den Service-Startup-Typ auf automatisch, damit er bei jedem Windows-Boot ausgeführt wird:
Set-Service WinRM -StartupType Automatic
Korrektur 2: Fügen Sie den Remote-Host zur Liste der vertrauenswürdigen Hosts hinzu
Windows security rules block remote connections unless the target machine is explicitly trusted. You must configure the TrustedHosts Einstellungen auf Ihrem Clientcomputer.
- Öffnen. Windows PowerShell als Administrator.
- Um Verbindungen zu ermöglichen. any computer (best for testing or internal private networks), type this command and press Enter:
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "*" -Force - Wenn Sie nur einem bestimmten Computer für eine bessere Sicherheit vertrauen möchten, ersetzen Sie das Sternchen durch die entfernte IP-Adresse oder den Hostnamen:
Set-Item WSMan:\localhost\Client\TrustedHosts -Value "192.168.1.50" -Force - Neustart des WinRM-Dienstes, um die neue Konfiguration anzuwenden:
Restart-Service WinRM
Lösung 3: Das Netzwerkprofil auf Privat ändern
WinRM wird Verbindungen ablehnen, wenn Ihre aktive Netzwerkverbindung als "öffentlich" eingestuft ist, da Windows die Sicherheit an öffentlichen Orten abschließt.
- Öffnen. Windows PowerShell als Administrator.
- Überprüfen Sie den aktuellen Netzwerkstatus:
Get-NetConnectionProfile - Sieh dir das an.
NetworkCategoryWenn es so steht: Public, kopieren Sie den Namen nebenName. - Ändern Sie das Netzwerkprofil auf Private durch Ausführen des folgenden Befehls (Replace
YourNetworkNamemit Ihrem tatsächlichen Netzwerknamen):Set-NetConnectionProfile -Name "YourNetworkName" -NetworkCategory Private
Korrektur 4: WinRM-Ports über die Windows-Firewall zulassen
Selbst wenn der Dienst ausgeführt wird, kann die lokale Firewall eingehende oder ausgehende Managementanfragen aktiv fallen lassen.
- Öffnen. Windows PowerShell als Administrator.
- Führen Sie diesen Befehl aus, um eine neue Firewall-Regel zu erstellen, die WinRM HTTP-Verkehr (Port 5985) zulässt:
New-NetFirewallRule -DisplayName "Allow WinRM HTTP" -Direction Inbound -LocalPort 5985 -Protocol TCP -Action Allow - Wenn Ihre Umgebung HTTPS-Verbindungen verwendet, öffnen Sie auch Port 5986:
New-NetFirewallRule -DisplayName "Allow WinRM HTTPS" -Direction Inbound -LocalPort 5986 -Protocol TCP -Action Allow
Korrektur 5: Richten Sie die Ausführungsrichtlinie von PowerShell an
Eine zu restriktive Ausführungsrichtlinie kann verhindern, dass Windows die für die Initialisierung einer Remote-Sitzung erforderlichen Skripte verarbeitet.
- Öffnen. Windows PowerShell als Administrator.
- Überprüfen Sie Ihre aktuelle Ausführungsrichtlinie:
Get-ExecutionPolicy - Wenn die Richtlinie so eingestellt ist...
RestrictedÄndern Sie es in...RemoteSignedoder...Bypassum lokale Bewirtschaftungsmaßnahmen zu ermöglichen:Set-ExecutionPolicy RemoteSigned -Force
Überprüfung der Lösung
Sobald Sie die oben genannten Schritte abgeschlossen haben, können Sie überprüfen, ob der WinRM-Client Anfragen ordnungsgemäß verarbeiten kann. Führen Sie den folgenden Befehl in PowerShell aus, um eine lokale Loopback-Verbindung zu testen:
Test-WSMan
Bei Erfolg wird der Befehl Informationen über die WS-Management-Serviceversion und die Stackversion anzeigen, was bedeutet, dass Ihr WinRM-Client wieder voll funktionsfähig ist.
ERROR_WSMAN_INVALID_PUBLISHERS_TYPE | ERROR_WSMAN_CLIENT_INVALID_DELIVERY_RETRY | ERROR_WSMAN_CLIENT_NULL_ISSUERS | ERROR_WSMAN_CLIENT_NO_SOURCES | ERROR_WSMAN_INVALID_SUBSCRIBE_OBJECTEs kann einige Fehler geben.. Learn Microsoft