Softwareverteilung über Gruppenrichtlinien – Bitte tue das nicht unüberlegt! 23. Mai 2012

Nicht nur große Unternehmen verteilen Software an die Clientrechner automatisch. Auch für mittelständige Unternehmen ist es mit sehr großem Aufwand verbunden, die Anwendungssoftware auf den Client zu bringen. Dadurch wird sehr schnell nach einer Lösung gesucht, wie man Anwendungssoftware automatisiert verteilen kann. Microsoft bietet seit Windows 2000 die Möglichkeit, Software über Gruppenrichtlinien zu verteilen. Sehr schnell wird gerade in kleineren Unternehmen zu dieser Möglichkeit gegriffen, ohne über die Konsequenzen oder Einschränkungen dieser Lösung nachzudenken. In diesem Artikel möchte ich ein paar Probleme darstellen, über die man sich vorher Gedanken machen sollte.

Welche Software bzw. Setups kann ich über Gruppenrichtlinien verteilen?
Wichtig ist, dass die Installationsroutine als MSI Paket vorliegt. Pauschal könnte man jetzt sagen, wenn kein MSI Paket vorliegt, dann kann die Software auch nicht über eine Gruppenrichtlinie verteilt werden. Wenn man etwas genauer hinschaut, dann gibt es auch die Möglichkeit der Verteilung von ZAP Paketen (Zero Administration Package). Allerdings können ZAPs nur für Benutzer und nicht für Computer verteilt werden. Die Pakete werden auch nur mit den Rechten des ausführenden Benutzers ausgeführt. Das schlägt hoffentlich fehl, da die Benutzer ja Benutzer und keine Administratoren sind und sie dadurch keine Software installieren können.

Verteilt man die Software für die Benutzer oder für die Computer?
Wenn man Software über Gruppenrichtlinien verteilt, steht man vor der Wahl, ob man die Softwarepakete den Benutzern zuweist oder den Computern. Sinnvoll ist eigentlich nur die Verteilung für Computer. Stellen wir uns einmal vor, wir haben eine bestimmte Software nur für einen sehr begrenzten Benutzerkreis per Gruppenrichtlinie verteilt. Wenn jetzt mit dieser Software Probleme auftreten, dann kann der Administrator zumindest diese Software nicht über die Standardverknüpfungen auffrufen, wenn er nicht im Bereich der Richtlinie liegt und somit die Software nicht zugewiesen bekommt. Er sieht also die Software nicht bei einer lokalen Anmeldung am Client. Des Weiteren wird unter Umständen die Software auf vielen Rechnern installiert, wenn sich Benutzer an mehreren unterschiedlichen Rechnern anmelden. Das führt dann sehr schnell zu einer reichlich gefüllten Festplatte auf den Clientrechnern.

Wo lege ich die MSI Pakete ab?
Die MSI Pakete sollten nie auf einem einzelnen Server abgelegt werden, sondern immer auf einem domänenbasierten DFS Stamm. Durch das Speichern der Installationsdateien in einem DFS Stamm bleibt man flexibel und kann die Pakete auch auf einen anderen Server verschieben. Wenn man die Installationsdateien einfach in eine Freigabe auf einem einzelnen Server ablegt, kann man diesen Pfad nicht nachträglich ändern. Innerhalb der Gruppenrichtlinie wird beim Erstellen eines Softwarepaketes eine AAS (Application Advertising Script) Datei erstellt. In dieser ist der UNC Pfad zum MSI Paket eingetragen. Außerdem “merken” sich die Clients den Quellpfad zu den Installationsdateien in der Registrierung, um beispielsweise eine Reparatur durchführen zu können. Eine von MS unterstützte Pfadänderung hätte also zur Folge, dass man zuerst die bereits verteilte Software auf allen Clients deinstalliert, danach den Pfad verschiebt, ein neues Paket mit dem aktualisierten Pfad erstellt und danach die Software wieder an alle Clients verteilt. Deshalb gilt: Installationsdateien für eine Softwareverteilung über Gruppenrichtlinien gehören immer auf einen domänenbasierten DFS Stamm!

War meine Softwareverteilung auf allen Clients erfolgreich?
Das ist eigentlich die Frage der Fragen…..Leider kann man diese Frage bei der Softwareverteilung über Gruppenrichtlinien nicht beantworten und genau dieser Punkt ist für mich persönlich eine der größten Schwachstellen bei der Softwareverteilung über Gruppenrichtlinien. Es gibt bei der Softwareverteilung über Gruppenrichtlinien kein zentrales Reporting, in dem man ersehen kann, ob die Installation auf einem Client erfolgreich war oder nicht. Aber keine Sorge, die Benutzer werden sich schon melden………:-)

Welche Netzwerklast erzeuge ich mit meiner Softwareverteilung?
Daran sollte man auch denken. Die Softwareverteilung über Gruppenrichtlinien macht keinen Gebrauch von Technologien wie z.B. BITS. Alle Clients, die eine Software über GPO zugewiesen bekommen, holen sich die Software per Unicast vom Server. Wenn beispielsweise eine Software mit einer Größe von 300MB an 150 Rechner verteilt wird, dann gehen  ca. 45GB über das Netz. Wenn jetzt noch die Benutzer alle pünktlich bei Arbeitsbeginn ihre Rechner starten, dann könnte es dort durchaus zu Problemen bzw. zu Engpässen im Netzwerk kommen. Viele Benutzer ignorieren auch den dezenten Hinweis am Client, dass gerade eine Software installiert wird. Ich habe es in der Praxis schon mehr als einmal erlebt, dass einzelne Benutzer den Rechner einfach “hart” ausschalten, da der Rechner ja scheinbar beim Starten “gehangen” hat. Das Ergebnis ist dann meist eine fehlgeschlagene Installation, die im schlimmsten Fall manuell auf dem Clientrechner entfernt werden muss. Wer bandbreitenschonend arbeiten möchte, muss also die Software “scheibchenweise” an die Clients verteilen und eventuell auch die betroffenen Benutzer vorher informieren.

Wie viele Clients haben die Software XY denn installiert?
Genauso wenig, wie man einen Bericht über den Installationserfolg erhält, hat man auch keinen Überblick, welche Rechner die Software bereits installiert haben. Wenn ein Administrator die Softwareverteilung nicht sauber dokumentiert, ist hier der Lizenzverstoß schon vorprogrammiert.

Wie kann ich einen Client dazu zwingen, die Software erneut zu installieren?
Eigentlich geht das gar nicht. Es gibt die Möglichkeit, ein Paket erneut auszurollen. Dort gilt allerdings das Motto: “Alle oder Keiner” und wer will schon wegen einem oder zwei Clients die Software an 150 Rechner erneut verteilen.

Wann wird denn die Software installiert?
Auch diese Frage kann man nicht zu 100% beantworten. Die Installation wird nur bei der Vordergrundaktualisierung einer Gruppenrichtlinie installiert. In der Praxis bedeutet dies, dass die Software nur beim Rechnerneustart oder bei der Anmeldung eines Benutzers installiert wird, aber niemals bei der regelmäßigen Hintergrundaktualisierung einer Gruppenrichtlinie. Außerdem kann man bei den Installationspaketen kein Installationsdatum hinterlegen.

Ich habe hier einmal versucht, die größten Probleme bzw. Herausforderungen darzustellen, die bei einer Verteilung von Software über Gruppenrichtlinien auftreten können. Wie kann man das nun umschiffen? Man könnte sich jetzt Gedanken über eine Software machen, die sich um die Verteilung der Software kümmert. Dort gibt es einige am Markt, mit denen man diese Aufgabe lösen kann:

Einige kostenpflichtige Produkte:

Altiris Deployment Solution

Baramundi

LanDesk

Matrix42 Software Management

System Center Configuration Manager

Kostenfreie Lösungen

OCS Inventory

OPSI

WPKG

Mein aktueller Favorit unter den freien Lösungen ist OPSI. OPSI ist schnell installiert und kann ohne große Verrenkungen eingesetzt werden. Es ist frei einsetzbar bis auf eine kleine Einschränkung. Bei OPSI werden Sonderwünsche über sogenannte Kofinanzierungsprojekte realisiert. Dort muss für bestimmte Funktionen bezahlt werden, um die Entwicklungskosten zu decken. Wenn die Entwicklungskosten gedeckt wurden, wird das entsprechende Modul allen anderen OPSI Anwendern kostenfrei zur Verfügung gestellt. Das OPSI Projekt wird auch regelmäßig gepflegt und weiterentwickelt. Man kann sich also relativ sicher sein, dass es OPSI in fünf Jahren auch noch gibt. Wer also auf der Suche nach einer Lösung für Softwareverteilung und Inventarisierung ist, der sollte auf jedem Fall OPSI eine Chance geben.

2 Comments
Wolfgang Wengefeld August 23rd, 2012

Fachlich ein extrem guter Artikel zu den Tücken der Softwareverteilung mit Gruppenrichtlinien. Das Thema wurde hier besonders gut hinterleuchtet.

Sebbo Februar 28th, 2013

Hi,
ein klasse Beitrag. Hat mir heute sehr weitergeholfen. Danke dafür.

Bei den kostenpflichtigen Softwareverteilungs-Lösungen darf Frontranges DSM 7 nicht fehlen! ;)

LG Sebbo

Leave a Reply

*