Softwareverteilung über WSUS - ein Blick in die Königsklasse

Die Königsklasse der Softwareverteilung läuft über spezielle Managmentsoftware die von Microsoft bereitgestellt wird. Allerdings ist das mit hohen Kosten verbunden und eigentlich nicht üblich in kleinen und mittelständigen Unternehmen.

Wem eine scriptbasierte, GPO gestützte Softwareinstallation mit Installationsfeedback noch zu altmodisch ist kann einen steinigen Weg Richtung Königsklasse einschlagen. Das Verfahren: Mit einer Zusatzsoftware ( z.B. Local Update Publisher) und geeigneten Zertifikaten kann der normale WSUS Server zur Auslieferung von eigenen Softwarepaketen und Updates verwendet werden.

Was an vielen Stellen unerwähnt bleibt sind die erforderlichen Voraussetzungen. Das Problem sind nämlich die Zertifikate. Vereinfacht gesagt: Das Ausstellen von Zertifikaten die automatisch verteilt werden können und die WSUS akzeptiert (V1 Zertifikate) beherrschen die Standard Server (WS2003 / SBS 2003) NICHT. Man benötigt Server der Enterprice oder Datacenter Klasse oder modernere Server (WS 2008 und höher). Für ältere Serversysteme (wie das von mir betreute) ist es empfehlenswerter das Zertifikat zu verwenden welches der LUP mitliefert.

 

Doch widmen wir uns zunächst der Vorbereitung.

Zunächst müssen die Zertifikatdienste auf dem WS2003 installiert werden die standardmäßig bei der Serverinstallation nicht installiert werden.
SYSTEM->SOFTWARE->WINDOWS KOMPONENTEN->
eine Anleitung dazu:
http://www.serverhowto.de/Teil-1-Einrichten-einer-Zertifizierungsstelle.63.0.html
http://www.hasslinger.com/microsoft/sites/server/dotnet/grund/erstellen_von_organisationszertifizierungsstellen.html

 

Des weiteren benötigen wir .NET 3.5 und natürlich einen WSUS Server.

 

Sehr zu empfehlen ist außerdem der Zugang zu einer Gruppenrichtlinienverwaltungskonsole für Server die neuer als WS2003 sind, also am besten installiert man die Remoteserver-Verwaltungstools für W7.

 

Dann sollte man sich erst einmal belesen über das Ausstellen und die Verteilung geeigneter Codezertifikate, und zwar hier für den Fall eines eigenen Zertifikates, aber auch hier um das LUP Zertifikat zu verwenden.

 

So, los gehts. Wir installieren LUP und verbinden uns mit dem Server. Dabei hilft uns die Anleitung im LUP-Wiki. Für mich war das das Komplizierteste von allem. Ich hatte schon im Vorfeld mit der Zertifikaterzeugung rumgespielt und war erst erfolgreich nachdem ich den LUP deinstalliert, die Konfigdateien manuell gelöscht und nochmal von vorne begonnen hatte. Wenn wir mit der Geschichte erfolgreich waren haben wir ein Zertifikat mit dem Namen "WSUS Publishers Self-signed", dessen Eigenschaften die Codesignatur umfasst.

 

Der nächste Schritt ist ebenfalls im Wiki beschrieben. Das Zertifikat muss zum einen auf dem Server selbst und zum anderen auf den Clients verbreitet werden, die beschriebene Methode "Using a GPO" funktionierte in unserem Umfeld aus XP und W7 problemlos.

 

Damit wäre das Schwierigste geschafft. Wenn sich die Rechner früher oder später auf die neue GPO Richtline aktualisiert haben und das Zertifikat verbreitet ist (mal kontrollieren), kann man mit den Updates beginnen. Zunächst versuchen wir uns an einem einfachen .msi Update, beispielsweise Adobe Flash oder Reader. Die schon bekannte Anleitung hier ist dafür perfekt. Sofern das Zertifikat in Ordnung ist und Codesignatur umfasst und auf dem WSUS Server vorhanden ist sollte das Updatepaket erfolgreich publiziert werden. Es erscheint im LUP zunächst als "Unbekannt", und braucht wie auch die normalen Windowsupdates eine Weile bis es sich über "Heruntergeladen" zu "Installiert" durchgekämpft hat. (Sofern je nach GPO Einstellungen der User das Update auch ausführt). Die Statusaktualisierung entspricht ja der normalen Aktualisierung des WSUS, und das hinkt bekanntlich immer etwas hinterher.

 

Während .msi Updates simpel sind weil mann keine Regeln erzeugen muss, sind .exe Updates anspruchsvoller. Hier findet sich eines der wenigen Beispiele dafür. Wichtig ist das man die Regeln korrekt setzt, und diese sind reichlich undurchsichtig, die deutsche Übersetzung im LUP schlichtweg katastrophal. Das erste Regelpaket "Installed Rules" beschreibt, auf welche Weise auf dem Zielclient geprüft wird ob eine Installation erforderlich ist. Typischer Weise verwendet man dafür die Abfrage der Versionsnummer der installierten Software. Da die Versionsnummer manchmal Freizeichen und Sprachversionen umfasst wähle ich die Option "Enthält Zeichenkette xyz-Versionsnummer" Wer schon Software per Script verteilt hat ist mit dem Verfahren vertraut. Das zweite Regelpaket "Installable Rules" definiert welche Eigenschaften ein Rechner vorweisen soll damit installiert wird. Also beispielsweise ob es ein W7 Rechner. Ich empfehle diese Regel zu setzen, wenigstens auf die gängige Mindestanforderung "Windows XP mit SP3". Alle anderen Reglen können erst mal übersprungen werden.

 

Nach diesen Verfahren verteile ich für den Anfang derzeit: Adobe Flash, Adobe Reader, Java 7, Firefox, Thunderbird.

 

Schwierigkeiten:

  • Etwas unerfreulich ist, das die Programmupdates, die ja oft auch Sicherheitsupdates sind, einen - je nach festgelegter GPO-Updaterichtlinie- undefinierten Installationszeitpunkt haben. Bei einer Installation per normaler GPO oder Script ist hingegen sichergestellt das die Software vor der Benutzung bei Computerstart installiert wird.
  • Ein Schönheitsfehler besteht darin das die "Softwareupdates" des LUP standardmäßig nicht in der Updateliste des WSUS auftauchen sondern nur über den LUP ihren Installationsstatus preisgeben. Dafür gibt es meines Wissens eine Löung per Eingriff in die Datenbank.

 

 

Kommentar schreiben

Kommentare: 0