From 4b96d13510c054826dbfd7f07f98d5abc4950192 Mon Sep 17 00:00:00 2001 From: Micha Date: Wed, 3 Jun 2026 15:03:15 +0200 Subject: [PATCH] security(authelia): borg-ui und code-server auf two_factor heben 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. --- docs/AUDIT_2026-05-25_TODO.md | 7 ++++--- security/authelia/configuration.yml | 4 +++- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/docs/AUDIT_2026-05-25_TODO.md b/docs/AUDIT_2026-05-25_TODO.md index ab8a434..5758b8b 100644 --- a/docs/AUDIT_2026-05-25_TODO.md +++ b/docs/AUDIT_2026-05-25_TODO.md @@ -28,10 +28,10 @@ Ergebnis des Restore-Skills-Audits (Session 2026-06-02/03). Die kritischen Bugfi | Punkt | Entscheidung | |---|---| -| Authelia 2FA fuer Operator-UIs | In diesem Zyklus nicht umgesetzt; erst mit finaler Auth-Policy | +| 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 | Erst nach Auth-Policy neu bewerten | -| Nextcloud 2FA/Brute-Force-Haertung | Gemeinsam mit OIDC/Familienkonten entscheiden | +| 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 | @@ -39,6 +39,7 @@ Ergebnis des Restore-Skills-Audits (Session 2026-06-02/03). Die kritischen Bugfi ## Zuletzt geschlossen +- Authelia ACL: `borg.kaleschke.info` und `code.kaleschke.info` 2026-06-03 in den `two_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 authelia` und Smoke-Test auf einer der vier 2FA-Domains; `services/authelia-diff.sh` muss `exit 0` liefern. 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.md` und `ops/maintenance/check-external-operator.sh`; Live-Baseline am 2026-06-01: FRITZ!OS `154.08.25`, keine Public-AAAA-Records fuer `*.kaleschke.info`, Host ohne globale Provider-IPv6, WAN `443/tcp` offen und `80/tcp`/`222/tcp` geschlossen. - 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. diff --git a/security/authelia/configuration.yml b/security/authelia/configuration.yml index 738ff76..86f0e50 100644 --- a/security/authelia/configuration.yml +++ b/security/authelia/configuration.yml @@ -41,10 +41,12 @@ access_control: - git.kaleschke.info policy: bypass - # Admin-Dienste - 2FA erforderlich + # Admin-Dienste - 2FA erforderlich (Operator-UIs mit Host-/Backup-Zugriff) - domain: - files.kaleschke.info - scrutiny.kaleschke.info + - borg.kaleschke.info + - code.kaleschke.info policy: two_factor # Alles andere mit Authelia-Middleware - 1FA.