Benutzer:TheEarlyBirdCatchesTheWorm/Open Computer Orchestration

aus Wikipedia, der freien Enzyklopädie
TheEarlyBirdCatchesTheWorm/Open Computer Orchestration
Basisdaten

Entwickler Georg Sieber
Erscheinungsjahr 2020
Betriebssystem Linux, Unix, Windows, macOS
Programmiersprache PHP, Python
Kategorie Inventarisierung von EDV-Hard- und Software
Lizenz GNU GPL
deutschsprachig ja
github.com/schorschii/oco-server

Open Computer Orchestration (abgekürzt OCO) ist ein freies Inventarisierungs-Management- und Softwareverteilungs-System für unixoide Systeme und Windows. Das System sammelt über den OCO-Agenten, welcher auf jedem zu verwaltenden Client installiert sein muss, Informationen über Hard- und Softwarekomponenten der verwalteten Computer in einer zentralen Datenbank auf dem OCO-Server. Des Weiteren ist es möglich Softwarepakete zu erstellen und über das System auf die Clients zu verteilen. Die Steuerung erfolgt über ein Webinterface.

Funktionen

Open Computer Orchestration bietet folgende Kernfunktionen:

OCO-Agent

Der Agent ist in Python geschrieben. Er nimmt regelmäßig mit dem Server Kontakt auf und meldet Hard- und Softwareinformationen über eine JSON-RPC-API [1] per HTTPS an den Server. Ebenfalls über diese Schnittstelle meldet der Server eventuell ausstehende Softwarejobs an den Agenten, welcher diese dann ausführt.

OCO-Server

Der Server besteht aus folgenden Komponenten [2]:

  • Datenbankserver: die Datenbank speichert das Inventar sowie den Status der Softwarepakete (MySQL bzw. mariaDB werden unterstützt)
  • Agent-API: verantwortlich für die HTTPS-Kommunikation zum Agenten (PHP)
  • Web Client: ermöglicht die Administration (Abfragen, Paketverwaltung und Softwareverteilung) per Webbrowser (PHP)
  • Client-API: ermöglicht die (automatisierte) Administration (Abfragen, Paketverwaltung und Softwareverteilung), z.B. über eigene Skripte (PHP)

Die Kommunikation zwischen Agent und Server erfolgt ausschließlich per HTTPS, da bei Verwendung von HTTP ein Man-In-The-Middle-Angreifer einfach schadhafte Softwarepakete an den Agenten senden könnte.

Die Softwarepakete werden als einfache ZIP-Archive gespeichert, da dies den kleinsten gemeinsamen Nenner zwischen den unterstützten Agenten-Betriebssystemen darstellt. Bei der Bereitstellung auf einem Client wird dieses Archiv heruntergeladen und automatisch entpackt. Zusätzlich zum ZIP-Archiv besitzt jedes Softwarepaket Metadaten, wie zum Beispiel die Installation- und Deinstallations-Prozedur. Dies sind einfache Kommandos, welche zur Installation der Software führen. Am Beispiel eines MSI-Installationspaketes unter Windows lautet die Kommandozeile zur Installation msiexec /quiet /i Paket.msi. Die Softwarejobs können zudem zeitgesteuert geplant werden.

Ein detailliert konfigurierbares Berechtigungssystem ermöglicht eine feingranulare Rechtevergabe an bestimmte Personen im Unternehmen. So kann zum Beispiel definiert werden, dass eine Personengruppe lediglich Informationen über bestimmte verwaltete Computer einsehen oder nur bestimmte Softwarepakete verteilen darf. [3]

Unterstützte Betriebssysteme

Der OCO-Agent unterstützt Windows ab Windows 7 bis Windows 11, diverse Linux-Distributionen (derzeit offiziell Ubuntu und Debian) sowie macOS [4].

Der OCO-Server kann auf einer beliebigen Linux-Distribution mit einem Webserver und PHP (mind. Version 7) installiert werden. Als Webserver wird der Apache-Webserver empfohlen [5]. Auch andere Webserver oder Betriebssysteme können verwendet werden, sind nur nicht offiziell unterstützt. Aufgrund des einfachen Aufbaus sind für eine ausreichende Servergeschwindigkeit auch bei mehreren tausend Clientrechnern selbst einfache Rechner als Server ausreichend.

Support

Die englischsprachige Dokumentation erklärt alle wichtigen Funktionen und leitet durch den Installationsprozess. Der Issue-Tracker auf der Github-Projektseite bietet eine einfache Möglichkeit zum Melden von Fehlern oder Problemen. Außerdem bietet der Entwickler zudem kommerziellen Support an.

Erweiterungen

Es existiert ein separates Git-Repository mit den offiziellen Erweiterungen für den OCO-Server. Derzeit umfasst dieses eine Erweiterung für das OCO-Webfrontend, welches die Verwaltung von DHCP-Reservierungen des ISC-DHCP-Servers ermöglicht.

Weblinks

Einzelnachweise

  1. Schorschii: Open Computer Orchestration. 15. Mai 2022, abgerufen am 22. Mai 2022.
  2. Schorschii: Open Computer Orchestration. 15. Mai 2022, abgerufen am 22. Mai 2022.
  3. Schorschii: Open Computer Orchestration. 15. Mai 2022, abgerufen am 22. Mai 2022.
  4. Schorschii: Open Computer Orchestration. 15. Mai 2022, abgerufen am 22. Mai 2022.
  5. Schorschii: Open Computer Orchestration. 15. Mai 2022, abgerufen am 22. Mai 2022.


Kategorie:IT-Managementsoftware Kategorie:Freie Server-Software