Cockpit-Add-on

Der Zustand aller Hosts auf einer Seite

Eine Zeile je Host des Host-Umschalters von Cockpit, eine Kachel je Azentrius-Add-on, etwa Cron Jobs, Image Update Monitor, Update Gaps und Security Monitor. Es gehört auf den Cockpit-Host, von dem aus die anderen erreicht werden, und liest nur; ein Klick auf eine Kachel öffnet das Add-on auf seinem Host.

  • Stabil
  • Version 0.2.3
  • Apache-2.0
  • Cockpit
  • Debian & Ubuntu
  • Fedora & RHEL

Das Problem

Jedes Add-on auf jedem Host ist eine eigene Seite.

Jedes Add-on zeigt seinen Zustand auf seinem eigenen Host. Um alles zu sehen, öffnest du jedes Add-on auf jedem Host.

Ein Add-on, das auf einem Host fehlt, oder ein Update, das dort vergessen wurde, übersieht man leicht.

Ein Host, der nicht antwortet, sollte das sagen, statt unauffällig auszusehen.

Funktionen

Was es kann

Eine Zeile je Host

In der Reihenfolge des Host-Umschalters, dieser Host zuerst, mit dem schwersten Zustand seiner Add-ons oder dem Grund, warum sich der Host nicht lesen lässt.

Eine Kachel je Add-on

Sein Zustand, seine wichtigste Zahl, seine Zusammenfassung und das Alter seiner Daten. Ein Klick öffnet das Add-on auf seinem Host.

Lücken fallen auf

Die Kacheln stehen auf jedem Host in derselben Reihenfolge: Ein Add-on, das auf einem Host fehlt, bekommt dort eine Kachel „Nicht installiert“, und eine Kachel sagt, wenn auf einem anderen Host eine neuere Version läuft.

Jeder Eintrag

Alle Einträge eines Add-ons klappen in einer Tabelle unter der Zeile auf. Ein Eintrag mit einer Stelle im Add-on öffnet es dort.

Nur Auffälliges

Ein Schalter in der Kopfzeile blendet die Kacheln aus, die keine Aufmerksamkeit brauchen. Der Browser merkt sich die Wahl.

Aktuell ohne dein Zutun

Es lädt beim Öffnen, bei „Aktualisieren“ und alle 5 Minuten, solange die Seite sichtbar ist. Daten, die älter sind, als das Add-on erlaubt, machen die Kachel zur Warnung.

Was eine Kachel sagen kann

Eine Kachel „In Ordnung“ heißt, dass das Add-on in dem, was es prüft, nichts gefunden hat, nicht, dass der Host sicher ist.

AnzeigeBedeutung
In Ordnung, Hinweis, Achtung, Problem, UnbekanntDer Zustand des Add-ons selbst, in der Statussprache, die alle Azentrius-Add-ons teilen
Nicht installiertDas Add-on läuft auf einem anderen Host, aber nicht auf diesem
Kein StatusDie Version des Add-ons auf diesem Host kennt den Status-Vertrag noch nicht
Kein ZugriffOhne Administratorzugriff auf diesem Host hat das Add-on nichts zu melden
Status nicht lesbarDie Antwort passt nicht zum Vertrag; die Kachel nennt den Grund
Nicht erreichbar, Schlüssel gesperrtDer Host hat nicht geantwortet, oder der SSH-Schlüssel ist gesperrt

Sicherheit

  • Nur lesend: Es führt den Status-Befehl jedes Add-ons aus, fragt nach keinen Administratorrechten und ändert auf keinem Host etwas.
  • Status-Befehle laufen nur aus /usr/lib/cockpit-… und immer mit status --lang en oder de; andere Argumente aus einem Manifest werden ignoriert.
  • Was ein Host sendet, sind Daten: gegen den Status-Vertrag geprüft und nur als Text gezeigt. Ein kompromittierter Host kann einen falschen Zustand melden, aber keinen Code in der Sitzung ausführen.
  • Die Seite lädt nichts aus dem Netz: Schriften und Symbole bringt sie selbst mit.

Installieren

Installation

Voraussetzungen

  • Auf dem Host mit dem Board: Cockpit mit dem Host-Umschalter, entwickelt mit Cockpit 360
  • Um ein Add-on auf einem anderen Host per Klick zu öffnen: AllowMultiHost in Cockpit
  • Auf den anderen Hosts: cockpit-bridge, eine Anmeldung per SSH-Schlüssel und die Add-ons
  • Add-ons mit Status-Vertrag: Cron Jobs 2.8.1, Image Update Monitor 0.20.0, Update Gaps 0.1.0, Security Monitor 0.1.0 oder neuer

Installiere das Board auf dem Host mit dem Host-Umschalter; die anderen Hosts brauchen nur die Add-ons.

Aus der Azentrius-Paketquelle

Für Debian, Ubuntu, Fedora und RHEL. Richte die Paketquelle einmal ein:

# Debian und Ubuntu
curl -fsSLO https://packages.azentrius.com/azentrius-repository.deb
sudo apt install ./azentrius-repository.deb
sudo apt update

# Fedora und RHEL
sudo rpm --import https://packages.azentrius.com/azentrius.asc
sudo dnf install https://packages.azentrius.com/azentrius-repository.rpm

Installiere dann Status Board in Cockpit unter Anwendungen oder auf der Konsole:

sudo apt install cockpit-status-board    # Debian, Ubuntu
sudo dnf install cockpit-status-board    # Fedora, RHEL

Die Updates deines Systems halten es aktuell. Status Board erscheint im Menü von Cockpit bei der Übersicht; wenn noch nicht, melde dich neu bei Cockpit an.

Aus den Dateien eines Releases

Unter openSUSE ist das der einzige Weg. Jedes Release enthält .deb, .rpm, SHA256SUMS und einen signierten Build-Nachweis. Prüfe beides vor der Installation:

sha256sum --ignore-missing -c SHA256SUMS
gh attestation verify <datei> --repo Azentrius/cockpit-status-board

Das .rpm eines Releases trägt keine Paketsignatur, deshalb braucht zypper die Option --allow-unsigned-rpm; die beiden Prüfungen treten an ihre Stelle. Einzelheiten stehen im README.

Fragen

Wo installiere ich es?

Auf dem Cockpit-Host, von dem aus die anderen erreicht werden, etwa einer Bastion. Die anderen Hosts brauchen nur die Add-ons.

Braucht es Administratorrechte auf den anderen Hosts?

Nein. Jedes Add-on meldet, was es ohne root lesen kann; für Hosts, die per Schlüssel erreicht werden, ist das der Normalfall.

Benachrichtigt es mich?

Nein. Es lädt nur, solange die Seite offen ist, und benachrichtigt niemanden.

Sucht es nach neuen Releases?

Nein. Es vergleicht die Versionen, die auf den Hosts laufen, miteinander, damit ein vergessenes Update auffällt.

Welche Hosts zeigt es?

Die aus der Liste des Host-Umschalters in /etc/cockpit/machines.d. Ein Host, der ohne Administratorrechte hinzugefügt wurde und den der Umschalter nur für eine Browsersitzung behält, steht nicht auf dem Board.

Speichert es Daten?

Nein, auf keinem Host. Nur der Browser merkt sich den Schalter „Nur Auffälliges“.

Was es unterscheidet

Status Board ist kein Monitoring-System: Es speichert keine Daten, verschickt keine Warnungen und lädt nur, solange die Seite offen ist. Es erreicht die Hosts über die eigenen SSH-Verbindungen des Host-Umschalters; sie brauchen nur cockpit-bridge, eine Anmeldung per Schlüssel und die Add-ons.

Weiterführend

Ebenfalls von Azentrius