dev: serve at dev.thermograph.org behind basic auth, bound to loopback #111

Merged
admin_emi merged 1 commit from feat/dev-public-guarded into dev 2026-07-26 07:49:45 +00:00

1 commit

Author SHA1 Message Date
Emi Griffith
fed307e75c dev: serve at dev.thermograph.org behind basic auth, bound to loopback
All checks were successful
PR build (required check) / changes (pull_request) Successful in 7s
secrets-guard / encrypted (pull_request) Successful in 5s
PR build (required check) / build-backend (pull_request) Has been skipped
shell-lint / shellcheck (pull_request) Successful in 6s
PR build (required check) / build-frontend (pull_request) Has been skipped
PR build (required check) / validate-observability (pull_request) Has been skipped
PR build (required check) / gate (pull_request) Successful in 2s
Dev was mesh-only: bound to 10.10.0.2, no DNS record, no Caddy site. A public
record now exists for it, so it gets a real front door instead of a name that
resolves to a timeout.

Three things keep that acceptable on a box that also runs Forgejo and its CI
runner, and all three are load-bearing together:

  - the stack binds LOOPBACK, so the site block is the only route in — not even
    the mesh reaches the app directly, which is what makes the guard total
    rather than decorative,
  - HTTP basic auth, so a stumbled-upon URL is not a running build,
  - X-Robots-Tag: noindex, so dev never competes with thermograph.org for the
    same content in a search index.

The credential in Caddyfile.vps1 is a bcrypt hash, not a password.
2026-07-26 00:45:58 -07:00