开发者社区> kimi.tl> 正文

防止域名证书劫持,阿里云解析率先支持CAA

简介: 2017年3月,CA浏览器论坛投票通过187号提案,要求CA机构从2017年9月8日起执行CAA强制性检查。CAA标准使得网站所有者,仅授权指定CA机构为自己的域名颁发证书,以防止HTTPS证书错误签发。
+关注继续查看

背景

2015年发生过一起著名的沃通误签发GitHub域名SSL证书事件,用户在使用schrauger.github.com以及schrauger.github.io的个人子页面权限,获取沃通信任后,成功拿到了github.com、github.io、www.github.io这几个域名的证书。此时,如果把用户的访问流量劫持到本地服务器,那么浏览器就能访问位于本地的伪造GitHub钓鱼网站,HTTPS安全加密通信将没有任何作用。
据权威部门统计,全球约有上百个证书颁发机构(CA)有权发放HTTPS证书,证明您网站的身份。但是证书颁发机构由于某些原因,往往会被浏览器列入"黑名单" ,并公开宣布将不再信任其签发的https证书。所以当你访问到部署了这些证书的网站时,部分浏览器比如谷歌、火狐会提示"https证书不受信任",浏览器地址栏的https也会被划上一条小红线,网页不能访问,如图所示。

image

今年6月1日,《中华人民共和国网络安全法》正式实施,标志着网络安全已得到国家的高度重视。其中,第二十一条规定,网络运营者有承担采取防范计算机病毒和网络攻击、网络侵入等危害网络安全行为的技术措施的义务。因此,迫切需要一项公共标准来授权域名所有者指定允许为其域名颁发HTTPS证书的机构。
CAA(Certification Authority Authorization,即证书颁发机构授权)是一项防止HTTPS证书错误签发的安全措施,于2013年1月通过互联网工程任务组(IETF)的批准列为RFC6844,2017年3月,CA浏览器论坛投票通过187号提案,要求CA机构从2017年9月8日起执行CAA强制性检查。
CAA标准使得网站所有者,仅授权指定CA机构为自己的域名颁发证书,以防止HTTPS证书错误签发。
为网站域名设置CAA记录也成为了提高网站安全性的方法之一。
目前,阿里云云解析DNS作为国内最大的权威DNS服务商,已率先支持CAA记录类型。那么怎样设置CAA记录?CAA记录具体表示什么意思呢?

CAA格式

CAA记录的格式为:[flag] [tag] [value],是由一个标志字节的[flag]和一个被称为属性的标签[tag]-值[value]对组成,可以将多个CAA字段添加到域名的DNS记录中。

字段
说明
flag
0-255之间的无符号整数,用于认证机构限制标志,通常情况下填0,表示如果颁发证书机构无法识别本条信息,就忽略。
tag
目前有三种issue、issuewild、iodef。
  • issue表示:CA授权单个证书颁发机构发布的任何类型的域名证书;
  • issuewild表示:CA授权单个证书颁发机构发布主机名的通配符证书;
  • iodef表示:CA可以将违规的颁发记录URL发送给某个电子邮箱;
value
CA的域名或用于违规通知的电子邮箱;

CAA记录示例

例如:我只允许midengd.xyz的证书是symantec.com颁发的,并且如果有违规通知我的邮箱admin@midengd.xyz。

登录阿里云云解析控制台,添加如下两条解析记录,如图所示:

@ 0 issue "symantec.com"
@ 0 iodef "mailto:admin@midengd.xyz"

image.png | center | 704x226

CAA记录查询

使用 “dig 域名 记录类型”来进行查询

sh-3.2# dig midengd.xyz caa

; <<>> DiG 9.10.5rc1 <<>> midengd.xyz caa
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26714
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4000
;; QUESTION SECTION:
;midengd.xyz. IN CAA

;; ANSWER SECTION:
midengd.xyz. 600 IN CAA 0 iodef "mailto:admin@midengd.xyz"
midengd.xyz. 600 IN CAA 0 issue "symantec.com"

;; Query time: 577 msec
;; SERVER: 30.26.8.5#53(30.26.8.5)
;; WHEN: Tue Dec 05 18:55:48 CST 2017
;; MSG SIZE rcvd: 114

未来发展前景

自今年4月份决定,所有CA机构颁发SSL证书前必须要求对颁发证书对象的域名进行CAA检测以来,以将近8个月的时间。目前,海外Route53、dyn、Cloudflare等主要DNS服务商均已支持CAA记录,但是国内的普及程度还没有跟上步伐。

加强网络安全需要从一点一滴开始,不放过任何一个风险点才能不给不法分子有机可乘。随着社会网络安全意识的整体提高,CAA记录作为加强网站安全的措施之一,必将会成为金融机构、电子政务、公共服务等行业的一项网络安全基准要求,也会有越来越多的DNS服务商的支持CAA记录,CAA普及也只是时间问题。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
20368 0
阿里云ECS云服务器初始化设置教程方法
阿里云ECS云服务器初始化是指将云服务器系统恢复到最初状态的过程,阿里云的服务器初始化是通过更换系统盘来实现的,是免费的,阿里云百科网分享服务器初始化教程: 服务器初始化教程方法 本文的服务器初始化是指将ECS云服务器系统恢复到最初状态,服务器中的数据也会被清空,所以初始化之前一定要先备份好。
13817 0
阿里云服务器端口号设置
阿里云服务器初级使用者可能面临的问题之一. 使用tomcat或者其他服务器软件设置端口号后,比如 一些不是默认的, mysql的 3306, mssql的1433,有时候打不开网页, 原因是没有在ecs安全组去设置这个端口号. 解决: 点击ecs下网络和安全下的安全组 在弹出的安全组中,如果没有就新建安全组,然后点击配置规则 最后如上图点击添加...或快速创建.   have fun!  将编程看作是一门艺术,而不单单是个技术。
18645 0
阿里云服务器如何登录?阿里云服务器的三种登录方法
购买阿里云ECS云服务器后如何登录?场景不同,阿里云优惠总结大概有三种登录方式: 登录到ECS云服务器控制台 在ECS云服务器控制台用户可以更改密码、更换系.
25058 0
如何设置阿里云服务器安全组?阿里云安全组规则详细解说
阿里云安全组设置详细图文教程(收藏起来) 阿里云服务器安全组设置规则分享,阿里云服务器安全组如何放行端口设置教程。阿里云会要求客户设置安全组,如果不设置,阿里云会指定默认的安全组。那么,这个安全组是什么呢?顾名思义,就是为了服务器安全设置的。安全组其实就是一个虚拟的防火墙,可以让用户从端口、IP的维度来筛选对应服务器的访问者,从而形成一个云上的安全域。
17128 0
Tomcat部署多域名ssl证书
Tomcat部署多域名ssl证书
2375 0
阿里云服务器ECS远程登录用户名密码查询方法
阿里云服务器ECS远程连接登录输入用户名和密码,阿里云没有默认密码,如果购买时没设置需要先重置实例密码,Windows用户名是administrator,Linux账号是root,阿小云来详细说下阿里云服务器远程登录连接用户名和密码查询方法
21626 0
+关注
kimi.tl
阿里云云解析DNS产品专家,专注DNS与网络通讯领域
2
文章
0
问答
来源圈子
更多
作为全球云计算的领先者,阿里云为全球230万企业提供着云计算服务,服务范围覆盖200多个国家和地区。我们致力于为企业、政府等组织机构提供安全可靠的云计算服务,给用户带来极速愉悦的服务体验。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
JS零基础入门教程(上册)
立即下载
性能优化方法论
立即下载
手把手学习日志服务SLS,云启实验室实战指南
立即下载