NcStatusCheck
Zentralisierte Überwachung für mehrere Nextcloud-Instanzen
NcStatusCheck ist ein Überwachungstool, mit dem du den Zustand mehrerer Nextcloud-Server über eine einzige Weboberfläche verfolgen kannst: Nextcloud- und PHP-Versionen im Vergleich zu ihrem Sicherheits-Mindeststand, Branch-End-of-Life, Erreichbarkeit, Konfigurationswarnungen, installierte Apps, Docker-Container und bekannte Schwachstellen.



🎯 Funktionen
Überwachung
- Drei Datenerfassungsmodi pro Server: Basic (nur NC-Version), Extended (vollständige Daten über die serverinfo-API) und Push (Daten, die von der Remote-Instanz gesendet werden)
- Versionsanalyse für Nextcloud und PHP im Vergleich zu einem Sicherheits-Mindeststand, den der Cron mit offiziellen Releases synchron hält, mit einer Karenzzeit (
nc_update_grace_days), sodass eine Instanz erst einige Tage nach Veröffentlichung eines Patches markiert wird
- Branch-Lebenszyklus: End of Life jedes Nextcloud-Branches (offizieller Zeitplan), nächste Release-Termine und wie viele deiner Server welchen Branch ausführen
- Up/Down-Verfolgung: aktuelle Erreichbarkeit plus ein begrenztes Journal bestätigter Übergänge, das eine 30-Tage-Verfügbarkeit in % und eine Incident-Liste speist
- SSL-Zertifikatsablauf, aus der bestehenden HTTPS-Prüfung gelesen (keine zusätzliche Anfrage)
- Bekannte Schwachstellen (optional): Nextcloud-, Collabora- und OnlyOffice-Advisories, abgeglichen mit den Versionen, die deine Flotte tatsächlich ausführt
- Audit installierter Apps: gleicht
occ app:list mit dem Nextcloud App Store ab (upgrade-blockierende oder inkompatible Apps, verfügbare Updates, Reife- und Turbulenzsignale)
- Docker-Container: gestoppte, neu startende oder ungesunde Container sowie Image-Updates, geprüft gegen den Registry-Tag-Katalog (Patch in deinem Branch, neuerer Branch). Wenn mehrere überwachte Instanzen sich eine Maschine teilen, werden Container ihrer eigenen Instanz zugeordnet
- Proaktive Alarme (Webhook und/oder E-Mail): Up/Down-Zustandsänderungen sowie langsame Signale (SSL-Ablauf, verwundbare Version, veraltete Push-Prüfung, kritischer Audit-Bericht, blockierender App-Befund, defektes
occ). Ein Alarm pro neuer Bedingung, kein Erinnerungs-Spam
- Pausieren eines Servers (Migration, Außerbetriebnahme): Prüfungen und Alarme werden ausgesetzt, die Zeile bleibt sichtbar
- Desktop-Client-Überwachung: aktuelle Version, Release Candidate in Arbeit, gemessenes Release-Tempo
Dashboard
- Flottentabelle (Server | Nextcloud | PHP | Health) und Branch-Lebenszyklus-Tabelle nebeneinander auf breiten Bildschirmen
- Health-Spalte nach dem Prinzip „Stille = alles gut": Badges nur, wenn es etwas zu tun gibt
- Synthese-Karten: anzuwendende Updates, Schwachstellen, Branch-End-of-Life, bevorstehende Releases, aktive Warnungen, Apps, Docker, Desktop-Client. Jede öffnet ihre Details in einem Fenster
- Flottenüberwachung für Apps und Docker-Images, sortiert danach, was du tun musst: Zu prüfen, Zu tun, Zu planen und eine eingeklappte Gruppe Kontext
- Filter nach Nextcloud-Status, PHP-Status, Gesamtstatus (offline, Wartung, Warnungen, Prüfungsfehler, Docker-Updates…), Docker-Image und Textsuche
- Tags unter jedem Servernamen, anklickbar zum Filtern (mehrere Tags = alle gleichzeitig): deine eigenen Tags (
client:durand, lab…), plus ein 🖥-Tag, das die Maschine benennt, wenn mehrere überwachte Instanzen auf demselben Server laufen (erkannt aus Push, Skript v12+), eine Farbe pro Maschine. Ein als type:value geschriebenes Tag übernimmt die Farbe seines Typs, sodass alle client:…-Tags eine Farbe teilen
- FR / EN / DE-Oberfläche
Detailseite
- Status-Kacheln über den Tabs: Erreichbarkeit, 30-Tage-Verfügbarkeit (Incident-Liste in einem Fenster), SSL-Zertifikat, Aktualität jeder Prüfung
- Übersicht: Versionsurteil, stummgeschaltete Alarme (Bestätigungen mit ihrem Grund und Ablauf), Instanz-Zusammenfassung (PHP, Webserver, Datenbank, Cache, Deployment und Satelliten-Tools wie die Office-Suite, Talk HPB oder Whiteboard, wie aus Apps und Containern ersichtlich), dann nach Bereich gruppierte Probleme
- Tabs: technische Informationen, Anwendungen, Docker-Container, Prüfungen
- Tags unter der URL, direkt bearbeitbar, mit den anderen Instanzen, die auf derselben Maschine laufen
- Jede Warnung kann bestätigt werden (Grund + optionaler Ablauf)
- Server-Audit-Bericht, wenn die Instanz ihren monatlichen
nc-audit.sh-Bericht pusht
Administration
- Server: Füge einen Server über seine URL hinzu (
https:// optional), konfiguriere dann seine Prüfungen auf seiner Karte (serverinfo-Token mit einem Test-Button, Push-Token und Generator für ein einsatzbereites Skript), versehe ihn mit Tags, pausiere oder entferne ihn
- Gemeinsame Hosts: Gib an, welcher Docker-Compose-Stack zu welcher Instanz gehört, wenn mehrere überwachte Nextclouds sich eine Maschine teilen
- NC / PHP-Versionen: Sicherheits-Mindeststände, Statusregeln, Neusynchronisierung aus offiziellen Releases
- App-Warnungen: eine manuelle Liste bekannter Fehler
- Benachrichtigungen: die effektive Alarmkonfiguration (in
config.php festgelegt, schreibgeschützt angezeigt) und ein Test-Button
- IP-Filterung: generiert nginx- / Apache- / ufw-Allowlist-Regeln
- Stummschaltungen: Audit jeder Bestätigung in der gesamten Flotte und welche davon noch etwas verbergen
- Erfassungsmodi: Hilfe zu den drei Prüfungen
- „Trigger Push"-Button auf dem Dashboard: fordert jeden Push-Server auf, seine Daten bei seinem nächsten Cron-Lauf zu senden
🏗️ Architektur