CAA: who may issue certificates for your domain
Allow only the authorities you actually get certificates from.
Check it with CheckNet: DNSWhat is CAA?
HTTPS certificates are issued by certificate authorities (CAs) such as Let’s Encrypt, DigiCert or Sectigo. A CAA record is a DNS record that names the authorities allowed to issue certificates for your domain. Publicly trusted CAs must check it before issuing, and refuse if they are not listed.
Why it matters
Without a CAA record, any CA may issue a certificate for your domain. If someone fools one of them, they get a certificate in your name. CAA narrows that risk to the few authorities you actually use. Having no CAA is not an error, but it is a cheap extra layer of protection.
How the record looks
Each CAA record has three parts: a flags number (usually 0), a tag and a value. The issue tag names a CA allowed to issue normal certificates, issuewild one allowed to issue wildcard certificates (such as *.example.com), and iodef an address where CAs can report requests they refused.
example.com. CAA 0 issue "letsencrypt.org" example.com. CAA 0 issue "digicert.com" example.com. CAA 0 issuewild "letsencrypt.org" example.com. CAA 0 iodef "mailto:security@example.com"
Create a correct record
- List where the certificates for your domain and every subdomain come from: your host, your CDN (Cloudflare, for example), your email service and any other service that serves HTTPS on your domain.
- Take each CA’s CAA identifier from its own documentation; for Let’s Encrypt it is
letsencrypt.org. Some services, such as Cloudflare, use several CAs and publish their list. - In your domain’s DNS panel, create one record of type CAA per CA: name
@, flags0, tagissue, and the CA’s identifier. - If you use wildcard certificates, add an
issuewildrecord for that CA too. - Optionally add an
iodefrecord with your own email address. - Check the domain again on CheckNet’s DNS page.
Common problems
- Renewals start failing: the CA your host or CDN uses is not in the record. Add it with an
issuerecord. - A subdomain gets no certificate: the CAA on your main domain also applies to subdomains, unless a subdomain has CAA records of its own.
- You want no wildcard certificates at all: publish
0 issuewild ";".
Before adding CAA, note when your current certificates renew, and after the first automatic renewal make sure the new certificate was actually issued.
Check it with CheckNet
On CheckNet’s DNS page, “CAA names which authorities may issue certificates” means a record was found. “No CAA record” is a note, not an error: it means any CA may issue.
