个性化阅读
专注于IT技术分析

什么是DNS CAA?如何验证和实施?

本文概述

利用CAA DNS记录授权CA颁发TLS证书。

什么是DNS CAA?

CAA是指示CA是否应颁发证书的DNS记录类型之一。换句话说, 你是在让世界知道谁应该发布你的域SSL / TLS证书。 CAA实施是在2017年末强制实施的, 因此它相对较新, 只有不到5%的热门网站实施了CAA。

让我们举个例子-Geekflare拥有一个名为” gf.dev”的网站, 该网站具有以下CAA记录。

gf.dev.			3586	IN	CAA	0 issue "digicert.com; cansignhttpexchanges=yes"
gf.dev.			3586	IN	CAA	0 issuewild "comodoca.com"
gf.dev.			3586	IN	CAA	0 issue "comodoca.com"
gf.dev.			3586	IN	CAA	0 issuewild "digicert.com; cansignhttpexchanges=yes"
gf.dev.			3586	IN	CAA	0 issuewild "letsencrypt.org"
gf.dev.			3586	IN	CAA	0 issue "letsencrypt.org"

通过查看以上结果, 我可以获得仅由DigiCert, Comodo和Let’s crypto颁发的证书。如果我要求Thawte或其他CA为gf.dev颁发证书, 那么他们将无法这样做。另外, 如果你注意的话, 你会发现有些条目有问题, 有些则是野生的。让我们找出它们是什么。

  • 颁发–指示CA仅为该域颁发证书。
  • issuewild – CA可以颁发通配符证书, 以便可以在域或子域中使用它。

CAA记录还支持iodef(事件对象描述交换格式), 它允许CA将违规报告发送到指定的电子邮件或联系方式。

没有找到CAA记录会怎样?

如果某个域没有CAA记录, 那么任何人都可以为该域生成CSR并获取由任何CA签名的证书。这是安全隐患。

现在清楚了吗?

我在上面使用了一些缩写。让我们看看它们是什么。

  • DNS –域名系统
  • CA –证书颁发机构
  • CAA –证书颁发机构授权
  • TLS –传输层安全
  • SSL –安全套接字层

如何查看DNS CAA记录?

有多种验证CAA记录的方法。如果你不想离开终端机, 则可以使用dig命令进行检查。

dig caa $YOURWEBSITE.COM

geekflare.com的示例

[email protected]:~# dig caa geekflare.com

; <<>> DiG 9.11.3-1ubuntu1.8-Ubuntu <<>> caa geekflare.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54430
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;geekflare.com.			IN	CAA

;; ANSWER SECTION:
geekflare.com.		3600	IN	CAA	0 issuewild "comodoca.com"
geekflare.com.		3600	IN	CAA	0 issuewild "letsencrypt.org"
geekflare.com.		3600	IN	CAA	0 issue "comodoca.com"
geekflare.com.		3600	IN	CAA	0 issue "digicert.com; cansignhttpexchanges=yes"
geekflare.com.		3600	IN	CAA	0 issue "letsencrypt.org"
geekflare.com.		3600	IN	CAA	0 issuewild "digicert.com; cansignhttpexchanges=yes"

;; Query time: 7 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Tue Oct 08 07:12:21 UTC 2019
;; MSG SIZE  rcvd: 298

[email protected]:~#

如果你想进行远程测试, 则可以使用DNS CAA Tester联机工具。

如何添加CAA记录?

从技术上讲, 这与添加其他DNS记录(例如A, NS, CNAME等)的方式相同。

如果你使用的是Cloudflare, 请转到DNS标签>>添加一条记录, 然后选择CAA作为类型。

什么是DNS CAA?如何验证和实施?2

对于GoDaddy, 请转到DNS管理并添加一条记录

什么是DNS CAA?如何验证和实施?4

如果不确定如何添加, 则可以与DNS /主机提供商联系以寻求帮助。

总结

如果尚未, 则应利用CAA记录来添加域安全性层。添加CAA记录无需花钱。

赞(0)
未经允许不得转载:srcmini » 什么是DNS CAA?如何验证和实施?

评论 抢沙发

评论前必须登录!