eLeDia Konfigurationshärtung
Komponente eledia_config · Version 5.1
Einsatz und Zielgruppe
Abschnitt betitelt „Einsatz und Zielgruppe“Die Konfigurationshärtung ist für Moodle-Plattformen gedacht, die eLeDia betreibt oder die nach demselben Verfahren betrieben werden: Der Code kommt nur über ein Deployment auf den Server, nie über die Oberfläche. Sie richtet sich an das Hosting und an die Administration der Plattform.
Anders als die übrigen Bausteine im Paket ist sie kein Moodle-Plugin. Sie besteht aus zwei PHP-Dateien, die in der config.php eingebunden werden. Deshalb erscheint sie nicht in der Plugin-Übersicht.
Einrichtung
Abschnitt betitelt „Einrichtung“Die beiden Dateien .eledia_config und .eledia_config_post liegen neben der config.php. In die config.php kommen zwei Einbindungen:
.eledia_configwird vor dem Laden vonlib/setup.phpeingebunden. Diese Datei setzt Konfigurationswerte..eledia_config_postwird nach dem Laden vonlib/setup.phpeingebunden. Diese Datei sperrt Aufrufe, für die Moodle bereits geladen sein muss.
Beide Einbindungen prüfen, ob die Datei existiert. Fehlt eine Datei, läuft Moodle ohne die jeweilige Härtung weiter.
Was die Härtung bewirkt
Abschnitt betitelt „Was die Härtung bewirkt“Updates und Installation
- Hinweise auf verfügbare Updates sind abgeschaltet.
- Automatische Updates und die Installation von Plugins per Klick sind abgeschaltet.
Schutz vor Eingriffen
- Das Löschen von Plugin-Verzeichnissen über die Plugin-Übersicht wird verworfen.
- Der Leistungstest des Caches (
cache/testperformance.php) läuft ohne Anzahl und damit ohne Last. - Der Testdaten-Generator läuft ohne Debug-Ausgabe.
- Das Werkzeug zum Datenbankumzug ist gesperrt.
- Die Deinstallation von Admin-Werkzeugen (
tool_…) wird auf die Administrationsseite umgeleitet.
Feste Betriebswerte
- Der Pfad zu PHP ist auf
/usr/bin/phpgesetzt. - Der Virenscanner ClamAV ist über einen Unix-Socket angebunden.
- Aufgabenprotokolle werden 14 Tage und höchstens 5000 Läufe lang aufbewahrt.
- Für Configurable Reports ist die SQL-Sicherheit erzwungen.
Änderungen an der Härtung
Abschnitt betitelt „Änderungen an der Härtung“Die Dateien liegen im GitLab-Repository eledia_plugins/other/eledia_config, für Moodle 5.1 auf dem Branch 51. Änderungen laufen wie bei einem Plugin über einen Merge Request und gehen mit dem nächsten Deployment auf die Plattformen.
Prüfen Sie bei jeder Änderung zwei Dinge:
- Gehört der Wert in die Datei vor dem Laden von Moodle oder in die Datei danach? Konfigurationswerte gehören in
.eledia_config, Umleitungen, die Moodle-Funktionen brauchen, in.eledia_config_post. - Gilt der Wert für alle Plattformen? Kundenspezifische Werte gehören in die
config.phpder jeweiligen Plattform, nicht in die gemeinsame Härtung.
Datenschutz
Abschnitt betitelt „Datenschutz“Die Härtung verarbeitet keine personenbezogenen Daten. Sie trägt zur Sicherheit bei: Der Virenscan von Uploads ist fest eingestellt, und SQL-Berichte können keine beliebigen Abfragen ausführen.
Grenzen
Abschnitt betitelt „Grenzen“- Die Härtung ist auf die Serverumgebung im eLeDia-Hosting zugeschnitten. Pfade zu PHP und ClamAV müssen auf anderen Servern geprüft werden.
- Sie ersetzt keine Rollen und Rechte. Wer Administrationsrechte hat, kann weiterhin Einstellungen ändern, die hier nicht gesetzt sind.
- Werte, die hier gesetzt sind, lassen sich in der Oberfläche nicht ändern. Änderungen laufen über das Repository und das Deployment.
- Sie ist kein Moodle-Plugin und hat deshalb weder Datenschutz-API noch Tests.
FAQ und Fehlerbehebung
Abschnitt betitelt „FAQ und Fehlerbehebung“Ein Plugin lässt sich in der Oberfläche nicht installieren. Das ist beabsichtigt. Neue Plugins kommen über das Deployment auf den Server.
Die Deinstallation eines Admin-Werkzeugs führt zurück auf die Startseite der Administration. Auch das ist beabsichtigt. Wenden Sie sich an das Hosting.
Wie prüfe ich, ob die Härtung aktiv ist? Öffnen Sie die Plugin-Übersicht. Fehlt dort die Schaltfläche zum Installieren von Plugins, ist die Datei vor dem Laden von Moodle eingebunden. Ein Aufruf des Werkzeugs zum Datenbankumzug führt zurück auf die Administrationsseite, wenn auch die zweite Datei wirkt.
Uploads schlagen mit einem Virenscan-Fehler fehl. Prüfen Sie, ob der ClamAV-Dienst auf dem Server läuft und der Socket unter /var/run/clamav/clamd.ctl erreichbar ist.