Skip to main content
By default the dashboard and API listen on 127.0.0.1:8080, reachable only from the server itself. To open them from elsewhere, put an HTTPS reverse proxy in front. HTTPS is required for Sign in with Cloudflare.
Caddy gets and renews certificates by itself.
Caddyfile

Trust the proxy’s forwarded address

Tell DNZ the proxy’s address, so the audit log, sign-in lockouts, views and blocklists use the real client IP instead of the proxy’s:
/etc/dnz/dnz.env
It takes IPs and CIDRs, for example 127.0.0.1,10.0.0.0/8. On a Docker network, use the network’s range, such as 172.16.0.0/12.

Notes

  • HSTS is sent when DNZ is reached over HTTPS, directly or through a proxy that sends X-Forwarded-Proto: https.
  • Behind a proxy, /dns-query (DNS over HTTPS) works through the plain HTTP port too, so DoH can sit behind the same reverse proxy.
  • For dnz-proxy nodes, the proxy in front of DNZ must not buffer responses (DNZ sends X-Accel-Buffering: no).
  • Other DNZ servers can only find this one on the replication radar when its HTTP port listens on the network (DNZ_HTTP_ADDR=0.0.0.0:8080).