Sentinel — Nextcloud-Sicherheitsprüfungen installieren und ausführen
erreichen, und arbeite die Funde durch.
Installation
- Melde dich in deinem MediaLab-Works-Konto an, öffne Lizenzen und lade das App-Archiv
sentinel-x.y.z.tar.gzherunter (verfügbar mit aktivem Abonnement, einer Lifetime-Lizenz innerhalb ihres Update-Zeitraums oder während des kostenlosen 30-tägigen Testzeitraums). - Entpacke es in den Nextcloud-Ordner
apps/(odercustom_apps/), sodass duapps/sentinel/erhältst, im Besitz des Webserver-Benutzers:cd /var/www/nextcloud/apps sudo tar -xzf ~/sentinel-x.y.z.tar.gz sudo chown -R www-data:www-data sentinel - Aktiviere es:
sudo -u www-data php occ app:enable sentineloder über die Seite Apps. - Öffne Verwaltungseinstellungen → Sentinel → License, füge deinen Lizenzschlüssel ein und speichere. Die App kontaktiert den Lizenzserver, bindet den Schlüssel an diese Nextcloud-Instanz und zeigt die Lizenz als Active an.
Lizenz
Die Lizenz wird einmal täglich geprüft. Ohne Internet arbeitet die App 7 Tage nach der letzten erfolgreichen Prüfung weiter; danach wird sie gestoppt, bis sie wieder prüfen kann.
Ohne gültige Lizenz wird die App gestoppt: Die Watcher und Hintergrund-Jobs laufen nicht, es werden keine Warnungen gesendet, ihre Seiten und die API antworten mit dem Grund, und nur der Abschnitt License funktioniert weiter (dort kannst du den Testzeitraum starten, den Schlüssel eingeben oder verlängern). Nichts wird gelöscht: Die Baseline, das Journal und jede Einstellung bleiben erhalten, und die Überwachung nimmt ihre Arbeit wieder auf, sobald die Lizenz gültig ist.
Erste Schritte
- Take the baseline, sobald du mit dem Zustand der Installation zufrieden bist, in dem sie
sein sollte:
sudo -u www-data php occ sentinel:baseline take(oder im Baseline-Abschnitt der Seite). Von da an werden nur Änderungen seit diesem Zeitpunkt gemeldet. - Stell sicher, dass Warnungen ankommen: Wähle unter Being told ab welcher Schwere Glocke und E-Mail verwendet werden, füge eine zusätzliche Adresse hinzu (idealerweise eine, die ein Telefon erreicht), lege die Stunde der täglichen Zusammenfassung fest und drücke Send a test message.
- Lies die Overview: in welchem Zustand sich der Server befindet, was überwacht wird und was nicht, und ob Warnungen jemanden erreichen würden.
Konfiguration
Alles liegt auf Verwaltungseinstellungen → Sentinel (dieselbe Konsole befindet sich auch im oberen Menü). Nichts ist fest verdrahtet:
| Abschnitt | Was du einstellst |
|---|---|
| Being told | Glocke, E-Mail, ab welcher Schwere jeweils, zusätzliche Adressen, tägliche Zusammenfassung und ihre Stunde |
| Watching | Ob überwacht wird, wie oft, wer benachrichtigt wird, ab welcher Schwere, wie lange das Journal aufbewahrt wird |
| What counts as too old | Veraltete App-Passwörter, ungenutzte Sitzungen, ruhende Administratoren, Links ohne Ablaufdatum |
| The files | Welche Teile der Installation die Baseline abdeckt, Dateiarten, Ausnahmen, Größenlimit, Hash |
| Where people sign in from | Netzwerke merken oder nicht, bei neuen warnen, wie genau ein Netzwerk ist, zu ignorierende Konten |
| Public links | Link-Nutzung beobachten, ab wie vielen Besuchern sich ein Link lohnt, wie weit über den eigenen Rekord des Links, fehlgeschlagene Passwortversuche, die als Raten gelten |
| Files changing very fast | Fenster, Anzahl von Überschreibungen, Löschungen oder Umbenennungen auf eine Erweiterung, und ob nur gewarnt oder das Konto deaktiviert wird |
| Asking the server what it serves | Sonde an/aus, zusätzliche Pfade, Tage der Warnung vor Ablauf des Zertifikats |
| Which program is writing | Ob der EDR-Daemon erwartet wird und wo er seine Berichte ablegt |
| A scanner to ask | ClamAV verwenden, dessen Socket, wie viel von einer Datei gesendet wird |
Optionaler EDR-Daemon (mitgeliefert in apps/sentinel/edr/, läuft als root außerhalb von
Nextcloud):
cd /var/www/nextcloud/apps/sentinel/edr
sudo sh install.sh
sudoedit /etc/sentinel-edr/config.ini # at minimum data_dir
sudo sh install.sh # again, to grant the paths it needs
sudo systemctl enable --now sentinel-edr
Der tägliche Gebrauch
- Reagiere auf Funde aus der Übersicht: Jeder sagt, was er bedeutet, was passiert, wenn er ignoriert wird, und hat die Lösung (ablaufen lassen, widerrufen, entfernen) gleich daneben.
- Genehmige nach einem Nextcloud- oder App-Update die geänderten Dateien:
occ sentinel:baseline accept --all --note "Nextcloud 34.0.4". Danach bleiben nur unerklärte Änderungen übrig. - Aus einem Terminal:
occ sentinel:check(der Bericht;--inventory,--json,--quiet-when-clean,--probe). Der Exit-Code ist ungleich null, wenn etwas Aufmerksamkeit braucht — ein wöchentlicher Cron-Eintrag, der nur bei Fehler mailt, ist also eine Zeile. - Turning Sentinel off (Ende der Seite): Überwachung pausieren, die App abschalten und dabei
alles behalten, oder sie mit allen gespeicherten Einträgen entfernen.
occ app:disable sentinelbehält alles;occ sentinel:removelöscht sie.
Fehlerbehebung
- Der Integritätsabschnitt listet direkt nach der Installation viele geänderte Dateien auf:
Es wurde noch keine Baseline aufgenommen, oder ein Update wurde nicht genehmigt. Nimm sie auf
oder führe nach der Prüfung
occ sentinel:baseline accept --all --note "..."aus. - Nichts wird überwacht, obwohl die App aktiviert ist: Die Hintergrund-Jobs müssen laufen (Cron). Öffne nach einem Deaktivieren und erneuten Aktivieren einmal die Sentinel-Seite: Die Jobs werden wieder eingetragen, und die Einrichtungsprüfung meldet es.
- E-Mail-Warnungen kommen nicht an: Prüfe die E-Mail-Server-Einstellungen von Nextcloud und nutze Send a test message. Administratoren ohne E-Mail-Adresse bekommen nur die Glocke.
- Das Entfernen mit
occ app:remove sentinelhat Tabellen in der Datenbank zurückgelassen: Entferne sie stattdessen in der App selbst oder mitocc sentinel:remove. Konten, die Sentinel deaktiviert hat, bleiben deaktiviert, bis sie freigegeben werden (--release-accounts), und der EDR-Daemon läuft weiter, bis du ihn stopst:systemctl disable --now sentinel-edr.