WSUS-Helper

Wenn man in einer Domäne sehr viele PCs zu betreuen hat können Fehler beim Patchmanagement per WSUS viel Arbeit machen. Die Maßnahmen um einzelne Fehler zu beseitigen sind bekannt, aber die Menge und die umständliche Handhabung kosten Zeit. Viele dieser Arbeiten habe ich automatisiert und in einem Tool zusammengefasst. Startet man den WSUS-Helper mit administrativen Rechten der Zielmaschinen (Administrator Account) kann man zügig eine Vielzahl von PCs bearbeiten.

Im einzelnen stehen folgende Funktionen zur Verfügung:

[Detect]
Der Client soll erforderliche Downloads sofort herunterladen.

[Report]
Der Client soll kurzfristig einen Report an WSUS senden.

[Reset ID]
Mit diesem Befehl werden die SusClientID, die PingID und die AccountDomainSid aus der Registry gelöscht. Einige Connectprobleme können damit gelöst werden.

[GPupdate]
Wenn man einen PC frisch in eine neue Policygruppe aufgenommen hat, möchte man nicht unbedingt warten müssen bis die Einstellungen greifen. Mit diesem Button wird auf dem Client "gpupdate /force" ausgeführt. Achtung! Die Usersettings des Accounts werden aktualisiert, mit dessen Rechten das Tool gestartet wurde. Für die WSUS Settings ist das nicht so tragisch. Sie liegen in der Computer Policy.

[Hidden Patches]
Ein User hat die Möglichkeit bei der Benutzergesteuerten Installation Windows Updates dauerhaft abzulehnen. Mit dieser Funktion kann man sich alle Patche anzeigen lassen, die der User lokal abgelehnt hat.

[Unhide Patches]
Hiermit kann man alle abgelehnte Patche wider anweisen. Innerhalb von ca. 15 sec. meldet sich das WSUS-Symbol zurück im Tray und bietet die Installation an.
Um PCs zu finden, die Updates abgelehnt haben, kann man auf dem WSUS-Server ein kleines Programm laufen lassen, das eine entsprechende Liste erzeugt. Alles weitere finden sie unter Versteckte Microsoft Updates aufspüren (Hidden Updates) auf dieser Webseite.

[Rep. WBEM]
Mit diesem Befehl kann man das WMI-Repository reparieren. Die Batchdatei, die dabei ausgeführt wird, kann man hier sehen. 

[Force Patching]
Wenn dieser Befehl ausgeführt wird, wird der Client in der Regel innerhalb von ca. 5 Minuten mit dem Patchen beginnen. Unabhängig davon welchen Status er hat.
Dabei wird dem WUSU-Agent durch Manipulation der Registry vorgegaugelt, dass das letzte Patchen im Januar 2006 erfolgt ist.

[Clear Downloads]
Die vom ESUS-Agent herunter geladenen Patche liegen im Ordner %systemroot%\Softwaredistribution\ . Bei manchen Problemen ist es hilfreich diesen Ordner komplett zu löschen (z.B. wenn ein Patch nur Fehlerhaft ausgeführt wird und andere blockiert und deshalb zurückgezogen wurde).

[Reinstall Agent]
Diese Action installiert den WSUS-Agenten mit den Schaltern /wuforce /quiet /norestart neu. Die Action [Reset Client ID] wird automatisch mit ausgeführt. Zusammen mit [Clear Downloads] kann man so fast alle Probleme "brutal" lösen.

[ETrace on]
Mit diesem Schalter kann man das "Erweiterte Tracing" im in WindowsUpdate.log einschalten. Das kann bei der Fehlersuche unter Umständen helfen. Da die Logs dann sehr groß werden können, sollte man es nach Ende der Arbeit mit [ETrace off] wieder abschalten.

[Logfile]
Alle Ausgaben des Fensters [Logging] werden dauerhaft in die Datei WSUShelper.log geschrieben um die Arbeit über Tage/Wochen/Monate dokumentieren zu können. Mit dem Button [Logfile] wird dieses Logfile eingelesen, gekürzt und sortiert. Man erhält eine alphabetische Auflistung aller bearbeiteten PCs und die ausgeführten Aktionsbuttons (abgelegt in WSUShelperPC.log). Damit kann man schnell erkennen, welche PCs schon einmal und wann, wie bearbeitet wurden.

Fast alle Aktionen werden mittels PSExec von Sysinternals (jetzt Microsoft) an den Client geschickt. Das Programm ist im WSUS-Helper integriert und wird bei Bedarf entpackt.

|WinLog|
Um die Arbeit des Clients kontrollieren zu können gibt es noch zwei Anzeigen (Reiter). Im Reiter |WinLog| kann man den Button [Read New] anklicken und erhält damit eine Kopie des %systemroot%\WindowsUpdate.log des Clients und kann darin nach Meldungen schauen und Fehler suchen. Damit die Arbeit zügig von der Hand geht kann man Text ins Clipboard kopieren und anschließend auf die Buttons [Search Google] oder [Search WSUS.de] klicken um dort suchen zu lassen. Der Clipboardinhalt erscheint dabei über dem Textfeld zwischen den eckigen Klammern.

|Softwarelog|
Hier gilt das gleiche wie beim |WinLog|. Es wird das  %systemroot%\Softwaredistribution\ReportingEvents.log ausgelesen und in diesem Fenster angezeigt.

|Logging|
In diesem Fenster werden alle Aktionen mitprotokolliert.

Für die Anzeige der Logs ist es sinnvoll das Fenster zu vergrößern. Dazu genügt ein Doppelklick auf die Titelleiste.

Wie ich feststellen konnte, ist dieses Tool auch privat sehr nützlich. Ein defekter Update Agent oder Patche, die absolut nicht mehr installieren wollen, bekommt man mit [Clear Downloads][Reinstall Agent] wieder gut in den Griff.

Noch ein Tip:
Gibt man im Startdialog keinen PC Namen ein und drückt einfach [Enter] wird automatisch der lokale PC genommen.

Notiz am Rande:
Ein PC der nicht innerhalb von 200ms auf einen Ping antwortet gilt als offline.

Für Administratoren, die eher ein Script gebrauchen könnten um Abläufe zu automatisieren, können sich mal den Eintrag WSUS Update beschleunigen ansehen. Dort findet sich auch eine passende Batchdatei.

Changelog:

26.01.2010 Version 1.1.0.230

  • Enhanced Trace auf MSI Installer ausgeweitet ( Registry Keys -> KB958052)
  • Clear downloads auf Ordner CatRoot2 ausgeweitet ( Fehler 0x80246007 -> KB958042 )
  • Erkannter Maschinentyp wird im Log angezeigt 
  • Kein automatisches wuauclt.exe /resetauthorization /detectnow nach [Clear Downloads] und [Reinstall Agent] mehr
  • Logfile mit allen Aktionen wird dauerhaft in eine Datei mitgeschrieben
  • Anzeige verkürztes Logfile nach PC-Nummer sortiert (für bessere Übersicht)
  • WMI-Repository reparieren

04.11.2009 Version 1.1.0.164

  • Die Funktionen "Hidden Updates" und "Unhide Updates" sind hinzugekommen
  • Die Eingabe eines neuen PC-Namens wurde geändert

16.09.2009 Version 1.1.0.117

  • Bugfix: Auf den Client wurde die Architekturversion des Hosts kopiert. Gefixt. 

14.09.2009

  • GPupdate Funktion hinzugefügt

05.05.2009: 

  • Das Programm beinhaltet nun auch den 64-Bit Agenten und kann somit beide Architekturen supporten.
    Hier die beiden letzten Versionen:
AnhangGröße
WSUShelper_1.1.0.164.zip13.12 MB
WSUShelper_1.1.0.230.zip13.13 MB

Kommentare

Ansicht Logdateien

Hallo,

es wäre schön wenn man auf ReadNew geht sei es bei Windows oder Softwarelog, das der neuste Eintrag oben steht. Das würde evtl. der Übersicht dienlich sein, wenn das Log größer ist.

Aber ansonsten super Tool.

Befehle für eine cmd

Hallo.

Ich nutze den Helper seit geraumer Zeit, und bin sehr begeistert, daher hier mein Dank für dieses Tool.

Derzeit baue ich mir eine cmd mit diversen Befehlen, und würde gern die Befehle des Buttons "Clear Downloads" mit integrieren. Bitte stelle diese doch mal zur Verfügung...

Vielen Dank

In meinem Programm passiert nichts geheimnisvolles :-). Wenn du dir die Ausgaben im Reiter "Logging" anschaust, wirst du feststelen, dass dort jeder ausgeführte Befehl aufgelistet wird.

wuauclt Befehle gehen nicht immer

Zuerst einmal Danke für das Tool.
Leider haben wir festgestellt, dass die Befehle Report Now und Detect Now auf Windows Server 2000 und auch Windows Server 2008 nicht immer funktionieren. Das WindowsUpdate.log wird nicht aktualisiert, d.h. der Client macht nichts. Wenn die Befehle jedoch über das Command ausgeführt werden, funktioniert das Ganze.
Habt ihr auch schon solche Erfahrungen gemacht? Machen wir etwas falsch?

Hmm ... unter Win2008 könnte die UAC Probleme machen. Einfach mal ausschalten. Den WSUS-Helper auch mal lokal kopieren und ausführen damit man Fehlermeldungen sieht.
Was unter Win2000 klemmen könnte weiß ich nicht.

Im übrigen sehe ich nur bei "Detect Now" Änderungen im WindowsUpdate.log.

Vielen...

vielen Dank :-)

Remote-Registrierungsdienst

Ich fände es nicht schlecht, es kann ja mal vorkommen das der Dienst nicht läuft und so könnte man ihn halt schön remote starten, falls er aus welchen Gründen auch immer deaktiviert sein sollte.

Hat jetzt aber nicht unbedingt was mit WSUS direkt zu tun. Musst Du entscheiden, wieviel Aufwand es bedeutet noch eine Schaltfläche einzubauen das man den Dienst starten kann.

Nur so eine Idee:Man

Nur so eine Idee:

Man könnte ja den Dienst Remote-Registrierung psservice vorher remote starten um diesem Problem aus dem Weg zu gehen.

Ich weiß nicht ob das wirklich Sinn macht. In einem Managed Enviroment wie einer Domäne ist der RPC-Dienst immer an. Warum also Remote Registry ausschalten, wenn es trotzdem einen vollen Zugang zum PC gibt? Trotz abgeschalteter Remote Registry kann ich eine Batchdatei auf den Ziel-PC kopieren und sie die Registryänderungen ausführen lassen. Ich glaube also nicht, dass das häufig benötigt wird.
Korrigiert mich bitte, wenn ich hierbei falsch liege.

Hallo, habe mittlerweile den

Hallo,

habe mittlerweile den Fehler lokalisieren können. Unsere Gruppenrichtlinien wurden fehlerhaft überarbeitet und der Dienst Remote-Registrierung deaktiviert. Darin lag das Problem das dieser Dienst nicht lief.

Jetzt wo das Problem behoben ist läuft das Tool wieder einwandfrei. Vielen Dank

Funktioniert nicht mehr

Hallo,

ich habe dein Tool eingesetzt konnte damit auch einige Rechner erreichen und auch wieder sauber einrichten ging alles.

Heute starte ich dein Tool wieder um die restlichen Rechner zu fixen. Heute kann ich mit dem Tool nicht mal mehr das UpdateLog auslesen obwohl die Rechte alle passen und ich per net use auf die administrative freigabe komme und das UpdateLog einwandfrei auslesen kann. Nur mit dem Tool nicht mehr. Das lokale UpdateLog lässt sich einwandfrei aufrufen nur remote geht nichts mehr mit dem Tool.

Bei mir arbeitet die Version 1.1.0.117 einwandfrei. Bitte noch einmal die Rechte/ den Account prüfen, mit denen das Tool gestartet wurde.

Domäne auswerten

Hallo,

das Tool ist super! Vielen Dank dafür!

Nun hätt ich noch ne Frage, wäre es möglich eine ganze Domäne zu scannen bzw zu forcen? Oder könnte ich diverse Aktionen des Tools für eine ganze Domäne ausführen?

MFG

Um auf allen PCs einer Dömane etwas zu bewirken, ist dieses Tool nicht geeignet. Dafür eignet sich am besten ein Softwareverteilungssystem wie Microsoft SCCM (SMS) oder evtl. ein Logonscript.

Was zu tun ist schreibt das Tool im Protokoll ja mit. Ansonsten kann du dir auch mal WSUS Update beschleunigen und ForceWSUS.cmd anschauen und anpassen.

force patching stösst nicht die installation an

Hallo, erstmal danke für das Super Tool.

Ist es richtig, das mit "Force Patching" alle Updates runtergeladen werden, aber die Installation erst zu dem per GPO festgelegten Zeitplan durchgeführt wird? Wenn ja, könnte man da noch was einbauen, das sofort installiert wird?

Danke und Gruß Martin

Erst wird die Prüfung und der Download angestoßen. Nach Ablauf der Zeit beginnt dann das Patchen (WSUS Dienst wird noch einmal durchgestartet).

win 64bit

Hi,

hab grad mal dein tool an nem Client-PC ausprobiert. Ich wollte den Agenten "reinstallen" das Problem ist, dass dein Programm das Host-OS als Basis nimmt und dann den 64bit Agenten auf das Client-System raufhaut...! so steht es zumindest in dem LOG...

greetz
Esperanto99

Habe ich gefixt. Danke für den Hinweis.

Klasse Tool

Hallo, ich hätte einen kleinen Wunscht. Könnte mann das Programm auch mit Parameter (PC-Name) starten!

Gruß Hans-Peter

Gute Idee. Baue ich ein ...

Remote-Login

Ein Login-Dialog für Clients, für die kein direkter administrativer Zugriff besteht wäre schön. Ansonsten ist das ein sehr hilfreiches Tool.

Gute Idee. Habe ich versucht - ist aber nicht so einfach wie ich dachte. Bleibe aber an dem Thema dran ...

Hey,

Super tool kannst du auch den Autoit Quellcode zur Verfügung stellen?

muraen

Danke!

Jetzt auch 64-Bit

Hi!

Ich habe jetzt eine Überprüfung auf die Prozessorarchitektur (32/64-Bit) eingebaut und auch den 64-Bit Agenten hinzugefügt. Damit werden nun alle, aktuellen Windows Betriebssysteme unterstützt.

Unter Windows 2008 mit eingeschaltetem UAC klappt der Remotezugriff anscheinend nicht, weil die Adminrechte bestätigt werden müssen. Dort bitte das Tool lokal kopieren und mit RunAs als Admin starten.

Hinweis/wunsch

Es wäre schön noch einen zusätzlichen Punkt einzuarbeiten um das programm weiter abzurunden; secsdit.exe

Ich weiß nicht, ob ich noch Win 2000 unterstützen soll. Bei allen anderen wäre  "gpupdate /force"  lokal vorhanden und nützlich.

-> Ist in neuer Version drin. Siehe [GPupdate].

Die Zeitersparnis ist enorm - Vielen Dank

Hallo Wolfgang,

vielen Dank für WSUShelper. Wir sehen gerade die Conficker-Welle auf uns zurollen und Dein Programm ist eine große Hilfe, bei zickigen Clients noch mal schnell die Türen zu schließen.

Ciao,
Andreas

Super Tool

Hallo Wolfgang,

vielen dank für dieses super geile tool :-) nutze es tag täglich um meine rechner zu kontrollieren etc. einen vorschlag hätte ich dennoch, wenn man das winlog ausließt. wäre es da möglich eine art refresh einzubauen sodass quasi alle x sekunden das logfile aktualisiert wird bzw geprüft wird ob neue einträge vorhanden sind? und wenns möglich wäre, direkt nach unten springen im logfile

grüße

Ben

 

WSUS Agent

Hallo, mir ist nicht klar, woher der WindowsUpdateAgent30-x86.exe im bin Verzeichnis kommt. Mir scheint, dass dies eine veraltete Version ist. Wie verhält sich der WSUS-Helper bei 64-bit Clienten?

 

Hi!

Die WindowsUpdateAgent30-x86.exe wird aus dem Tool selbst entpackt, wenn sie nicht vorhanden ist. Ich habe sie heute (05.05.2009) aktualisiert. Außerdem habe ich jetzt eine Überprüfung auf die Prozessorarchitektur (32/64-Bit) eingebaut und auch den 64-Bit Agenten hinzugefügt. Damit werden nun alle, aktuellen Windows Betriebssysteme unterstützt.