Caddyfile: point the shared family login at dankuser too

The other vhosts (gitea, grafana, search, ...) now use username 'dankuser'
with CADDY_BASICAUTH_HASH, which is set to the same hash as the homepage
(dankpassword.123). So the whole protected surface logs in as
dankuser / dankpassword.123; the operator /admin/ page still uses frank.
Updated the two tests that asserted the old 'dank' username.
This commit is contained in:
Frank committed 2026-08-23 22:26:46 -07:00
1 parent c58dab0a89
commit ac7c8ee442
3 files changed
+12 -12

No files matched your search

+7 -7
View File
@@ -95,7 +95,7 @@ dankserver.franksdank.cloud {
# --- SearXNG (quadlet; behind the Gluetun tunnel, published 8081) --- # --- SearXNG (quadlet; behind the Gluetun tunnel, published 8081) ---
search.franksdank.cloud { search.franksdank.cloud {
basicauth { basicauth {
dank REPLACE_WITH_HASH dankuser REPLACE_WITH_HASH
} }
reverse_proxy 192.168.0.143:8081 reverse_proxy 192.168.0.143:8081
} }
@@ -108,7 +108,7 @@ comfyui.franksdank.cloud {
# --- OpenWebUI (quadlet on slirp4netns; published 3005) --- # --- OpenWebUI (quadlet on slirp4netns; published 3005) ---
chat.franksdank.cloud { chat.franksdank.cloud {
basicauth { basicauth {
dank REPLACE_WITH_HASH dankuser REPLACE_WITH_HASH
} }
reverse_proxy 192.168.0.143:3005 reverse_proxy 192.168.0.143:3005
} }
@@ -116,7 +116,7 @@ chat.franksdank.cloud {
# --- Hermes --- # --- Hermes ---
hermes.franksdank.cloud { hermes.franksdank.cloud {
basicauth { basicauth {
dank REPLACE_WITH_HASH dankuser REPLACE_WITH_HASH
} }
reverse_proxy hermes:8090 reverse_proxy hermes:8090
} }
@@ -129,7 +129,7 @@ gitea.franksdank.cloud {
# --- Grafana --- # --- Grafana ---
grafana.franksdank.cloud { grafana.franksdank.cloud {
basicauth { basicauth {
dank REPLACE_WITH_HASH dankuser REPLACE_WITH_HASH
} }
reverse_proxy grafana:3000 reverse_proxy grafana:3000
} }
@@ -137,7 +137,7 @@ grafana.franksdank.cloud {
# --- Prometheus --- # --- Prometheus ---
prometheus.franksdank.cloud { prometheus.franksdank.cloud {
basicauth { basicauth {
dank REPLACE_WITH_HASH dankuser REPLACE_WITH_HASH
} }
reverse_proxy prometheus:9090 reverse_proxy prometheus:9090
} }
@@ -172,7 +172,7 @@ books.franksdank.cloud {
# --- RomM --- # --- RomM ---
romm.franksdank.cloud { romm.franksdank.cloud {
basicauth { basicauth {
dank REPLACE_WITH_HASH dankuser REPLACE_WITH_HASH
} }
reverse_proxy 192.168.0.235:8085 reverse_proxy 192.168.0.235:8085
} }
@@ -180,7 +180,7 @@ romm.franksdank.cloud {
# --- Copyparty --- # --- Copyparty ---
files.franksdank.cloud { files.franksdank.cloud {
basicauth { basicauth {
dank REPLACE_WITH_HASH dankuser REPLACE_WITH_HASH
} }
reverse_proxy 192.168.0.235:3923 reverse_proxy 192.168.0.235:3923
} }
+1 -1
View File
@@ -72,7 +72,7 @@ CADDYFILE="$REPO_ROOT/dankclaw/Caddyfile"
echo "Caddyfile: bcrypt prefix before REPLACE_WITH_HASH (double-prefix regression)" echo "Caddyfile: bcrypt prefix before REPLACE_WITH_HASH (double-prefix regression)"
return 1 return 1
fi fi
grep -qE 'dank REPLACE_WITH_HASH' "$CADDYFILE" grep -qE 'dankuser REPLACE_WITH_HASH' "$CADDYFILE"
} }
@test "compose no longer defines the quadlet-replaced services" { @test "compose no longer defines the quadlet-replaced services" {
+4 -4
View File
@@ -85,9 +85,9 @@ load helpers
[ -n "$rendered" ] [ -n "$rendered" ]
[[ "$rendered" == *"${hash}"* ]] [[ "$rendered" == *"${hash}"* ]]
! grep -q 'REPLACE_WITH_HASH' <<< "$rendered" ! grep -q 'REPLACE_WITH_HASH' <<< "$rendered"
# The rendered line must be exactly "dank <hash>". A template that keeps # The rendered line must be exactly "dankuser <hash>". A template that
# its own $2a$14$ prefix renders an invalid double-prefixed hash and # keeps its own $2a$14$ prefix renders an invalid double-prefixed hash
# every basicauth vhost returns 401 (2026-08-22 incident). # and every basicauth vhost returns 401 (2026-08-22 incident).
grep -qF "dank ${hash}" <<< "$rendered" grep -qF "dankuser ${hash}" <<< "$rendered"
! grep -qF '$2a$14$$2a$14$' <<< "$rendered" ! grep -qF '$2a$14$$2a$14$' <<< "$rendered"
} }