DNS验证配置指南 – 给域名加CNAME记录
申请SSL证书的时候,DNS验证是最常用的方式。简单说就是给你的域名加一条CNAME解析记录,证明这个域名是你的。这篇文档讲讲具体怎么操作。
什么时候用DNS验证
这几种情况建议用DNS验证:
- •你有域名的DNS解析管理权限
- •你在申请通配符证书(只能用DNS验证)
- •你不想往网站根目录放验证文件
- •网站还没部署好,但是想先把证书申请下来
如果你的域名不在自己手里,或者不方便改DNS解析,那用文件验证更合适。
拿到验证信息
在申请页面提交申请后,系统会返回DNS验证信息,大概长这样:
- •主机记录:_acme-challenge 或者 _249FB36603F72E181EE6AE17BAA04F91
- •记录类型:CNAME
- •记录值:类似 xxxxx.com 的一个地址
把这些信息记下来,下一步要用。
在域名服务商添加CNAME记录
登录你买域名的那个平台,找到DNS解析管理页面。不同平台的入口不太一样:
阿里云:控制台 → 域名 → 解析管理
腾讯云:控制台 → DNS解析DNSPod
Cloudflare:登录后点域名 → DNS
添加一条新的解析记录:
- •记录类型选 CNAME
- •主机记录填系统给你的那串,比如 _acme-challenge
- •记录值填系统给你的地址
- •TTL保持默认就行
容易踩的坑:主机记录只填前面的部分,不要把后面的域名也填上。比如系统提示主机记录是 _acme-challenge,你就填 _acme-challenge,不要填 _acme-challenge.example.com。大部分域名服务商的输入框只需要前缀,后面会自动补上你的域名。
等待DNS生效
CNAME记录加好后,需要等全球DNS服务器同步。这个过程快的话1-2分钟,慢的话可能要10分钟。
你可以用下面的命令在本地检查DNS有没有生效:
打开命令行,输入:
nslookup -type=CNAME _acme-challenge.你的域名
如果返回的结果里有你配置的那条记录,说明已经生效了。
回到申请页面验证
DNS生效后,回到SSL免费网的申请页面,点「验证解析」按钮。
系统会调用ZeroSSL的接口去检查你的CNAME记录。如果配对了,会显示绿色的成功提示,然后自动签发证书。
如果提示验证没通过,可能是这几个原因:
- •DNS还没生效,等几分钟再试
- •主机记录或记录值填错了,去DNS管理页面核对一下
- •记录类型选错了,必须是CNAME不是TXT
- •有些域名服务商DNS同步慢,耐心等一会儿
可以多次点击「验证解析」,不会有什么影响。
通配符证书的特殊说明
申请通配符证书(比如 *.example.com)的时候,DNS验证的配置方法和普通域名完全一样。系统会自动处理通配符的验证逻辑,你只需要按提示加CNAME记录就行。
这也是为什么通配符证书只能用DNS验证——文件验证没法验证通配符域名。
验证完成后
证书签发后,CNAME记录可以删也可以留。留着的话,下次续签同一个域名的证书,就不用重新加记录了,直接验证就能通过。
如果不想留,删掉也行,不影响证书的使用。