Verification
A six-step smoke test to confirm the full path works: sink → ingest → control server → dashboard.
https://<domain>/healthz→ok, with valid TLS.- Sign in as the bootstrap admin; load System Setup.
- Create a
postgresqltripwire; note itstw_…connection user. psql postgresql://tw_…:x@<honeypot_host>:5432/prod→ auth failure (the trap fires).- The trip appears in the dashboard /
GET /admin/trips. - (If using AD) configure LDAP and sign in as a domain user.
A recorded trip in the dashboard confirms the end-to-end path. deploy/e2e/run.sh automates steps 1–5 locally.
Operations
- Logs — container logs (
docker compose logs), or CloudWatch via the agent. - Updates — CI republishes the images →
docker compose pull && up -d(or recreate the instance). - Admin access (AWS) — SSM Session Manager (no SSH; the sink owns port 22).
- Secrets — SSM SecureString on AWS;
.env/config.tomlare gitignored.