docs(dr): tabletop-folge - DR.md + EXTERNAL_DEPENDENCIES haerten
Reine Doku-Fixes nach DR-Tabletop 2026-06-03 und Operator-Antworten auf vier offene Fragen. DISASTER_RECOVERY.md: - Abschnitt 3 Voraussetzungen: Operator-DR-Workstation als Pflichtposten - Phase 0: privater GitHub-Mirror, Read-PAT/Deploy-Key, expliziter Repo- Bootstrap-Pfad Workstation -> Unraid - Abschnitt 6.1: homelab_smtp_password.txt, n8n_encryption_key.txt, monitoring/influxdb/filebrowser Secrets nachgezogen - Neuer Abschnitt 7.3: Borg-Extract ohne borg-ui (DR-Workstation oder docker run borgbackup/borg), Passphrase-Eingabe interaktiv - Phase 4 neue Stufe 0 "Docker-Grundlage": docker network create frontend_net/backend_net/monitoring_net + dynamic/ Pre-Check - Phase 4 Stufe 1: LE-Staging-Hinweis bei verlorenem acme.json - Phase 4 Stufe 3 "Wichtige Stolperfallen": KOMODO_*-Quelle, Mongo- Datadir/Secret-Mismatch, extra_hosts-IP, Stack-ENV-Wiederherstellung - Phase 5.3: App-DB-Verifikation per docker logs EXTERNAL_DEPENDENCIES.md: - GitHub-Mirror als privat klargestellt + Read-PAT/Deploy-Key Pflicht - Operator-DR-Workstation als kritische Abhaengigkeit - KOMODO_*-Notiz und GitHub-Read-PAT als noch nicht angelegt erfasst - Hetzner-Maintenance-Key offline bestaetigt (Operator-Antwort 2026-06-03) - Neuer Abschnitt "DR-Workstation Bare-Metal-Kit" mit konkretem Inhalt AUDIT_2026-05-25_TODO.md: - Vier neue P1-Operator-Aufgaben: KOMODO_*-Notiz, Read-PAT, DR-Workstation- Setup, Nextcloud-Restore-Test scharf laufen lassen DR_DRILL_2026-06-03.md: - Folge-Iteration-Tabelle: welcher Finding wo adressiert wurde Operator-Aufgaben (nicht delegierbar) sind als P1 markiert. Nichts in Runtime/Compose beruehrt, kein Container gestartet.
This commit is contained in:
@@ -7,6 +7,10 @@ Audit-Snapshots wurden aus der Arbeitskopie entfernt; Detailhistorie liegt in Gi
|
||||
|
||||
| Prioritaet | Punkt | Naechster Schritt |
|
||||
|---|---|---|
|
||||
| P1 | KOMODO_*-Notiz offline anlegen | DR-Tabletop 2026-06-03 ergab: Bare-Metal-Bootstrap blockiert ohne diese Notiz. Operator liest die 5 Werte (`KOMODO_SECRET_KEY`, `KOMODO_WEBHOOK_SECRET`, `KOMODO_JWT_SECRET`, `KOMODO_MONGO_PASSWORD`, `KOMODO_PERIPHERY_PASSKEY`) aus Komodo-UI bzw. Mongo und sichert sie analog zur Borg-Passphrase offline. Bestaetigung anschliessend in `docs/EXTERNAL_DEPENDENCIES.md` Reviews mit Datum |
|
||||
| P1 | GitHub-Mirror Read-PAT/Deploy-Key offline | Mirror ist privat. Read-Only-PAT (Scope `repo:read`) oder SSH-Deploy-Key auf der DR-Workstation hinterlegen, eine Zeile Bestaetigung in `EXTERNAL_DEPENDENCIES.md` Reviews |
|
||||
| P1 | DR-Workstation Bare-Metal-Kit auf Gaming-PC einrichten | WSL2 installieren, `borgbackup` apt-installieren, SSH-Key fuer Hetzner Storage Box generieren und auf der Box autorisieren, `borg list <hetzner-repo>` als Test laufen lassen. Bestandteile dokumentiert in `docs/EXTERNAL_DEPENDENCIES.md` Abschnitt "DR-Workstation Bare-Metal-Kit" |
|
||||
| P1 | Nextcloud-Restore-Test scharf laufen lassen | Skript `ops/restore-tests/nextcloud-restore-test.sh` existiert bereits. Einmal ausfuehren, Report unter `/mnt/user/backups/restore-reports/nextcloud-...md` ablegen. Schliesst die letzte Tier-2-Restore-Luecke |
|
||||
| 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)
|
||||
@@ -39,6 +43,7 @@ Ergebnis des Restore-Skills-Audits (Session 2026-06-02/03). Die kritischen Bugfi
|
||||
|
||||
## Zuletzt geschlossen
|
||||
|
||||
- DR-Tabletop 2026-06-03 durchgelaufen, Findings in `docs/DR_DRILL_2026-06-03.md` (23 Befunde: 1 CRITICAL, 11 HIGH, 8 MED, 3 LOW). Reine Doku-Fixes in DR.md (Phase 0 Mirror-Klarstellung, neue Phase 4 Stufe 0 Docker-Netze, LE-Staging-Hinweis, Komodo-Stolperfallen, App-DB-Verify in Phase 5) und in `EXTERNAL_DEPENDENCIES.md` (DR-Workstation-Kit, KOMODO_*-Notiz und GitHub-Read-PAT als offene Bootstrap-Bloecke) sind im selben Aenderungsblock erledigt. Operator-Aufgaben (Notiz/PAT/WSL-Setup) wandern als P1 in die offenen Punkte.
|
||||
- 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.
|
||||
|
||||
Reference in New Issue
Block a user