文档首页 > > 最佳实践> 设置CAA记录防止错误颁发HTTPS证书

设置CAA记录防止错误颁发HTTPS证书

分享
更新时间: 2019/09/19 GMT+08:00

CAA(Certification Authority Authorization,证书颁发机构授权)是一项防止HTTPS证书错误颁发的安全措施,遵从IETF RFC6844。从2017年9月8日起,要求CA(Certification Authority,证书颁发)机构执行CAA强制性检查。

公有云的云解析服务支持为公网域名设置CAA记录,您可以通过在管理控制台为域名添加CAA解析记录。

背景

全球约有上百个CA机构有权发放HTTPS证书,证明您网站的身份。假如浏览器将某个CA机构列入黑名单,并宣称不再信任其颁发的HTTPS证书,当您访问到部署了这些HTTPS证书的网站时,会被提示HTTPS证书不受信任,如图1所示。

图1 HTTPS证书错误颁发

CAA标准要求CA机构在为域名签发证书时执行CAA强制性检查:

  • 如果检查域名的DNS解析记录,发现未设置CAA字段,则为该域名颁发证书。

    这种情况下,任何CA机构均可为该域名签发证书,存在HTTPS证书错误颁发的风险。

  • 如果检查域名的DNS解析记录,在CAA字段发现获得授权,则为该域名颁发证书。
  • 如果检查域名的DNS解析记录,在CAA字段发现未获得授权,则拒绝为该域名颁发证书,防止未授权HTTPS证书错误颁发。

为网站的域名添加CAA解析记录可以使网站将指定CA机构列入白名单,仅授权指定CA机构为网站的域名颁发证书,提高网络的安全性。

配置原则

CAA记录集的格式为:[flag] [tag] [value],由一个标志字节的[flag]和一个[tag]-[value](标签-值)对组成。

配置原则:

  • flag:认证机构限制标志,定义为0~255无符号整型。常用取值为0。
  • tag:仅支持大小写字母和数字0~9,长度1~15,常用取值:
    • issue:授权任何类型的域名证书
    • issuewild:授权通配符域名证书
    • iodef:指定违规申请证书通知策略
  • value:域名或用于违规通知的电子邮箱或Web地址。其值取决于[tag]的值,必须加双引号。取值范围:字符串(仅包含字母、数字、空格、-#*?&_~=:;.@+^/!%),最长255字符。
不同应用场景下,设置CAA记录集的规则如 表1所示。
表1 CAA记录配置规则

目的

样例

描述

设置单域名CAA记录

0 issue "ca.example.com"

该字段表示只有ca.example.com可以为域名domain.com颁发证书,未经授权的第三方CA机构申请域名domain.com的HTTP证书将被拒绝。

0 issue ";"

该字段表示拒绝任何CA机构为域名domain.com颁发证书。

设置发送警报通知

0 iodef "mailto:admin@domain.com"

该字段用于当第三方尝试为一个未获得授权的域名申请证书时,通知CA机构向网站所有者发送警报邮件。

0 iodef "http:// domain.com/log/"

0 iodef "https:// domain.com/log/"

该字段用于记录尝试在其他CA申请HTTPS证书的行为。

设置颁发通配符域名证书

0 issuewild "ca.example.com"

该字段用于将通配符证书的颁发权限指定CA机构ca.example.com。

综合配置样例

0 issue "ca.abc.com"

0 issuewild "ca.def.com"

0 iodef "mailto:admin@domain.com"

该字段表示域名domain.com:

  • 授权CA机构ca.abc.com颁发不限类型的证书。
  • 授权CA机构ca.def.com颁发通配符证书。
  • 禁止其他CA机构颁发证书。
  • 当有违反设置规则的情况发生,CA机构发送通知邮件到admin@domain.com。

添加CAA记录集

  1. 登录管理控制台。
  2. 选择“网络 > 云解析服务”。

    进入云解析服务页面。

  3. 在左侧树状导航栏,选择“域名解析 > 公网解析”。

    进入“公网域名”页面。

  4. 在“公网域名”页面的域名列表中,单击待添加CAA记录集的域名domain.com。

    系统进入domain.com的域名解析记录页面。

  5. 单击“添加记录集”。

    系统进入“添加记录集”页面。

  6. 设置CAA记录集的参数。
    • 类型:CAA – CA证书颁发机构授权校验
    • 线路类型:全网默认
    • TTL:5分钟
    • 值:

      0 issue "ca.abc.com"

      0 iodef "mailto:admin@domain.com"

  7. 单击“确定”,完成CAA类型记录集的添加。

验证CAA解析记录是否生效?

CAA解析记录可以通过dig+trace命令查看域名是否生效以及具体的解析过程。

命令格式为:dig [类型] [域名] +trace。

示例如下:

dig caa www.example.com +trace

说明:

如果操作系统没有自带dig命令,需要手动安装后才能使用。

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区