Defaults.Exposed › 设置 › CAA
如何在 GoDaddy 上设置 CAA 记录
在 GoDaddy 中添加 CAA 记录,控制哪些证书颁发机构可以为你的域名签发 SSL 证书。
这对你的业务意味着什么
CAA(Certification Authority Authorization,证书颁发机构授权)记录指定了哪些证书颁发机构(即签发浏览器地址栏挂锁背后 SSL/TLS 证书的公司)可以为你的域名签发证书。任何守规矩的机构都必须先检查这条记录,如果自己不在名单上,就必须拒绝签发请求。
说得直白一点:没有 CAA 记录,全球数百家证书颁发机构中的任何一家都可能被骗或因失误而向他人签发一张针对你域名的有效证书——攻击者可以借此惟妙惟肖地冒充你的网站。CAA 记录把这扇门关上,等于宣布:只有这几家机构,其他一概不行。 它免费,几分钟就能搞定。
先确认 GoDaddy 在为你解析 DNS
这只有在 GoDaddy 负责回应你域名的 DNS 时才有效。GoDaddy 既卖域名也托管 DNS,但两者是分开的——你域名的**域名服务器(nameservers)**必须指向 GoDaddy,你在这里添加的记录才会生效。登录后打开你的域名,确认域名服务器是 GoDaddy 自己的。如果它们指向别处,请到真正负责你 DNS 的服务商那里添加 CAA 记录。
先弄清楚你的证书颁发机构
动手添加之前,先弄清楚是哪家机构在签发你的证书,否则你可能会把自己的服务商也挡在门外。常见取值:
letsencrypt.org— Let’s Encrypt(大多数免费及自动化证书使用)digicert.com— DigiCertsectigo.com— Sectigoglobalsign.com— GlobalSignpki.goog— Google Trust Servicesamazon.com— Amazon(AWS Certificate Manager)
如果不确定,可以问搭建你主机环境的人,或在浏览器里查看证书(点击挂锁,再查看证书的颁发者)。
GoDaddy 上的操作步骤
- 登录 GoDaddy,打开域名组合(Domain Portfolio)(或我的产品 My Products)。
- 找到你的域名,打开它的 DNS 管理页面(找 DNS 或 Manage DNS)。
- 在记录列表下方,点击添加(Add)(或 Add New Record)。
- 将**类型(Type)**设为 CAA。
- 在名称(Name)(或 Host)字段中输入:
@@代表域名的根。不要在这里填写你的域名。 - 将**标志位(Flags)**设为:
0 - 将**标签(Tag)**设为:
issue - 在**值(Value)**字段中填写你证书颁发机构的标识符,例如:
letsencrypt.org - TTL 保持默认(1 小时即可)。
- 点击保存(Save)。
允许多家证书颁发机构
大多数域名随着时间会用到不止一家机构——比如现在用免费证书、以后用付费证书,或为另一项服务用另一家。要允许多家,请为每一家各添加一条独立的 CAA 记录。它们都使用相同的 @ 名称、0 标志位和 issue 标签,只有值不同:
- 一条记录的值为
letsencrypt.org - 一条记录的值为
digicert.com
这两条合起来表示:这两家机构都允许,其他都不行。 你不要把它们合并到一条记录里。
GoDaddy 上人们常踩的坑
- 最大的错误就是把自己的机构挡在门外。 如果你添加的 CAA 记录只列了
digicert.com,而你的证书其实是通过 Let’s Encrypt 续期的,那么下一次续期就会悄无声息地失败,几周后你的挂锁可能突然失效。保存前务必把你真正使用的每一家机构都列进去。 - 名称是
@,不是你的域名。 在名称字段里填完整域名会把记录建到错误的位置。根用@。 - 标志位普通记录用
0。 另一个值128是严格模式,会让不合规的机构直接拒绝——只在你有意为之时才用。日常使用填0。 - 填裸域名,不要填网址。 值是
letsencrypt.org,绝不是https://letsencrypt.org,也不要带www.。 - 不要自己加引号。 直接填裸值;GoDaddy 会自行处理引号。
- 给它一点时间。 DNS 变更生效需要几分钟到几个小时不等。已有证书照常工作;CAA 只在签发或续期新证书时才会被检查。
验证是否生效
保存并传播完成后,运行本站的免费检测。它会用通俗的语言告诉你 CAA 记录是否已就位、你允许了哪些机构。
完成了? 免费检查您的域名 以确认设置已生效——并查看您在全部 34 项检查中的完整评级。