OS X - Zentral verwaltete Plattform

Ausgangslage

In der AdNovum Informatik AG ist Apples 'MacBook Pro' ein stark vertretenes mobiles Arbeitsgerät. Das Betriebssystem Mac OS X soll in die bestehende IT-Infrastruktur integriert werden. Bis dato wurden weder Accounts noch Applikationen zentral verwaltet. Authentifiziert wurde mit lokalen Accounts, welche auf dem Mac-Client manuell angelegt werden mussten. Die Software-Installationspakete wurden den Mitarbeitern über ein Netzlaufwerk zur Verfügung gestellt. Ferner war Remote-Support sowie Fernwartung durch den First-Level-Support nicht möglich. Das NFS-Benutzerverzeichnis sowie die Netzlaufwerke wurden nach erfolgreicher Authentifizierung am File-Server über das Netzwerkprotokoll SMB (Service Message Block) verbunden. Die Netzlaufwerke waren zudem nur während der aktuellen Session eingebunden, folglich war beispielsweise nach jedem Systemneustart das manuelle Mounten der Netzlaufwerke erforderlich.


Umfeld und Ziel der Arbeit

Bereits vorhanden ist unsere ESXi Server-Farm, auf welcher ein Mac OS X Server virtualisiert werden soll. Ebenfalls gegeben ist der Verzeichnisdienst OpenLDAP, welcher über alle Mitarbeiter-Stammdaten verfügt. Ein NetRestore-Server wird gegenwärtig für die netzwerkbasierte OS-Installation eingesetzt.

Ziel dieser IPA ist es, die Mac-Clients in die bestehende IT-Infrastruktur zu integrieren. Einen integralen Bestandteil der Zielinfrastruktur stellt die Open-Source-Software namens Munki dar, welche auf einem virtualisierten Mac OS X Server betrieben werden soll. Mittels Munki müssen sicherheitskritische Software-Updates forciert, Applikationen zentral verwaltet und an die Mac-Clients verteilt werden können. Analog zum vorinstallierten 'App Store' beinhaltet die Munki-Client-Installation eine individualisierbare Benutzeroberfläche (GUI) namens 'Managed Software Center', über welche die Mitarbeiter optionale Software-Pakete sowohl installieren als auch deinstallieren können. Ebenfalls elementar ist das Hardening des Server-Betriebssystems und des Apache-Webservers. Letzterer dient als Schnittstelle zwischen Munki-Repository und Munki-Client. Das Munki-Repository ist eine zentrale Datenablage (Depot), welche über das Netzwerk erreichbar ist.

Des Weiteren muss die LDAP-Anbindung der Mac-Clients realisiert werden. Künftig soll auf den Mac-Clients gegen die LDAP-Replica authentifiziert werden, lokale Accounts werden dadurch kontingent. Ferner wird der Verwaltungsaufwand minimiert, indem der OpenLDAP-Server den Mac-Clients die Automount-Konfigurationen (Automounter Maps) zur Verfügung stellt. Beispielsweise sollen die Mastermap oder Mountpoints zentral auf dem LDAP-Master verwaltet werden können. Die Änderungen werden auf den Mac-Clients wirksam, sobald die Modifikationen auf den LDAP-Consumer repliziert worden sind. Die Aufgabenstellung gibt vor, dass die NFS-Benutzerverzeichnisse unter dem Mountpoint /home und die Netzlaufwerke unter dem Mountpoint /share verbunden werden sollen.

Analog könnte der Automounter auch direkt auf dem Mac-Client konfiguriert werden. Der grosse Nachteil bestünde allerdings darin, dass interkurrierende Netzlaufwerke auf jedem Mac-Client manuell zur Konfigurationsdatei hinzugefügt werden müssten. Diese Problematik wird durch die zentrale Verwaltung der Automounter-Konfigurationen auf dem LDAP-Server behoben.

Ferner soll ein ASR-Image (Apple Software Restore) erstellt werden, welches alle LDAP- und Munki-Konfigurationen der Clients enthält. Die netzwerkbasierte Betriebssystem-Installation dieses vorkonfigurierten ASR-Images erfolgt über den Dienst NetRestore.


Beschreibung der Arbeit und der Lösung

Munki wird auf einem virtuellen OS X Server betrieben. Ein Apache-Webserver sorgt dafür, dass die Installations- und Konfigurationsdateien aus dem Munki-Repository vom Munki-Client über HTTP angefordert werden können. Der OpenLDAP-Server wurde mit zusätzlichen Schemadefinitionen erweitert. Die Automount-Objekte wie beispielsweise die Mastermap oder die Automount Maps wurden in einer LDIF-Datei (LDAP Data Interchange Format) vorbereitet und anschliessend importiert. Ein grosser Vorteil dieser Variante ist, dass der LDAP-Verzeichnisbaum später ohne grossen Aufwand auf dem produktiven LDAP-Master implementiert werden kann. Ein Bash-Script automatisiert die Konfigurationen auf Client-Ebene, welche für die LDAP-Anbindung und den Remote-Zugriff über SSH (Secure Shell) und VNC (Virtual Network Computing) erforderlich sind. Ein vorkonfiguriertes ASR-Image wurde generiert und zum NetRestore-Dienst hinzugefügt. Es wurde ein Backup-Konzept für den virtualisierten Server erarbeitet, welches auf dem Produkt NetBackup der Firma Symantec basiert. Die Installationsanleitung und Betriebsanleitung wurden fortlaufend nachgeführt.

Das Resultat ist eine vollständig automatisierte Betriebssystem-Installation über den Dienst NetRestore. Die LDAP-Anbindung ist vorkonfiguriert, sodass gegen die LDAP-Replica authentifiziert werden kann. Die Kommunikation zwischen LDAP-Client und Directory-Server wird über SSL verschlüsselt. Die NFS-Shares sowie das NFS-Benutzerverzeichnis werden automatisch und ohne Authentifizierung in zwei unterschiedlichen Mountpoints verbunden. Munki ist funktionsbereit, das GUI namens 'Managed Software Center' wurde auf die Bedürfnisse der AdNovum Informatik AG zugeschnitten. Das Munki-Repository wurde um folgende Software-Pakete des Herstellers Mozilla erweitert:

  • Webbrowser Firefox (Installationstyp: obligatorisch)
  • Mail-User-Agent Thunderbird (Installationstyp: optional)

Der First-Level-Support wird die Mitarbeiter in Zukunft per Remote-Zugriff unterstützen können. Um die Suche von Fehlerquellen zu vereinfachen, wurde das Logging auf dem Apache-Webserver und dem Munki-Client aktiviert. Abschliessend wurden die Testfälle gemäss dem Testkonzept durchgeführt und die Testergebnisse schriftlich festgehalten.