How do you securely handle ACME DNS-01 certificate validation?

September 2, 2026 4 answers
Asked by MellowCedar42
I manage shared-hosting servers and do not want to give them write access to our authoritative DNS infrastructure. DNS-01 validation seems necessary for wildcard certificates and for services where the usual HTTP .well-known challenge is not practical. What are good ways to automate certificate issuance while limiting DNS permissions and keeping the setup secure?

Answers

BrightOtter7
Delegate only the _acme-challenge name to a separate DNS zone. The ACME clients can then use an API key or update key that is limited to creating TXT records in that zone, without getting access to the rest of your DNS. With BIND, this can be enforced using a dedicated key and update policy.

MellowCedar42: That sounds like the safest approach. The client would still have DNS API access, but only for the specific challenge domain rather than the main zones.

Reply to this answer
QuietMaple26
For a central application serving many customer subdomains, a reverse proxy or dedicated certificate service can obtain and renew the certificate, then make it available to the application through a controlled deployment process. If you use wildcard certificates, avoid distributing the private key across multiple systems; a leak means replacing the wildcard certificate everywhere. Per-service certificates are preferable when the architecture allows it.
Reply to this answer
CopperLynx53
Another option is to use an ACME client with a narrowly scoped DNS provider credential. For example, the client can authenticate to Azure DNS, Cloudflare, or Route 53 through an application identity that can modify only the required zone. This keeps the shared-hosting machines from having broad DNS privileges.
Reply to this answer
CalmHarbor18
A verification-domain setup works well: point _acme-challenge.example.com to something like challenge.validation-domain.com with a CNAME or NS delegation. The ACME client only needs permission to create records in the separate validation zone. Cloud DNS providers and tools such as Posh-ACME, Certbot plugins, or platform-specific clients can automate this.
Reply to this answer

Add your answer

Answers are reviewed before publication.

Related Discussions