4b96d13510
Beide UIs haben effektiv Host-/Backup-Zugriff (Borg-Restore-Scope inkl. /local/secrets, code-server mit Workspace-Mounts). Bisher liefen sie ueber die catch-all-Regel mit nur one_factor. Files und Scrutiny waren bereits two_factor; die Liste wird konsistent gezogen. Wirkung erst nach manuellem Host-Merge (Ausnahme laut docs/WORKFLOW.md): 1. /mnt/user/appdata/authelia/config/configuration.yml mergen 2. docker restart authelia 3. Smoke-Test auf einer der vier 2FA-Domains 4. services/authelia-diff.sh muss exit 0 liefern Audit-Restliste nachgezogen: Tier-1-Operator-2FA geschlossen, restliche geparkte Auth-Themen (OIDC, CrowdSec, Nextcloud-2FA) bewusst weiter offen mit aktualisierter Begruendung.
6.9 KiB
6.9 KiB
Audit-Restliste 2026-05-25
Status: kompakte Restliste. Die erledigten Sprint-Tabellen und langen Audit-Snapshots wurden aus der Arbeitskopie entfernt; Detailhistorie liegt in Git.
Aktuell offene Punkte
| Prioritaet | Punkt | Naechster Schritt |
|---|---|---|
| P2 | Family-Onboarding praktisch starten | Fokus: Vaultwarden als Passwortbasis, Immich-Mobile-Backup auf jedem Handy, Mealie mit erstem Rezept/Einkaufsliste; Ablauf steht in docs/FAMILY_ONBOARDING.md |
Restore-Audit Backlog (Stand 2026-06-03)
Ergebnis des Restore-Skills-Audits (Session 2026-06-02/03). Die kritischen Bugfixes (Cron-OR-Semantik, ntfy-Race, Cleanup-Trap, Pfad-Inkonsistenz, Vaultwarden-Token, Paperless-Retry, Header-Validierung, Authelia-Test) sind erledigt und committed. Die folgenden Punkte sind bewusst offener Backlog:
| Prioritaet | Punkt | Status | Naechster Schritt |
|---|---|---|---|
| P1 | Nextcloud-Restore-Test | offen | Test nach Paperless-Muster, zusaetzlich occ maintenance:mode-Choreographie und oc_admin-Rolle. Hoechster Lerngewinn unter den fehlenden Tier-2-Tests |
| P1 | Shared PostgreSQL 18 Cluster Restore Drill | erledigt 2026-06-03 | Globals + 5 DBs (paperless 72t, mailarchiver 1t, authelia 25t, nextcloud 126t, mealie 66t), data_checksums=on, Report /mnt/user/backups/restore-reports/shared-pg-cluster-2026-06-03.md |
| P1 | Komodo-Mongo-Daten-Restore | erledigt 2026-06-03 | 86904 Dokumente erfolgreich restored, Report /mnt/user/backups/restore-reports/komodo-mongo-restore-2026-06-03.md. Nebenbefund: Dump von Mongo 8.0.23, Test auf 7.0.32 — Cross-Version-Warning, fuer Lesetest harmlos |
| P2 | Mailarchiver-Restore-Test | erledigt 2026-06-03 | Data-Protection-Keys + 645M pg_restore + HTTP 200. Report /mnt/user/backups/restore-reports/mailarchiver-2026-06-03.md |
| P2 | Mealie-Restore-Test | erledigt 2026-06-03 | Borg-Data + pg_restore + HTTP 200, 3 Rezepte. Report /mnt/user/backups/restore-reports/mealie-2026-06-03.md |
| P2 | Traefik-Restore-Test | erledigt 2026-06-03 | dynamic/ + letsencrypt/ aus Borg, File-Provider + Ping 200. CF-Token bewusst nicht im Smoke. Report /mnt/user/backups/restore-reports/traefik-2026-06-03.md |
| P3 | Negativ-Test fuer Frische-Check | offen | Einmal pro Quartal bewusst kaputten Dump einfuettern und pruefen ob homelab-alerts feuert |
| P3 | End-to-end-DR-Drill | offen | Komplett-Bootstrap Phase 1-5 auf einem Wegwerf-Host; realistisch nur mit zweiter Hardware |
Bewusst geparkt
| Punkt | Entscheidung |
|---|---|
| Authelia 2FA fuer Operator-UIs (Rest) | Tier-1-Operator-UIs sind 2026-06-03 auf two_factor gehoben (files, scrutiny, borg, code). Restliche Admin-UIs (monitoring, glances, glance, speedtest, paperless-gpt, pdf, mail, hermes, sp) bleiben bewusst auf one_factor, bis die finale Auth-Policy steht. |
| Authelia OIDC fuer Apps | Geparkt bis klare Familien-/SSO-Entscheidung |
| CrowdSec vor Traefik | Bewusst nicht umgesetzt: einzige WAN-Tuer ist 443/tcp, Operator-Pfad ist Tailscale, Authelia-regulation: deckt Auth-Brute-Force ab. Neu bewerten bei breiterer Attack Surface. |
| Nextcloud 2FA/Brute-Force-Haertung | UI-Schritt fuer Operator-Account (twofactor_totp aktivieren) bleibt offen. App-weite Familien-Policy gemeinsam mit OIDC entscheiden. |
| Hermes-Agent | NAS-Stack bleibt deaktiviert; Review-Deadline 2026-07-25 |
| USV | Anschaffung verschoben; Power-Loss-Risiko bewusst akzeptiert |
| Zweites Off-site-Ziel | Bewusst nicht umgesetzt; neu bewerten bei Hetzner-Problemen, stark wachsendem Datenwert oder geaenderter Betreiber-Praeferenz |
Borg append-only auf Hetzner |
Operator-Entscheidung 2026-06-01: nicht umgesetzt. Der forced-command-Test auf der Storage Box brach Key-Auth und wurde per Passwort-Recovery zurueckgesetzt; Nutzen steht fuer dieses Homelab nicht im Verhaeltnis zum Betriebsrisiko. |
Zuletzt geschlossen
- Authelia ACL:
borg.kaleschke.infoundcode.kaleschke.info2026-06-03 in dentwo_factor-Block der Repo-Baseline aufgenommen. Beide UIs haben effektiv Host-/Backup-Zugriff (Borg-Restore-Scope inkl./local/secrets, code-server mit Workspaces). Wirkung erst nach manuellem Merge in/mnt/user/appdata/authelia/config/configuration.yml,docker restart autheliaund Smoke-Test auf einer der vier 2FA-Domains;services/authelia-diff.shmussexit 0liefern. TOTP-Enrollment des Operator-Accounts ist Voraussetzung, sonst Login-Sperre. - Alt-Volumes nach Burn-in freigegeben und reversibel archiviert: Shared PG17, Mealie PG17, Nextcloud PG17 und Immich pgvecto.rs liegen seit 2026-06-02 unter
/mnt/user/appdata/_archive/pg18-immich-rollback-volumes-20260602; Manifest auf dem Host:/mnt/user/appdata/_archive/pg18-immich-rollback-volumes-20260602/MANIFEST.txt. Keine harte Loeschung, keine aktiven Container-Mounts auf die alten Pfade. - Externer Betreibercheck vorbereitet:
docs/EXTERNAL_OPERATOR_RUNBOOK.mdundops/maintenance/check-external-operator.sh; Live-Baseline am 2026-06-01: FRITZ!OS154.08.25, keine Public-AAAA-Records fuer*.kaleschke.info, Host ohne globale Provider-IPv6, WAN443/tcpoffen und80/tcp/222/tcpgeschlossen. - FRITZ!Box-Servicefenster UI-seitig abgeschlossen: FRITZ!Box-Dienste aus dem Internet sind aus (HTTPS auf FRITZ!Box-UI, FTP/FTPS auf Speichermedien), aktive WAN-Freigabe bleibt nur
443/tcp -> 192.168.178.58, keine aktive IPv6-Freigabe sichtbar, UPnP-Selbstfreigaben aus. - FRITZ!Box-Konfig-Backup exportiert und extern/off-system in Vaultwarden abgelegt:
Einstellungen_FRITZ.Box_7590_154.08.25_01.06.26_1318.export; Kennwort und Datei bleiben ausserhalb des Repos. - Hetzner-Account-Hygiene erledigt: externe Kontakt-/Rechnungs-Mail bestaetigt, Zahlung ok, 2FA mit Google Authenticator aktiv, Recovery Key offline ausgedruckt.
- Hetzner Storage Box geprueft:
storage-box-1,u565255.your-storagebox.de, SSH-Port23, SSH aktiv, SMB/WebDAV aus, 64,94 GB / 1 TB belegt; Borg-UI-Key und separater Maintenance-Key funktionieren wieder nach Passwort-Recovery. Borgappend-onlyist bewusst nicht umgesetzt. - Family-View Dashboard ist repo-seitig gebaut:
monitoring/grafana/dashboards/family-status.jsonzeigt Family-App-Uptime, Backup-Alter, TLS-Restlaufzeit, Critical-Container und Image-Drift. - Borg-Nachlauf nach dem 2026-05-31-Sprint ist belegt: Archiv
Taegliche-Sicherung-2026-06-01T04:30:26.913, 101669 Dateien,rc=0; Freshness-Check am 2026-06-01: Critical 0, Warnings 0. - H:/ Nearline-Pull am 2026-06-01 repariert und manuell validiert: kuratierte Borg-Dumps Exit 0, Gitea-Bundles Exit 1 (Robocopy-Erfolg mit Kopien), Report
nearline-pull-2026-06-01-082553.md. - Immich-, Paperless-, Gitea- und Vaultwarden-Restore-Pfade sind belegt.
- H:/ Nearline-Pull laeuft seit 2026-05-28 als Windows Scheduled Task.
- FRITZ!Box-Portfreigaben sind bereinigt: WAN-seitig bleibt
443/tcp. - InfluxDB 3 Core ist effektiv nur auf
127.0.0.1:8181gebunden. - Renovate ist produktiv, Major-Updates werden bewusst manuell entschieden.
- Policy-Check bleibt ohne Criticals; bekannte Root-Ausnahmen sind dokumentiert.