{"id":1541,"date":"2011-08-30T08:29:29","date_gmt":"2011-08-30T06:29:29","guid":{"rendered":"http:\/\/www.ewig-drohendes-versagen.de\/?p=1541"},"modified":"2011-08-30T09:45:35","modified_gmt":"2011-08-30T07:45:35","slug":"gezieltes-installieren-von-windows-updates-via-wsus","status":"publish","type":"post","link":"https:\/\/www.ewig-drohendes-versagen.de\/?p=1541","title":{"rendered":"Gezieltes installieren von Windows Updates via WSUS"},"content":{"rendered":"\n<!-- google_ad_section_start -->\n<p>Jeden Monat f\u00e4ngt das Grauen von neuem an &#8211; MS Patchday.<\/p>\n<p>Ich wei\u00df nicht ob ich der einzige Admin auf dieser Welt bin, der in einem mittelst\u00e4ndischen Unternehmen (wie Nils immer sagt 50 &#8211; 50.000 Mitarbeiter *g) arbeitet und keine Clientmanagementl\u00f6sung (ConfigMgr o.\u00e4.) im Einsatz hat.<\/p>\n<p>Was bedeutet das f\u00fcr uns und unserer in ganz Deutschland verteilten Kassensysteme?<\/p>\n<p>Patch\u00b4s in der Testumgebung testen &#8211; und dann ausrollen.<br \/>\nAber wirklich auf alle Systeme gleichzeitig?<\/p>\n<p>Viel geschickter w\u00e4re es doch diese gestaffelt auszurollen und dann auch noch immer erst mal nur eine Kasse pro Filiale. Und erst wenn das l\u00e4uft noch Kasse 2,3 usw.<br \/>\n<!--more--><br \/>\nNat\u00fcrlich kann man den &#8222;theoretischen&#8220; Installationszeitpunkt per GPO einstellen und nat\u00fcrlich kann man auch \u00fcber WSUS Gruppen daf\u00fcr sorgen das nicht f\u00fcr alle Gruppen alle Updates genehmigt werden.<\/p>\n<p>In einem interessanten After <a href=\"http:\/\/www.ice-lingen.de\" target=\"_blank\">\\\\ICE:2011<\/a> Gespr\u00e4ch in Lingen mit Andreas S. hat mir dieser von einem selbst erstellten Script erz\u00e4hlt, welches die Windows Update API antriggert und sich somit Updates Script gesteuert herunterladen und installieren lassen.<\/p>\n<p>Nachdem er mir das Script freundlicherweise zur Verf\u00fcgung gestellt hat, habe ich mir dies zusammen mit unserem <a href=\"http:\/\/blog.truefuture.de\" target=\"_blank\">Programmierer<\/a> mal angesehen und sind nach ein wenig &#8222;BING it&#8220; auch im Netz beim <a href=\"http:\/\/msdn.microsoft.com\/en-us\/library\/aa387102%28v=vs.85%29.aspx\" target=\"_blank\">MSDN <\/a>f\u00fcndig geworden.<\/p>\n<p>Dieses Script triggert die WUA API, l\u00e4dt alle ben\u00f6tigten Updates vom WSUS Server auf den Client und installiert diese. Hierbei werden auch Updates welche zusammen installiert werden sollten oder solche die aufeinander aufbauen in Gruppen zusammen gefasst.<\/p>\n<p>Au\u00dferdem erkennt das Script ob ein Reboot ben\u00f6tigt wird und f\u00fchrt diesen auf Nachfrage auch aus.<\/p>\n<p>Wir haben das original Script in soweit ver\u00e4ndert, dass es wenn es Updates gefunden hat unsere Antiviren L\u00f6sung stoppt (Zeile 22-25) (Das beschleunigt das Update auf unseren Kassensystemen um Faktor 10 *g) und den Reboot automatisch ohne Nachfrage durchf\u00fchrt bzw. das AV Programm wieder startet (Zeile 98-100) sollte kein Reboot ben\u00f6tigt werden.<\/p>\n<p>Das Script wird wie folgend lokal ausgef\u00fchrt:<\/p>\n<p><code>cscript WUA_SearchDownloadInstall.vbs<\/code><\/p>\n<p>oder Remote per PsExec<\/p>\n<p><code>\"PsExec.exe \\\\RECHNERNAME -u DOMAIN\\USER -p PASSWORD -e cscript \\\\SERVER\\SHARE\\WUA_SearchDownloadInstall.vbs\"<\/code><\/p>\n<p>Um mehrere Rechner von einer Remotemaschine anzutriggern k\u00f6nnte man die @File Option von PsExec nutzen &#8211; leider werden diese dann nacheinander ausgef\u00fchrt was deutlich zu zeitaufw\u00e4ndig ist.<\/p>\n<p>Eine Quick and Dirty L\u00f6sung ist es, f\u00fcr eine \u00fcberschaubare Anzahl an Clients diese in ein Batch einzubauen:<\/p>\n<p><code>start c:\\windows\\system32\\cmd \/c \"PsExec.exe \\\\RECHNERNAME1 -u DOMAIN\\USER -p PASSWORD -e cscript \\\\SERVER\\SHARE\\WUA_SearchDownloadInstall.vbs\"<\/code><\/p>\n<p>start c:\\windows\\system32\\cmd \/c &#8222;PsExec.exe \\\\RECHNERNAME2 -u DOMAIN\\USER -p PASSWORD -e cscript \\\\SERVER\\SHARE\\WUA_SearchDownloadInstall.vbs&#8220;<\/p>\n<p>Hier wird jetzt f\u00fcr jeden Rechner eine cmd ge\u00f6ffnet.<\/p>\n<p>Wenn man sich das Resultat noch ansehen will kann man den Befehl um ein &amp; pause erg\u00e4nzen:<\/p>\n<p><code>start c:\\windows\\system32\\cmd \/c \"PsExec.exe \\\\RECHNERNAME2 -u DOMAIN\\USER -p PASSWORD -e cscript \\\\SERVER\\SHARE\\WUA_SearchDownloadInstall.vbs &amp; pause\"<\/code><\/p>\n<p>Download modifiziertes Script <a href=\"http:\/\/www.ewig-drohendes-versagen.de\/wp-content\/geheim_uploads\/2011\/08\/WUA_SearchDownloadInstall_tap.vbs_.txt\">WUA_SearchDownloadInstall_tap.vbs<\/a><\/p>\n<p>Getestet unter Windows XP 32bit SP3, Windows 7 32bit SP1, Windows Server 2008 32\/64bit inkl. R2<\/p>\n<p>Happy Patching<\/p>\n<p>Auch ver\u00f6ffentlicht auf <a href=\"http:\/\/www.faq-o-matic.net\/2011\/08\/30\/gezieltes-installieren-von-windows-updates-via-wsus\/\" target=\"_blank\">FAQ-O-matic.net<\/a><\/p>\n<p>&lt;UPDATE&gt;<\/p>\n<p>Also noch zwei Worte zum PsExec.<\/p>\n<p>1. Wenn das Script auf einem Share liegt muss zwingen mit -u ein Benutzer angegeben werden, der auf der Remotemaschine Admin Rechte und auf dem Share lesen Rechte hat.<\/p>\n<p>2. Wenn das Zielsystem Vista oder h\u00f6her ist und die UAC an ist muss zus\u00e4tzlich der -h Schalter gesetzt werden.<\/p>\n<p>&lt;\/UPDATE&gt;<\/p>\n\n<!-- google_ad_section_end -->\n","protected":false},"excerpt":{"rendered":"<p>Jeden Monat f\u00e4ngt das Grauen von neuem an &#8211; MS Patchday. Ich wei\u00df nicht ob ich der einzige Admin auf dieser Welt bin, der in einem mittelst\u00e4ndischen Unternehmen (wie Nils immer sagt 50 &#8211; 50.000 Mitarbeiter *g) arbeitet und keine Clientmanagementl\u00f6sung (ConfigMgr o.\u00e4.) im Einsatz hat. Was bedeutet das f\u00fcr uns und unserer in ganz [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"enabled":false},"version":2}},"categories":[1],"tags":[34,19,42,26,33,17,18],"class_list":["post-1541","post","type-post","status-publish","format-standard","hentry","category-allgemein","tag-server-2003","tag-server-2008","tag-vista","tag-windows","tag-windows-7","tag-windows-xp","tag-wsus"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/peux2-oR","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=\/wp\/v2\/posts\/1541","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1541"}],"version-history":[{"count":0,"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=\/wp\/v2\/posts\/1541\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1541"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1541"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ewig-drohendes-versagen.de\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1541"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}