Remote-Zugriff für WMI konfigurieren und testen

    Firewall-Regeln für eingehende WMI-AbfragenDie Windows Verwaltungsinstrumentation (WMI) hat sich als mächtige Schnittstelle für zahlreiche Monitoring- und Management-Tools etabliert, über die sie fast beliebige Systeminformationen auslesen oder Aktionen starten können. Allerdings kann WMI aufgrund der zahlreichen involvierten Komponenten immer wieder Probleme bereiten, deren Ursachen sich relativ schwer diagnostizieren lassen. Mehrere einschlägige Tools helfen dabei.

    Die naheliegende Voraussetzung dafür, dass WMI-Abfragen remote funktionieren, besteht darin, dass die dafür nötigen Windows-Dienste auf dem Zielrechner gestartet wurden. Erforderlich sind dafür neben dem WMI-Service winmgmt auch DCOM. Beide werden normalerweise per Voreinstellung automatisch gestartet.

    Verbindung zu Remote-PC prüfen

    Wenn man prüfen möchte, ob sich ein entfernter Rechner via WMI abfragen lässt, dann kann man das auf der Kommandozeile mit Hilfe eines einfachen wmic-Aufrufs machen, also beispielsweise mit

    wmic /node:192.168.0.24 path win32_operatingsystem get caption

    Wer grafische Tools bevorzugt, kann zur Prüfung der Verbindung das MMC-Snap-in wmimgmt.msc bemühen. Es bietet unter dem Menüpunkt Aktion den Befehl Verbindung mit anderem Computer herstellen. Nachdem man dies getan hat, öffnet man im linken Fenster das Kontextmenü von WMI-Steuerung und wählt dort Eigenschaften. Der anschließende Dialog startet automatisch eine einfache WMI-Anfrage an den entfernten Rechner.

    Mit Hilfe des MMC-Snap-in wmimgmt.msc kann man leicht herausfinden, ob ein entfernter Rechner WMI-Anfragen akzeptiert.

    Etwas mehr Möglichkeiten bietet der kostenlose Paessler WMI Tester, bei dem man einer Testabfrage zusätzlich die Anmeldedaten eines anderen Users mitgeben sowie eine Domäne spezifizieren kann. Darüber hinaus lässt sich der WMI-Namespace wählen und der Port für den DCOM-RPC anpassen.

    Beim Versuch einer der WMI-Abfrage eines entfernten Rechners scheitert gerne mit der Fehlermeldung, dass der RPC-Server nicht erreichbar sei. Wie beim Zugriff auf andere Windows-Dienste liegt das Problem hier meistens an einer nicht korrekt konfigurierten Firewall am Zielrechner, so dass diese keinen Zugriff erlaubt.

    WMI-Anfragen an einen Remote-PC scheitern häufig daran, dass sie von der Windows-Firewall blockiert werden.

    Firewall-Regeln für WMI aktivieren

    Im Fall von WMI muss man die dafür vordefinierte Regelgruppe in der Firewall aktivieren, um Anfragen von anderen Rechnern durchzulassen. Am schnellsten geht das mit Hilfe von netsh:

    netsh advfirewall firewall set rule group="Windows-Verwaltungsinstrumentation (WMI)" new enable=yes

    Wenn man die Firewall auf vielen Windows-PCs in einer Domäne für entfernte WMI-Abfragen öffnen möchte, dann kann man diese über die Gruppenrichtlinie Windows Firewall: eingehende Remoteverwaltungsausnahme zulassen tun. Sie findet sich unter Computerkonfiguration => Administrative Vorlagen => Netzwerk => Netzwerkverbindungen => Windows-Firewall.

    Wie der Name schon besagt, schaltet dieses GPO allerdings nicht nur WMI-Anfragen frei, sondern öffnet u.a. auch Ports für die Fernwartung mit MMC. Störend ist zudem, dass die administrativen Vorlagen von Windows Server 2008 R2 nur die XP-Profile Standard und Domäne für Firewall-Regeln kennen, während es unter Windows 7 deren 3, nämlich Domäne, privat und öffentlich gibt.

    Fehlersuche mit dem WMI Diagnosis Utility

    Für WMI-Probleme können jedoch nicht nur Schwierigkeiten mit der Verbindung verantwortlich sein, vielmehr gibt es dafür zahlreiche Ursachen. Dazu zählen beispielsweise ein beschädigtes Repository, fehlende Rechte für den Zugriff auf Namespaces oder Probleme mit WMI-Providern. Um in solchen Fällen den Ursachen auf die Schliche zu kommen, bedarf es eines entsprechenden Diagnose-Tools.

    Microsoft stellt mit dem WMI Diagnosis Utility ein solches Werkzeug zur Verfügung. Es handelt sich dabei um ein vbs-Script, das lokal auf dem Ziel-Computer ausgeführt werden muss. Es untersucht alle erdenklichen Aspekte der WMI-Konfiguration und hilft auch mit Vorschlägen zur Problemlösung. So entdeckt es auch eine nicht korrekt eingestellte Firewall und zeigt den entsprechenden netsh-Aufruf an, mit dem die zuständigen Regeln aktivieren kann - allerdings in der englischen Version, die auf einem deutschen Windows fehlschlägt.

    2 Kommentare

    Bild von Ede
    Ede sagt:
    8. August 2013 - 14:45

    Sehr interessant, aber nichts dafür hilft. Ich habe mir Entwicklertools für ein PC-Spiel heruntergeladen. Mit dem man selbst Items im Spiel erstellen kann und sogar Zusatzinhalte. Leider benötigt dieses Programm einen SQL-Server 2005 Express auf meinem Rechner. Bei der Installation des SQL SErvers tritt aber immer ein Fehler auf, der die Installation sofort abbricht. Er behauptet aufgrund meiner WMI-Konfiguration wäre eine Installation nicht möglich.

    Ich habe das gesamte Netz durchstöbert und nichts hat geholfen. Eine Batch-Datei, die WMI wieder herstellt bzw. wieder auf Ursprungszustand setzt bzw. repariert. Zugriffsrechte habe ich auch, daran kann es nicht liegen. Das Testtool sagt auch alles wäre in Ordnung. Nur das Diagnosetool gibt an, dass bestimmte Klassen etc. nicht vorhanden wären. Was mir auch auffällt, dass er ständig etwas von Zugriff verweigert in der DOS-Box faselt, obwohl ich volle Zugriffsberechtigung habe und die DOS-Box als Administrator gestartet habe. Dann kamen Experten, die behaupteten ich müsse etwas in der Registry ändern. Habe ich auch getan, Ergebnis das Gleiche, die Installation bricht ab.

    Windows 7 lässt sich auch nicht so ohne weiteres reparieren oder neu installieren, weil es keine Installations-CD mehr gibt. Ich persönlich habe es aufgegeben. Doch mich würde interessieren, ob jemand eine Ahnung hat wieso ich offensichtlich so eine Fehlermeldung erhalte bzw. er mir sagt, dass der Zugriff verweigert wird, obwohl ich volle Zugriffsrechte habe. Ich habe auch mit einem DOS-Befehl überprüft, ob meine System32-Dateien beschädigt sind. Nichts, alles in Ordnung. Firewall ist bei mir standardmäßig deaktiviert und Virenscanner hatte ich versuchsweie auch deaktiviert. Bringt alles nichts.

    Es muss doch eine logische Erklärung dafür geben oder muss ich ein physikalisch vorhandenes Heimnetzwerk besitzen, um SQL-Express zu installieren?

    Bild von tr0y
    tr0y sagt:
    3. September 2013 - 2:22

    Hallo Ede,

    Du kannst dir das Installation-Medium deiner Windows 7 Version bei Microsoft kostenlos herunterladen. Die Links dazu findest du unter anderem in diesem Foren-Beitrag:

    http://answers.microsoft.com/de-de/windows/forum/windows_7-windows_insta...

    Für die Installation von SQLexpress ist nicht zwingend ein reales Netzwerk nötig, allerdings ist so eine Bedingung auch hinfällig, da dein Windows-System automatisch eins erzeugt ( durch den Loopback-Adapter ).

    Beste Grüße, tr0y.