2013-06-24 4 views
9

Ich testen WinRM-Verbindung mithilfe der Eingabeaufforderung auf meinem lokalen und Remote-Computer und meine Frage ist in zwei Teile geteilt.Konfigurieren und zuhören erfolgreich mit WinRM in Powershell

TEIL I

I getestet TCP/IP-Konnektivität durch Ping-Befehl ping verwenden: IP-Adresse des lokalen Computers und Remote-Computer, Standard-Gateway und DNS-Server und es läuft perfekt auf lokalen und Remote-Computer.

Aber bei der Verwendung von WinRM Befehlen zu testen, habe ich diesen Befehl Hörer und Adressen

winrm e winrm/config/listener 

Es gibt mir diese Ausgabe für meinen lokalen Rechner

Listener 
Address = * 
Transport = HTTP 
Port = 5985 
Hostname 
Enabled = true 
URLPrefix = wsman 
CertificateThumbprint 
ListeningOn =<IP Address>,127.0.0.1, ::1,fe80::100:7f:fffe%13,fe80::803:5e43:50ef:c50%11 

zu lokalisieren Aber der gleiche Befehl, wenn ich laufe auf Remote-Maschine gibt mir eine Ausgabe mit allem anderen gleich, außer

Listener[Source="GPO"] 
. 
. 
. 
ListeningOn=null 

Ich möchte es so konfigurieren, dass es korrekt hört.

TEIL II

Und wenn ich diese Befehle einen nach dem anderen auf meinem Remote-Rechner laufen

winrm id -r:<machine name> 
winrm get winrm/config -r:<machine name> 
winrm get wmicimv2/Win32_Service?Name = WinRM -r:<machine name> 

Es gibt einen WSMan Fehler mit einer Fehlermeldung wie:

The client cannot connect to the destination specified in the request. Verify 
that the service on the destination is running and is accepting requests.Consult 
the logs and documentation for WS-Management service running on the destination, 
most commonly IIs or WinRM. If the destination is the WinRM service, run the 
following command on the destination to analyse and configure the WinRM service: 
"winrm quickconfig". 

Ange Die gleichen Befehle, wenn ich auf meinem lokalen Rechner laufe, werden korrekt ausgeführt.

winrm id 
winrm get winrm/config 
winrm get wmicimv2/Win32_Service?Name = WinRM 

In den meisten Fällen sind alle Probleme auf meinem Remote-Computer. Was verursacht dies und wie kann ich es so konfigurieren, dass es erfolgreich zuhören und eine Verbindung herstellen kann? Danke.


Teil II, ich bin jetzt in der Lage, diese auf einer meiner anderen Remote-Maschinen mit korrekter Ausgabe auszuführen.

Ich machte einige Änderungen in dieser bestimmten Remote-Maschine, für die ich die Frage gestellt hatte, und so, würde es diese Befehle nicht ausführen, bis ich den Teil I repariere, aber abgesehen davon, wenn nichts geändert wurde, wird es genau so laufen tut es auf meinen anderen Remote-Maschinen.

würde ich immer noch dankbar, wenn mir jemand mit einem Teil helfen könnte ich in dem habe ich von

Listener[Source=GPO] 
.. 
. 
ListeningOn=null 

loszuwerden, wenn ich den Befehl ausführen

winrm e winrm/config/listener 

, weil das ist, was verursacht Probleme ist aber ich bin mir nicht sicher, wie Gruppenrichtlinieneinstellungen deaktiviert/entfernt werden.

+0

Stellt 'telnet 5985' eine Verbindung her? Auf welcher "lokalen Maschine" bekommen Sie welchen Ausgang für 'ListeningOn'? Haben Sie 'winrm qc' auf beiden Hosts ausgeführt? –

+0

Ja, ich habe winrm qc sowohl auf der lokalen als auch auf der Remote-Maschine ausgeführt und beide liefern mir die korrekte Ausgabe, dass winRM eingerichtet ist. Und ich habe gerade eine Korrektur in meiner Frage gemacht, 'ListeningOn = null' ist auf dem entfernten Rechner. – sanya

+0

Überprüfen Sie, ob auf dem Remote-Host eine Richtlinie vorhanden ist, die verhindert, dass WinRM zuhören kann. Haben Sie versucht, den Listener auf dem Remote-Host zu aktivieren? ('winrm set winrm/config/Listener?Adresse = * + Transport = HTTP @ {Enabled = "true"} ') –

Antwort

10

Um zu bestimmen, welche Gruppenrichtlinie Ihre WinRM Konfigurieren Sie die folgenden von einer administrativen Eingabeaufforderung ausführen können:

gpresult /h result.html & result.html 

Im angezeigten Ergebnis lokalisieren Windows-Komponenten/Windows Remote Management (WinRM)/WinRM-Service. Im Gruppen-GPO können Sie GPO-Einstellungen aktivieren/deaktivieren. Verwenden Sie GPMC (Group Policy Management Console) zum Verwalten der Gruppenrichtlinie.

ListeningOn = null werden angezeigt, wenn ein Administrator falsch die Gruppenrichtlinien IPv4 Filtereinstellung in erlaubt die automatische Konfiguration von Hörern in der Regel mit einem IP-oder Netzwerk, das auf dem betroffenen Server existiert nicht konfiguriert hat.

3

hatte ich das gleiche Problem und fand, dass, wenn die Einstellung GPO: Remote-Server-Management erlauben durch WinRM ein IPv4-Filter auf die IP-Adresse meines jumphost der winrm e winrm/config/listener Befehl hatte die ListeningOn=null Ausgabe erzeugt.

Ich löste dies, indem Sie den Filter auf * setzen und die Berechtigungen auf Firewall-Ebene stattdessen sortieren.

2

Um die IP-Adressen (ListeningOn) zurückzusetzen, müssen Sie wahrscheinlich den Listener neu erstellen (entfernen Sie den alten HTTP-Listener und erstellen Sie einen neuen). Bitte finden Sie das Beispiel unten.


In Powershell:

Remove-WSManInstance winrm/config/Listener -SelectorSet @{Address="*";Transport="http"} 
New-WSManInstance winrm/config/Listener -SelectorSet @{Address="*";Transport="http"} 

Hier ist die Syntax für die bestimmte IP-Adresse zu binden:

New-WSManInstance winrm/config/Listener -SelectorSet @{Address="IP:192.168.100.2";Transport="http"} 

In Eingabeaufforderung:

winrm delete winrm/config/Listener?Address=*+Transport=HTTP 
winrm create winrm/config/Listener?Address=*+Transport=HTTP 

Weiterführende Literatur:

In Verbindung stehende Frage: Allow PowerShell remoting only from one address.