From 6a445094bd581fc7d36a3fe90e3bdae89fd2d1c1 Mon Sep 17 00:00:00 2001 From: Micha Date: Wed, 27 May 2026 18:06:43 +0200 Subject: [PATCH] Record FRITZBox port exposure drift --- docs/AUDIT_2026-05-25_TODO.md | 2 +- docs/EXTERNAL_DEPENDENCIES.md | 1 + docs/MIGRATION_LOG.md | 7 +++++++ docs/NETWORK_INVENTORY.md | 18 ++++++++++++++---- 4 files changed, 23 insertions(+), 5 deletions(-) diff --git a/docs/AUDIT_2026-05-25_TODO.md b/docs/AUDIT_2026-05-25_TODO.md index 22a2861..1adc92b 100644 --- a/docs/AUDIT_2026-05-25_TODO.md +++ b/docs/AUDIT_2026-05-25_TODO.md @@ -76,7 +76,7 @@ Kontext bewusst gesichert, bevor weitere Live-Aenderungen passieren: | erledigt | USV-Test oder USV-Entscheidung | Operator-Entscheidung 2026-05-26: aktuell keine USV-Anschaffung; Power-Loss-Risiko wird bewusst akzeptiert und dokumentiert | | erledigt (Baseline) | H:/ als zusaetzliches lokales Backupziel bewerten | Als zweite Nearline-Kopie und Freeze-Sicherung sinnvoll; kein Offsite-Ersatz, kein CIFS-Hard-Mount am Unraid; Pull-Modell vom Windows-PC ist der getestete Weg (siehe `docs/CAPACITY_AND_LIFECYCLE.md`) | | in Arbeit (vorbereitet) | H:/ Groesse und Pull-Schedule festschreiben | Groesse erfasst: 8.0T NTFS, 3.91T belegt, 4.10T frei, `Healthy`; `docs/H_DRIVE_NEARLINE_PULL.md` und `ops/h-drive-nearline/pull-critical-backups.ps1` vorbereitet; SMB-Quelle erreichbar; empfohlener Schedule taeglich 05:30, Task noch nicht aktiviert | -| offen | FRITZ!Box-Portfreigaben gegen Repo-Soll abgleichen | UI -> Internet -> Freigaben pruefen; nur `443/tcp -> 192.168.178.58` und `222/tcp -> 192.168.178.58` sollten aktiv sein | +| erledigt (Abweichung dokumentiert) | FRITZ!Box-Portfreigaben gegen Repo-Soll abgleichen | UI am 2026-05-27 geprueft: aktiv sind `80/tcp` und `443/tcp` auf `192.168.178.58`; `222/tcp` fehlt. Korrektur ist ein separater produktiver Router-Schritt nach Operator-Freigabe | ## Sprint 5 - Auth und Frontdoor, bewusst zuletzt diff --git a/docs/EXTERNAL_DEPENDENCIES.md b/docs/EXTERNAL_DEPENDENCIES.md index 4315165..f4ac68c 100644 --- a/docs/EXTERNAL_DEPENDENCIES.md +++ b/docs/EXTERNAL_DEPENDENCIES.md @@ -76,3 +76,4 @@ Authoritativ ist `docs/SECRETS_MAP.md`. Diese Liste markiert nur externe Abhaeng |---|---|---| | 2026-05-26 | Bekannte externe Abhaengigkeiten aus Repo-/Betriebsdoku dokumentiert; keine Secret-Werte aufgenommen. Borg-Passphrase ist laut Operator offline gesichert. | Account-Besitz, 2FA-Recovery-Codes und Zahlungswege extern bestaetigen | | 2026-05-26 | Telekom-DSL und FRITZ!Box 7590 (FRITZ!OS 8.21) als WAN-/Router-Abhaengigkeit aufgenommen; Ausfallschutz nicht eingerichtet; 2 Portfreigaben aktiv (Soll: 443/tcp + 222/tcp) | FRITZ!OS-Update im Service-Fenster pruefen; Portfreigaben-UI gegen Repo-Soll abgleichen | +| 2026-05-27 | FRITZ!Box-Portfreigaben-UI abgeglichen: aktiv sind `80/tcp` und `443/tcp` auf Kallilabcore; `222/tcp` fehlt gegen Repo-Soll. Keine Router-Aenderung vorgenommen. | Nach Operator-Freigabe `80/tcp` entfernen und `222/tcp` nur anlegen, wenn externes Gitea-SSH weiter gewuenscht ist | diff --git a/docs/MIGRATION_LOG.md b/docs/MIGRATION_LOG.md index 1c95db5..a2b14fa 100644 --- a/docs/MIGRATION_LOG.md +++ b/docs/MIGRATION_LOG.md @@ -17,6 +17,13 @@ Dieses Dokument ist nur noch ein historischer Verlauf. Der aktuelle operative Ab ## Historische Meilensteine +### 2026-05-27 - FRITZ!Box-Portfreigaben gegen Repo-Soll abgeglichen + +- FRITZ!Box-UI `Internet -> Freigaben -> Kallilabcore` geprueft: aktiv sind `HTTP-Server` TCP `80/tcp` und `HTTPS-Server` TCP `443/tcp` auf `192.168.178.58`. +- Repo-Soll aus `docs/NETWORK_INVENTORY.md` ist nur `443/tcp` plus optional gewolltes Gitea-SSH `222/tcp`. Der aktuelle Zustand weicht ab: `80/tcp` ist offen, `222/tcp` fehlt. +- Kallilabcore ist nicht als Exposed Host markiert und erlaubt keine selbststaendige Portfreigabe. `PC-192-168-178-71` erlaubt selbststaendige Portfreigabe, hat aber `0 aktiv`. +- Keine FRITZ!Box-Aenderung vorgenommen. Router-Korrektur bleibt ein produktiver Operator-Schritt nach ausdruecklicher Freigabe. + ### 2026-05-26 - Immich Restore-Smoke-Test vorbereitet (F-11) - `docs/IMMICH_RESTORE_TEST.md` und `ops/restore-tests/immich-plan.md`/`immich-runbook.md` beschreiben den geplanten Immich-Mini-Restore: `immich.dump` aus Borg, isolierter pgvecto-rs-Test-Postgres, Test-Redis, Immich-Server ohne ML, lokaler Port `127.0.0.1:12283`, keine produktiven Foto-Mounts. diff --git a/docs/NETWORK_INVENTORY.md b/docs/NETWORK_INVENTORY.md index 23c23d3..6ebf074 100644 --- a/docs/NETWORK_INVENTORY.md +++ b/docs/NETWORK_INVENTORY.md @@ -1,7 +1,7 @@ # Network Inventory - KalliLab CORE -Status: Host-Audit erfasst; Router-Baseline aus FRITZ!Box-UI ergaenzt; VLAN/IPv6-Details offen. -Letzte Pruefung: 2026-05-26 +Status: Host-Audit erfasst; Router-Baseline und Portfreigaben-UI geprueft; VLAN/IPv6-Details offen. +Letzte Pruefung: 2026-05-27 ## Zweck @@ -64,7 +64,7 @@ tailscale ip -6 ### FRITZ!Box (WAN -> Host) -Die FRITZ!Box-UI meldet "Portfreigabe aktiv, 2 Portfreigaben eingerichtet". Die zwei aktiven Freigaben muessen mit den im Repo dokumentierten Public-Ports konsistent sein: +Die FRITZ!Box-UI meldete initial "Portfreigabe aktiv, 2 Portfreigaben eingerichtet". Die zwei aktiven Freigaben muessen mit den im Repo dokumentierten Public-Ports konsistent sein: | Erwartete Freigabe | Ziel | Zweck | Konsistenz-Check | |---|---|---|---| @@ -73,6 +73,16 @@ Die FRITZ!Box-UI meldet "Portfreigabe aktiv, 2 Portfreigaben eingerichtet". Die **Wichtig:** Port 80/tcp ist im Cloudflare-DNS-Challenge-Modell **nicht** erforderlich; eine 80er-Freigabe waere ein unnoetiger Angriffsvektor. Wenn die FRITZ!Box-UI mehr oder andere Eintraege zeigt als die zwei oben, muss das im naechsten Operator-Review abgeglichen werden (siehe "Offene Entscheidungen"). +Aktueller UI-Befund vom 2026-05-27 (`Internet -> Freigaben -> Kallilabcore`): + +| Beobachtung | Bewertung | +|---|---| +| `HTTP-Server`, TCP, extern `80/tcp` auf `192.168.178.58` | Abweichung: fuer ACME/DNS-Challenge nicht erforderlich; sollte nach Operator-Freigabe entfernt werden, falls keine bewusste HTTP-WAN-Nutzung besteht | +| `HTTPS-Server`, TCP, extern `443/tcp` auf `192.168.178.58` | entspricht Repo-Soll | +| Keine `222/tcp`-Freigabe sichtbar | Abweichung: Gitea-SSH ist extern nicht gemaess Soll erreichbar; nur anlegen, wenn Git-SSH aus dem Internet weiterhin gewuenscht ist | +| Kallilabcore: keine selbststaendige Portfreigabe, kein IPv4-/IPv6-Exposed-Host sichtbar | entspricht Sicherheitsziel | +| `PC-192-168-178-71`: selbststaendige Portfreigabe erlaubt, `0 aktiv` | keine aktive Freigabe, aber UPnP/PCP-Erlaubnis sollte bei Gelegenheit deaktiviert werden | + ### Host (lokal beobachtbar) | Port | Ziel | Zweck | Bewertung | @@ -127,7 +137,7 @@ docker network inspect backend_net | jq '.[0].Internal' | Thema | Status | Naechster Schritt | |---|---|---| | AdGuard Admin nur via Tailscale | live validiert 2026-05-26 | Compose bindet Admin-Port auf `100.80.98.33:8082`; DNS auf Port 53 funktioniert, LAN-Zugriff auf `192.168.178.58:8082` schlaegt fehl | -| FRITZ!Box-Portfreigaben mit Repo-Soll abgleichen | offen | UI -> Internet -> Freigaben pruefen; nur `443/tcp -> 192.168.178.58` und `222/tcp -> 192.168.178.58` sollten aktiv sein; andere Eintraege dokumentieren oder entfernen | +| FRITZ!Box-Portfreigaben mit Repo-Soll abgleichen | erledigt, Abweichung gefunden | UI zeigt am 2026-05-27 `80/tcp` + `443/tcp` auf `192.168.178.58`; `222/tcp` fehlt. Naechster Operator-Schritt: nach Freigabe `80/tcp` entfernen und nur bei Bedarf `222/tcp` anlegen | | FRITZ!OS 8.21 Update | gemeldet | Operator-Aufgabe; vor Update kurzes Service-Fenster planen, weil Reboot WAN/Tailscale-Aufbau unterbricht | | Gast-/IoT-Zugriff auf Admin-Ports | aktuell entschaerft | Gast-WLAN ist inaktiv; bei Aktivierung muessen `192.168.178.58:8082`, `192.168.178.58:8181` und ggf. weitere LAN-Ports per FRITZ!Box-Kindersicherung/Netzwerk-Filter abgesichert werden | | IPv6 Exposure | offen | Router und Traefik/Cloudflare pruefen; Telekom-DSL liefert in der Regel IPv6, FRITZ!Box-Standard-Verhalten klaeren |