From 35bca033a604346c712166e394453ef0c0a48454 Mon Sep 17 00:00:00 2001 From: spektr Date: Wed, 9 Sep 2026 18:40:51 +0200 Subject: [PATCH] GNAI-006: wg-easy-UI-Passwort rotiert --- docs/GNAI-006-SEC_VPN.md | 1 + docs/GNAI-006-SEC_VPN_Implementation-Log.md | 1 + 2 files changed, 2 insertions(+) diff --git a/docs/GNAI-006-SEC_VPN.md b/docs/GNAI-006-SEC_VPN.md index 91a83cd..9b8e2d6 100644 --- a/docs/GNAI-006-SEC_VPN.md +++ b/docs/GNAI-006-SEC_VPN.md @@ -149,6 +149,7 @@ Installiert: `podman` 5.4.2. **Wichtige Umsetzungsentscheidungen (Abweichungen vom ursprünglichen Draft):** 1. **bcrypt statt Argon2:** wg-easy verifiziert das UI-Passwort mit **bcryptjs (Salt-Rounds 12)** über `PASSWORD_HASH`. Argon2-Hashes werden nicht akzeptiert. +2. **Passwort-Rotation 2026-09-09:** Das initial generierte UI-Passwort wurde nach der Session nicht übergeben → **rotiert** (neuer bcrypt-Hash im Environment-File, Login-API HTTP 200 verifiziert). **Klartext liegt ausschließlich in 1Password** (Eintrag `ghostnet/wg-easy-ui`); auf dem LXC und im Repo existiert nur der Einweg-Hash. 2. **EnvironmentFile statt Environment=:** Der bcrypt-Hash enthält `$`-Zeichen (`$2a$12$…`), die im Quadlet-`Environment=`-Format fehleranfällig escaped werden müssen. Sauberer Weg: `EnvironmentFile=`. 3. **Unit-Name:** Quadlet generiert `wg-easy.service` (nicht `wg-easy.container.service`). diff --git a/docs/GNAI-006-SEC_VPN_Implementation-Log.md b/docs/GNAI-006-SEC_VPN_Implementation-Log.md index 0fd5475..2108351 100644 --- a/docs/GNAI-006-SEC_VPN_Implementation-Log.md +++ b/docs/GNAI-006-SEC_VPN_Implementation-Log.md @@ -144,3 +144,4 @@ Client-UUIDs (LXC): `Laptop-FullAdmin` = `2e9ed910-36dc-4fbd-8694-8d904670ea19`, | Lokal: `~/.ssh/config` | Alias `lxc` (User admin, dedizierter Key) | gesetzt | > Secrets (wg-easy-UI-Passwort/Hash, PreSharedKeys, PrivateKeys) sind **nicht** in diesem Repo dokumentiert und liegen ausschließlich auf dem LXC bzw. in den clientseitigen Profilen. +| PW | wg-easy-UI-Passwort initial generiert, Klartext nach Session nicht verfügbar (bcrypt=Einweg-Hash) | ✅ rotiert 2026-09-09 18:40: neuer bcrypt-Hash im Env-File, API-Login 200; Klartext nur in 1Password (ghostnet/wg-easy-ui) |