Der Zeugnisprogramm sphairas ist sehr gut auf die rechtlichen Rahmenbedingungen der Schulen in Niedersachsen zugeschnitten, von denen die meisten einen IServ als Portalserver und Lernmanagementsystem nutzen. Wer sphairas für die Zeugnisse verwenden will und einen IServ hat, kann optional die Benutzerauthentifizierung über den schuleigenen IServ verwenden und muss an die Lehrkräfte keine neuen Passwörter vergeben. Jeder Kollege/jede Kollegin kann sich von Anfang an mit dem IServ-Benutzernamen und -Passwort authentifizieren. Technisch gesehen wird dafür die IMAPS-Auth Schnittstelle des IServ genutzt (https://tools.ietf.org/html/rfc4959). Dabei muss der Server, auf dem sphairas läuft, gar nicht im selben Netz installiert sei wie der IServ.
Wenn man für sphairas keinen separaten Server zur Verfügung stehen hat, kann das Zeugnisprogramm allerdings auch direkt in dem IServ als zusätzliche Anwendung installiert werden. Möglich macht das die Tatsache, dass IServ offenbar standardmäßig mit einer Docker Engine ausgeliefert wird. Mit dem Installationsskript, das gleich folgt, geht das mit ganz wenigen Schritten. Trotzdem richtet sich das Folgende erst einmal an Entwickler und Administratoren. Eine Test-Installation von sphairas in einem IServ sollte nicht ohne Beratung in einem Produktivsystem erfolgen! Sie müssen wissen, was Sie tun.
Voraussetzung für die Installation ist ein Root-Zugang zum IServ über die Konsole. Am Schluss muss eine Datei (Administrations-Zertifikat) vom IServ transferiert werden, daher am besten mit einer SSH-Konsole arbeiten. Der sphairas-Server wird nicht über seine eigene Weboberfläche, sondern mit einer Java-basierten, separaten Anwendung administriert, über die z. B. die Unterrichte und Nutzer importiert werden. Die Administrations-Clients authentifizieren sich am Server über ein SSL-Client-Zertifikat und müssen diesen daher über zwei zu öffnende Ports am IServ und vor allem über einen festen Servernamen erreichen können. Der IServ-Server muss also in dem Netz, in dem gearbeitet wird, also unter einem festen Namen erreichbar sein. Diese Authentifizierungsmethode kann nicht per Konfiguration abgeschaltet werden.
Das Skript liegt hier https://github.com/borisheithecker/sphairas-iserv-install/blob/master/install-sphairas.sh und wird am besten per wget o. Ä. direkt als Download in den IServ geladen. Danach wird es ausführbar gemacht und kann gestartet werden. Sehen Sie sich das Skript an. Es führt der Reihe nach folgende Schritte aus:
IServ hat zwar standardmäßig eine Docker Engine, aber noch nicht die Skript-Engine Docker Compose. Diese besteht aus einer einzigen Datei, die in einem der Verzeichnisse für ausführbare Programme abgelegt wird.
Wenn der IServ in dem Netz, in dem Sie arbeiten wollen, nicht unter dem konfigurierten eigenen Hostnamen erreichbar ist, kann optional ein anderer Hostname angegeben werden. Wird der Schritt übersprungen, muss der IServ hinterher für die Clients (s. o.) unter seinen eigenen Hostnamen erreichbar sein.
Es werden dann eine Docker Compose-Konfiguration und eine Datei mit Umgebungsvariablen in dem Verzeichnis /etc/sphairas angelegt. Dort liegt hinterher außerdem eine Log-Datei mit allen durchgeführten Installationsschritten.
Die Weboberfläche ist hinterher unter der Subdomäne listen.<iserv-hostname> aus dem Internet erreichbar. Wenn der Schul-IServ also beispielsweise die Domäne iserv-meine-schule.de nutzt, wird das Zeugnisprogramm unter listen.iserv-meine-schule.de erreichbar sein. Dazu müssen eine Apache-Konfigurationsdatei angelegt und die neue Subdomäne in die Liste der SSL-Domänen (/etc/iserv/ssl-domains) eingetragen werden.
Die Clients erreichen den Server standardmäßig an den Ports 8181 und 7781. (Letztere wird von einer Message Queue genutzt.) Das Skript macht optional einen Eintrag in die Firewall-Einstellungen, um diese beiden Ports im lokalen Netz zu öffnen. Wenn die Clients den Zeugnisserver auch aus dem Internet erreichen können sollen, muss der Eintrag entsprechend der IServ-Dokumentation angepasst werden.
Der sphairas-Server wird mit Docker Compose gestartet und gestartet. Beim ersten Start werden zunächst die Images für MySql und die Dev-Version von sphairas heruntergeladen, dann werden Container für MySql und sphairas sowie drei persistente Volumes eingerichtet. Zum Starten und stoppen müssen Sie immer zunächst in /etc/sphairas wechseln. Über die Option -d werden optional die Container als Dämon gestartet: Beim ersten Ausprobieren also ggf. weglassen, wenn man die Logs genießen will.
Gestoppt wird mit Ctrl+C, wenn die Container nicht als Dämon laufen, und dann auf jeden Fall die Container vernichten:
Zur Erstellung eines Nutzerzertifikats gibt es ein Skript, das in dem Server-Container gestartet werden kann. Hinterher kopieren Sie die Datei mit dem Zertifikat aus dem Container auf die IServ-Konsole und vor dort aus (z. B. per scp) auf den Desktop-Rechner, auf dem dem der Client laufen soll.
Dev-Binaries für den Client findet man unter https://github.com/sphairas/sphairas-desktop/releases. Anleitungen zum Einrichten eines Clients und zum Datenimport folgen mit der Zeit hier: https://sphairas-user-manual.readthedocs.io/de/latest/