Linux- und Windows-Client-Management mit opsi

Serienfertigung

Die Optimierung, Rationalisierung und Kostensenkung gehören genauso zum Alltag von IT-Administratoren wie Fragen der Zuverlässigkeit und Sicherheit. Mit opsi steht Ihnen ein interessantes Werkzeug zur Verfügung, mit dem Sie die automatisierte Software-Installation in großen PC-Netzwerken vereinfachen. Die Systemverwaltung ist seit ihrer Markteinführung Open Source. Bei Bedarf steht kommerzieller Support bereit.
Anwender mit nur einem mobilen Gerät dürften heute bereits die große Ausnahme sein. Zudem findet ein und dasselbe Smartphone oft sowohl privat als auch ... (mehr)

Mainz ist nicht unbedingt als Leuchtturm für herausragende IT-Projekte bekannt, sondern eher als karnevalistische Hochburg und ZDF-Standort vertraut. Doch die Mainzer Softwareentwickler uib [1] haben mit opsi (Open PC Server Integration, [2]) in den letzten zehn Jahren eine ausgereifte Client-Managementumgebung geschaffen, die aktuell in der vierten Version vorliegt. Die Kernkomponenten von opsi sind freie Software (Lizenz: AGPLv3).

opsi ist eine Client-Managementumgebung für Linux- und Windows-Clients auf Basis eines Linux-Servers. Damit sind die Zeiten der Turnschuh-Administration vorbei, in denen der Administrator von PC zu PC rannte, um neue Software und Updates aufzuspielen. Die Verwaltung erlaubt die automatisierte Installation von Betriebssystemen, Software und Software-Komponenten, Updates und Patches.

Die Umgebung kann auch zur Inventarisierung von Hard- und Software-Komponenten verwendet werden. Damit schlagen Sie zwei Fliegen mit einer Klappe: In Verbindung mit einem kofinanzierten Projekt unterstützt opsi auch das Lizenzmanagement. Der opsi-Server basiert auf Linux und kann auf einem der folgenden Betriebssysteme ausgeführt werden: Debian, Ubuntu, OpenSuse, SLES, CentOS, Univention Corporate Server und RHEL.

Alles Wichtige über opsi

Realisiert werden diese umfangreichen Funktionen durch eine typische Client-Server-Architektur: Während der opsi-Server für die Verwaltung der Umgebung und die Steuerung der Verwaltungsfunktionen zuständig ist, kommt auf Seiten der PCs der "opsi-client-agent" zum Einsatz. Der Agent muss auf jedem Client installiert werden. Ist auf einem Client ein opsi-Agent installiert, prüft dieser nach dem Boot-Vorgang, aber noch bevor sich ein Anwender einloggt, anhand der Server-Konfigurationsinformationen, ob auf dem Client ein Update oder andere Komponenten installiert werden sollen. Ist diese Aktion vorgesehen, kommt das Installationsprogramm "opsi-script" zum Einsatz. opsi besitzt die notwendigen Skripte und Software-Pakete auf einem File Share und führt deren Installation und Konfiguration vollautomatisch durch.

Eine vollständige Automatisierung von Software auf Seiten der Clients setzt voraus, dass dort keine Interaktion erfolgen muss. Den Part übernimmt das Skript "opsi-script". Das Skript bietet hierfür verschiedene Möglichkeiten:

- Existierende Setup-Programme über Parameter im sogenannten Silent- oder Unattended-Modus starten.

- Das Setup-Programm interaktiv mit dem freien Werkzeug AutoIt steuern.

- Die Aktionen des Standard-Setups aufzeichnen und die notwendigen Interaktionen durch das opsi-Installationsprogramm "opsi-script" ausführen.

Für welche dieser Varianten Sie sich entscheiden, ist letztlich eine Frage der eigenen Vorlieben und der jeweiligen Gegebenheiten. Meist ist eine Kombination der effektivste Weg.

Die automatische Betriebssysteminstallation erfolgt per PXE und wird mit dem Tool "opsi-bootimage" gestartet, das der Vorbereitung der Installation dient. Für die Ausführung greifen Sie zum opsi-Management-Interface. opsi unterstützt dabei aktuelle Versionen von Windows 7 bis 10 (32- und 64-Bit), die entsprechenden Server (2008 R2 bis 2012 R2) und gängige Linux-Systeme. Beim sogenannten "Unattended Setup" nutzt opsi die automatische Hardware-Erkennung des jeweiligen Set-up-Programms.

Die Steuerung von opsi erfolgt über ein schlichtes Interface, den sogenannten opsi-Configuration-Editor, der als Java-Programm und als Webstart-Applet verfügbar ist. Das Praktische bei verteilten Umgebungen: Der Editor unterstützt standortübergreifendes Client-Management, wobei eine Mehrfachselektion von Clients und gleichzeitige Bearbeitung möglich sind. Die Administration vereinfacht sich durch das Anlegen von Client-Gruppen. opsi verfügt außerdem über flexible Werkzeuge für die Paketerstellung und das Product-Lifecycle-Management. So kann die Umgebung mit unterschiedlichen Versionen der gleichen Software-Komponenten umgehen.

Das opsi-Management-Interface kommuniziert über einen opsi-Webservice mit den anderen Werkzeugen, insbesondere mit den Agenten. Die Kommunikation kann entweder in Textdateien oder aber in einer MySQL-Datenbank protokolliert werden. Der opsi-Server und die dort abgelegten Software-Pakete sind vor unbefugten Zugriffen geschützt. Über das Management-Interface erfolgt auch die Inventarisierung der Software- und Hardware-Komponenten. Diese Daten können bei Bedarf an eine CMDB übergeben werden.

Bild 1: Der Java-basierte opsi-Konfigurationseditor erlaubt das Anlegen von Client-Gruppen und das gezielte Filtern zur Begrenzung der Ansicht.

Inbetriebnahme

Wenn Sie opsi kennenlernen wollen, bieten sich zwei Möglichkeiten an: Sie können eine vollständige Server-Umgebung auf Grundlage eines Linux-Servers aufsetzen oder aber zu Evaluierungszwecken auf eine VM-Umgebung setzen. Das opsi-Entwicklerteam stellt eine entsprechende Test-Umgebung für den VMware Player zum Download bereit.

Der schnellste und einfachste Weg führt über eine VM-basierte Installation. Die Anforderungen an die Rechengeschwindigkeit sind eher niedrig und daher kann der opsi-Server problemlos als virtuelle Maschine installiert werden. Die Entwickler haben für ESX, VMware und Virtualbox entsprechende Maschinen eingerichtet. Die aktuelle opsi-Server-VM steht unter [3] zum Download bereit.

Für den Einsatz der VMware-basierten VM genügt eine VMware-Player-Installation. Da die bereitgestellte virtuelle Maschine unter Linux erstellt wurde, sind bei der Ausführung unter anderen Betriebssystemen unter Umständen geringfügige Anpassungen der Konfigurationsdatei "opsidemo.vmx" notwendig.

Der Installationsassistent führt durch die notwendigen Einstellungen, mit denen Sie beispielsweise den opsi-Server-Namen, das Unternehmen, netzwerkspezifische Einstellungen und die Admin- und Root-Passwörter bestimmen. Nach dem Neustart loggen Sie sich im Web-Interface als "adminuser" mit dem während des Setups angegebenen Passwort ein.

Exemplarisch sei die Installation von opsi auf einem Debian-8.0-System gezeigt. Beachten Sie, dass der opsi-Server im Verzeichnis "/var/lib/opsi" mindestens 16 GByte Speicherplatz voraussetzt. opsi benötigt die folgenden Komponenten:

$ aptitude install wget lsof host python-mechanize p7zip-full cabextract openbsd-inetd pigz samba samba-common smbclient cifs-utils samba-doc

Wenn Sie MySQL als Backend für die Inventarisierungsdaten und/oder das Lizenzmanagement verwenden wollen, brauchen Sie außerdem eine Datenbankserverinstallation:

$ aptitude install mysql-server

Mit dem nächsten Schritt prüfen Sie die Einträge für den opsi-Server in der Datei "/etc/hosts":

$ getent hosts $(hostname -f)

Die Ausgabe sollte wie folgt lauten:

192.168.1.1 server.domain.tld server

Gegebenenfalls müssen Sie die Namensauflösung in "/etc/hosts" korrigieren. Als Nächstes tragen Sie das opsi-Repository in der Datei "/etc/apt/sources.list.d/opsi.list" ein. Für Debian Jessie lautet der entsprechende Eintrag so:

deb http://download.opensuse.org/repositories/home:/uibmz:/opsi:/opsi40/Debian_8.0 ./

Zum Import der Signatur des Repository führen Sie folgenden Befehl aus:

$ wget -O - http://download.opensuse.org/repositories/home:/uibmz:/opsi:/opsi40/Debian_8.0/Release.key | apt-key add -

Prüfen Sie dann, ob der Import erfolgreich war:

$ apt-key list

Zur eigentlichen Installation von opsi führen Sie folgende Befehle aus:

$ aptitude update
$ aptitude safe-upgrade
$ aptitude remove tftpd
$ update-inetd --remove tftpd
$ aptitude install opsi-atftpd
$ aptitude install opsi-depotserver
$ aptitude install opsi-configed

Bei der Ausführung dieser Befehle werden Sie nach dem TFTP-Basisverzeichnis gefragt und zum Erstellen eines SSL-Zertifikates aufgefordert. Während des Setups müssen Sie auch dem Patchen der Samba-Konfigurationsdatei "smb.conf" zustimmen. Außerdem müssen Sie dem Benutzer "pcpatch" ein Passwort zuweisen. Sollte es während der Installation zu Warnungen kommen, dass "/etc/opsi/modules" nicht gefunden werden, können Sie diese Hinweise getrost ignorieren. Damit ist das opsi-System eingerichtet.

Die Umgebung verfügt mit "opsi-configed" über ein komfortables Management-Interface. Das ist als eigenständige Java-Anwendung und als Java-Applet verfügbar. Das Applet rufen Sie mit dem Standard-Browser über die URL "https://opsi-server:4447/configed/" auf. Alternativ öffnen Sie den opsi Config Editor. Dazu muss die Java-Laufzeitumgebung auf dem Server installiert sein. Der Konfigurationseditor gehört zu den "opsi-adminutils", die lokal auf Clients installiert werden können.

Wenn Sie opsi unter OpenSUSE, Red Hat Enterprise Linux, auf einem CentOS-Server oder einem Univention Corporate Server in Betrieb nehmen wollen, finden Sie in dem Dokumentationsbereich der Entwickler sehr detaillierte Beschreibungen. Die Dokumentation ist übrigens vorzüglich und steht sogar als Epub- und PDF-Dokument zum Download bereit.

Bild 2: Beim manuellen Anlegen eines neuen opsi-Clients geben Sie die relevanten Daten wie die IP-Adresse an.

Ähnliche Artikel

comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023