ADMIN-Magazin

Automatische Softwareverteilung für Windows mit Opsi

Desktops enger an die Leine zu nehmen, ihre Betriebssysteme und Anwendungen unter Aufsicht von Servern zu stellen, sind probate Mittel, um die Funktionssicherheit von Client-PCs zu verbessern.

Ludger Schmitz
Share this

Desktops enger an die Leine zu nehmen, ihre Betriebssysteme und Anwendungen unter Aufsicht von Servern zu stellen, sind probate Mittel, um die Funktionssicherheit von Client-PCs zu verbessern. Solche Lösungen kommen dem Bestreben nach IT-Standardisierung entgegen, sie verringern den Aufwand für Wartung, Support und Administration. Weniger Turnschuh-Support ist seit jeher eins der besten Argumente für das Server-based Computing. Viele proprietäre Lösungen machen jedoch den prinzipiellen Kostenvorteil durch beträchtliche Lizenzpreise wieder zunichte.

Open Source für Windows-Welten

Allerdings gibt es auch in der Open-Source-Welt Lösungen zur automatischen Softwareverteilung und -installation für Windows-Clients, bei denen sich die Kosten in überschaubaren Grenzen halten. Hier müssen Anwender in der Regel nur mit Aufwendungen für Systemeinrichtung, Beratung, Schulung und Wartung kalkulieren. Eins dieser Werkzeuge ist Opsi (Open PC-Server-Integration``) vom Mainzer Open-Source-Dienstleister UIB. Es ist schon Mitte der 90er Jahre in einem Projekt zum Management von Desktops einer deutschen Landesverwaltung entstanden. Seit fünf Jahren steht es unter einer Open-Source-Lizenz und befindet sich momentan auf dem Release-Stand 3.3.1. UIB ist Maintainer des Opsi-Projekts [1] und bietet entsprechende Dienstleistungen und Erweiterungen dazu an.

Opsi übernimmt im wesentlichen drei Aufgaben: die automatische Softwareverteilung auf PCs (in einigen Umgebungen auch auf Server), die automatische Installation von Betriebssystemen auf den zu versorgenden Rechnern sowie die Hardware- und Software-Inventarisierung. Als Verteilungszentrale dient ein Linux-Server auf Basis von Debian, Ubuntu oder Suse. Dieser bedient Clients mit den Betriebssystemen Windows 2000, XP, Vista (Abbildung 1) und 7, wobei für die beiden letztgenannten Varianten Opsi derzeit noch nicht frei ist -- UIB stellt seine Software dann unter eine freie Lizenz, wenn die Entwicklungskosten eingenommen sind. Genauso wie die Desktopsysteme lassen sich auch die Servervarianten von Windows (2000 bis 2008) mit Opsi administrieren. Eine Variante für Linux-Clients ist in Planung.

Abbildung 1: Start des Opsi-Clientagenten auf einem Vista-System. Der Vista-Support ist derzeit noch nicht frei verfügbar.

Updates beim Booten

Der erste Schritt besteht bei Opsi darin, die Clients darauf einzurichten, dass sie sich Programme und Updates vom Server abholen. Dazu installiert der Administrator auf ihnen einmalig die Software »opsi-preLoginLoader«. Es fragt nach dem Booten den Opsi-Server danach, ob für den jeweiligen PC neue Programme zur Installation vorliegen, zum Beispiel Updates. Ist das nicht der Fall, geht es ohne weitere Verzögerung mit dem Login weiter. Falls aber Neuerungen vorliegen, startet das Skript-gesteuerte Installationsprogramm »opsi-Winst«. Es lädt die erforderlichen Programme und richtet sie auf dem PC ein. Dies geschieht vor dem Login und ohne Interaktion mit dem Anwender, der die Installation nicht beeinflussen oder abbrechen kann.

Damit sich die Software ohne Interaktion installieren lässt, muss ein Skript beschreiben, was passieren soll. Dafür gibt es drei Möglichkeiten: Entweder lassen sich die Setups ohnehin »silent« oder »unattended« starten, oder die Installation läuft interaktiv, erhält aber seine Antworten beispielsweise vom freien Tool AutoIT [2]. Oder der Administrator analysiert die Aktionen des Setup-Programms bildet sie in einem Skript nach. In der Praxis kommt es häufig zu einer anwenderspezifische Mischung aus allen drei Verfahren.

Um das zu ermöglich, bietet Opsi-Winst einfache Befehle zur Bearbeitung von Dateien, der Registry, Startmenü-Einträgen und für viele weitere typische Aufgaben von Setup-Programmen. Andere Programme und Skripte können im Kontext eines Winst-Skriptes gestartet, deren Ausgaben wieder übernommen und ausgewertet werden. Sollte ein Reboot nötig sein, übernimmt Winst die Steuerung des Shutdown. Und umgekehrt geht es auch: Genau so lassen sich Programme deinstallieren. Im Hintergrund läuft hier ein Skript mit administrativen Rechten ab, das dem Systemadministrator Möglichkeiten bietet, die weit über die reine Softwareverteilung hinausreichen.

OS-Installation

Das zweite Kern-Feature von Opsi ist die automatische Installation von Betriebssystemen. Sie funktioniert bei allen einigermaßen modernen PCs über einen Netzwerkboot per PXE. Für ältere Desktops gibt es eine Client-Boot-CD, die natürlich im jeweiligen PC eingelegt sein will. Gebootet wird in beiden Fällen ein spezielles Opsi-Linux-Bootimage. Ausgehend vom gestarteten Linux gibt es nun zwei Möglichkeiten, Betriebssysteme zu installieren.

Wo die Hardware bereits weitgehend standardisiert ist, bietet es sich an, vorkonfigurierte Images zu laden und einzurichten. In den meisten Unternehmen ist die Hardwarelandschaft aber erheblich bunter. Hier helfen die Optionen des Unattended-Setup weiter: Nachdem die Festplatte neu partioniert und formatiert ist, kopiert der Administrator die Windows-Installationsdateien mit einer Antwortdatei für das Setup-Programm. Nach einer Analyse der Hardware sucht er die passenden Treiber basierend auf den gefundenen PCI-, USB- und HD-Audio-Kennungen und fügt sie den Installationsdateien hinzu. Abschließend nimmt er den Opsi-Client-Agent in das Installationsprogramm auf und startet die Windows-Installation. Diese läuft ohne Interaktion und startet zum Abschluss den Opsi-Client-Agenten, der nun Paket für Paket die noch fehlende Anwendungssoftware und notwendige Hotfixes installiert. Auf diese Weise lässt sich ein Rechner mit individueller Softwareausstattung in circa 90 Minuten automatisiert installieren.

Geschützter Server

Das Rückgrat dieser Prozesse zur Softwareverteilung und -installation bildet der Opsi-Server, jene Software, die auf dem zentralen Linux-Server das ganze Orchester dirigiert. Sie arbeitet als Depotverwalter für Betriebssysteme, Anwendungen und ihre Updates. Die Pakete sind in abgesicherten Fileshares vor unberechtigten Zugriffen Passwort-geschützt. Die Übertragung der Passwörter erfolgt verschlüsselt, um niemand außer den Administratoren oder den Opsi-Subprogrammen Zugriff auf diese Shares zu ermöglichen. Die Erstellung der Pakete erfolgt durch den Systemadministrator, wobei bestimmte Standardpakete per Abo von UIB bezogen werden können. Hierzu gehören sämtliche Hotfixes und Servicepacks für die Microsoft-Betriebssysteme und die Office-Versionen XP, 2000, 2003 und 2007 sowie die aktuellen Updates von Anwendungen wie Firefox, Sun Java VM, Adobe-Reader, Flashplayer, Open Office, und Thunderbird.

Um die gewünschte Zuweisung der Programme überhaupt erst möglich zu machen, verwaltet der Opsi-server auch sämtliche Konfigurationsinformationen über die Clients, ihre Hardwareausstattung, ihre Netzwerkkonfiguration wie ihre IP-Adresse, die aktuellen Betriebssystemversionen und ihre individuelle Softwareausstattung. Die Datenhaltung kann in unterschiedlichen Backends beispielsweise also dateibasiert oder per LDAP erfolgen. Sollen mehrere Standorte unterstützt und zentral verwaltet werden, lässt sich die Depotverwalter-Funktion (also die Bereitstellung der Pakete) in einen externen Depot-Server auslagern, der zur Verwaltung aber an den zentralen Opsi-Server gebunden ist.

Das Management von Opsi erfolgt über eine grafisches Interface, den Opsi-Konfigeditor, der sich als Applet im Webbrowser laden lässt (Abbildung 2). Über die GUI pflegt der Administrator die IP-Namen und Hardwareadressen der Clients im Opsi-Server. In Hard- oder Softwareausstattung gleichartige PCs lassen sich per Mausklick zu Gruppen zusammenfassen. Eine Mehrfachauswahl von Clients ist ebenso möglich wie ihre gleichzeitige Bearbeitung. Zur Verbesserung der Übersichtlichkeit kann der Administrator die anzuzeigenden Desktops nach diversen Kriterien auswählen und gruppieren. Außerdem dient das Applet zur Steuerung der Softwareverteilung und der automatischen Betriebssysteminstallation. Schließlich lassen sich von hier auch die Inventarisierungsdaten und Log-Dateien der Clients einsehen. Neben der Steuerung über das grafische Interface ist Opsi auch komplett auf der Kommandozeile und über einen Webservice steuerbar (Abbildung 3).

Abbildung 2: Steuerung der Softwareverteilung über das grafische Managementinterface von Opsi.

Abbildung 3: Der modulare Aufbau von Opsi erlaubt die Bedienung über Webfrontends sowie über die Command Line.

Inventarisierung

Das dritte der eingangs genannten Kern-Features von Opsi ist die Hardware- und Software-Inventarisierung. Über die Microsoft-Betriebssystemkomponente Windows Management Instrumentation (WMI) fragt Opsi Informationen über die Client-Hardware ab und speichert sie auf dem Server. Ähnliches geschieht es mit der Software, wozu das Tool die Registries der PCs ausliest. Die Informationen fließen in das grafische Management-Interface ein. Und sie werden zentral gespeichert, wozu sich optional eine MySQL-Datenbank mit History-Funktion einrichten lässt.

Das bringt eine Reihe von Vorteilen mit sich. So lässt sich nachvollziehen, bei welcher Kombination von Hardware und Software-Releases welche Probleme aufgetreten sind. Bei anspruchsvoller Software ist vorab erkennbar, welche Rechner geeignet sind und welche sich zu akzeptablen Kosten nachrüsten lassen. Es ist leichter zu erfassen, ob und wo überalterte oder sicherheitsgefährdete Software im Einsatz ist. Informationen über die Nutzung bestimmter Programmversionen erleichtern die Planung der Lizenzbeschaffung.

Insbesondere aber sind etliche der Informationen die unverzichtbare Grundlage für einen ITIL-konformen IT-Betrieb, der beim Asset-Management beginnt. Opsi liefert darüber hinaus weitere Informationen und Werkzeuge, um die Itil-Teilprozesse Incident- and Problem-, Change- and Configuration- sowie Service-Management zu adressieren. Mit diesen Funktionen kann Opsi in Zukunft eine Open-Source-Alternative im bisher weitgehend proprietären IT-Service-Management werden. (ofr)


Infos

[1]
Opsi: [http://www.opsi.org]
[2]
AutoIT: [http://www.autoitscript.com]

Der Autor

Ludger Schmitz ist freiberuflicher Journalist in München,

Kommentare

Kommentar hinzufügen

CAPTCHA
Diese Frage hat den Zweck zu testen, ob Sie ein menschlicher Benutzer sind und um automatisierten Spam vorzubeugen.