Nginx introduces native support for ACME protocol
Reactions to nginx’s native ACME support
- Many welcome “one less moving part” versus running certbot or other clients separately.
- Several say they’ll stick with existing nginx+certbot setups until nginx’s feature matures and supports more challenge types.
- Some consider the feature redundant if they already use a multi-purpose ACME client for non-HTTP services (mail, XMPP, internal apps).
Comparisons with Caddy, Traefik, Apache, Angie, HAProxy
- Caddy is repeatedly praised for trivial automatic HTTPS, minimal config, and sane defaults; several people migrated from nginx mainly because of this.
- Critiques of Caddy: harder for “non‑happy‑path” configs, plugin management and updates, past design decisions, and documentation gaps for advanced use.
- Traefik is liked for Docker/Kubernetes label-based config, but called slower and more resource‑hungry; its single‑API‑key DNS limitation is a pain.
- Apache’s mod_md and HAProxy’s newer ACME support are noted as existing alternatives.
- Angie (nginx fork) already has ACME with DNS‑01 and is suggested for those needing wildcards now; freenginx is mentioned for those wanting a more “original” nginx.
HTTP‑01 vs DNS‑01, wildcards, and internal services
- Current nginx module supports only HTTP‑01; many commenters say DNS‑01 is the real prize:
- Needed for wildcard certs.
- Essential for internal/overlay/private services not exposed to the internet.
- Helpful in multi‑server and multi‑region load‑balanced setups.
- DNS‑01 is seen as messy because every DNS provider has its own API; suggestions include using RFC2136/TSIG, acme‑dns, or delegating _acme‑challenge via CNAME/NS to a controllable DNS service.
Certbot and other ACME clients
- Experiences with certbot range from “completely straightforward” to “giant swiss‑army chainsaw” that mangles configs, fights automation, and pushes snap.
- Alternatives praised for simplicity and scriptability: acme.sh, lego, dehydrated, step‑ca, custom scripts.
- Docker + nginx + certbot is described as especially fragile and under‑documented; some keep nginx on the host and containers behind it to avoid chicken‑and‑egg TLS issues.
Operational, packaging, and ecosystem concerns
- Questions remain about how nginx handles renewals, revocations, and background processes, and how to debug failures.
- Managing certs across fleets and failover nodes is still non‑trivial; suggestions include per‑node certs vs central issuance and distribution.
- Some see nginx as late and commercially distracted (forks cited as a reaction), but others argue embedding ACME in webservers is optional and composable tooling remains valid.