- Login-Seite: WiS-/TESM-Logo und "Melde dich an, um fortzufahren" aus der Box entfernt; die TESM-Wortmarke mit Funktionszeile ist jetzt der tatsächliche Seitenhintergrund (absolut positioniert, hinter allem), die Box liegt zentriert davor. Nebenbei zwei echte Bugs gefunden und behoben: fehlendes Cache-Busting auf login.html (asset_url() wie in base.html, sonst hält nginx' 7-Tage-Cache eine alte style.css/app.js fest) und ein durch den fehlenden align-items-Wert auf die volle Höhe gestrecktes Login-Formular. - Neuer SSH-Login-Banner (dynamisches MOTD) mit Live-Flottenstatus statt der Standard-Ubuntu-Willkommensmeldung: srv/tesm/motd_banner.py liest Online/Offline- und DHCP-Status aus denselben Quellen wie das Web-Dashboard (get_device_status()/_dhcp_read_leases()), eingebunden über etc/update-motd.d/50-tesm. install.sh deaktiviert dabei die Standard- Ubuntu-MOTD-Skripte (chmod -x, reversibel) und installiert den neuen Hook.
11 lines
674 B
Bash
11 lines
674 B
Bash
#!/bin/sh
|
|
# TESM -- Live-Flotten-Status im SSH-Login-Banner (dynamisches MOTD, siehe
|
|
# /etc/pam.d/sshd: "session optional pam_motd.so motd=/run/motd.dynamic").
|
|
# Ruft motd_banner.py im TESM-Quellverzeichnis über dessen venv auf, da
|
|
# app.py (die eigentliche Datenquelle) Flask u.a. importiert, die nur dort
|
|
# installiert sind -- gleiches Muster wie generate_ips.py/poe.sh.
|
|
# "timeout" verhindert, dass ein hängender DB-/Dateizugriff den Login
|
|
# blockiert; "|| true" sorgt dafür, dass ein Fehler hier nie den SSH-Login
|
|
# selbst stört -- im schlimmsten Fall bleibt der Banner einfach leer.
|
|
timeout 3 /srv/tesm/venv/bin/python3 /srv/tesm/motd_banner.py 2>/dev/null || true
|