summaryrefslogtreecommitdiff
path: root/.gitignore
AgeCommit message (Collapse)AuthorLines
12 dayshetzner-admin: stop/start individual services, shown as STOPPED on status pageyyamashita-0/+1
- run-command.sh: services / stop <name> / start <name> for app and infra stacks (not caddy, hetzner-admin, status). Stopped names go to status/stopped.txt (gitignored). - status: a stopped service that does not respond is STOPPED (gray), excluded from uptime and DOWN alerts. If it responds it is UP as usual. - Infra deploy.sh skips stopped stacks; app repo pushes clear the flag. - claude-code@.service: Restart=on-failure, and restart-sessions.sh restarts one unit at a time, to avoid the tmux "server exited unexpectedly" race. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01N5eS3U54gzjRXzm65Np1RS
12 dayshetzner-admin: add passkey login (password login kept)yyamashita-0/+1
Replace Basic auth with a session-cookie login page. After password login, register a passkey from the bottom of the page; later logins can use it. Passkeys are stored in hetzner-admin/data/ (gitignored). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-07-11Dedupe Caddyfile with snippets, sync docs with reality, add tests/check.shyyamashita-0/+1
- Caddyfile: extract repeated header blocks into (noindex)/(crawler_bypass) snippets (adapted JSON verified byte-identical to previous config) - CLAUDE.md: add mosquitone-admin/microblog to repos table; document that proxy auth is disabled (PROXY_NO_AUTH=1) with JP-only IP filter instead - Deploy.md/caddy/README.md: reflect all-service deploy and forward proxy - tests/check.sh: shell/python syntax, repos.txt<->hooks<->sessions.txt consistency, app.py COMMANDS vs run-command.sh whitelist, secrets check Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-07-03Restrict proxy to Japan IPs using ipdeny.com CIDR listyyamashita-1/+0
Downloads jp-aggregated.zone from ipdeny.com at container startup (no account required). Falls back to open access if download fails. Removed caddy-maxmind-geoip module (no longer needed). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-03Add GeoIP Japan-only filter to forward proxyyyamashita-0/+1
Uses caddy-maxmind-geoip module to restrict proxy access to JP IPs. DB file (GeoLite2-Country.mmdb) must be placed manually on the server. Filter is inactive when DB file is absent, allowing safe rollout. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-19Add hetzner-admin: SSH-based server management web UIyyamashita-0/+2
Basic Auth protected web UI with buttons to restart services and reboot. SSH key with authorized_keys command= restriction limits executable commands. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-08Initial: shared Caddy reverse proxy on web networkyyamashita-0/+2