首頁 > 運營 > 建站經驗 > 正文

域名解析中到底什么是CAA記錄?CAA記錄詳解

2020-09-09 23:14:38
字體:
來源:轉載
供稿:網友

強制CAA檢查的提議

2017年3月7日,CA|B Forum (一個全球證書頒發機構與瀏覽器的技術論壇)發起了一項關于對域名強制檢查CAA的一項提議的投票,獲得187票支持,投票有效,提議通過。

提議通過后,將于2017年9月8日根據Mozilla的Gervase Markham提出的檢查CAA記錄作為基準要求來實施。

什么是CAA記錄?

CAA,全稱Certificate Authority Authorization,即證書頒發機構授權。它為了改善PKI(Public Key Infrastructure:公鑰基礎設施)生態系統強度、減少證書意外錯誤發布的風險,通過DNS機制創建CAA資源記錄,從而限定了特定域名頒發的證書和CA(證書頒發機構)之間的聯系。從此,再也不能是任意CA都可以為任意域名頒發證書了。

關于CAA記錄,其實早在4年前便在RFC 6844中有定義,但由于種種原因配置該DNS資源記錄的網站寥寥無幾。如今,SSL證書在頒發之前對域名強制CAA檢查,就對想要https訪問的網站域名提出了解析配置的要求。

CAA資源記錄詳解

CAA記錄可以控制單域名SSL證書的發行,也可以控制通配符證書。當域名存在CAA記錄時,則只允許在記錄中列出的CA頒發針對該域名(或子域名)的證書。

在域名解析配置中,咱們可以為整個域(如example.com)或者特定的子域(如subzone.example.com)設置CAA策略。當為整域設置CAA資源記錄時,該CAA策略將同時應用于該域名下的任一子域,除非被已設置的子域策略覆蓋。

CAA記錄格式

CAA記錄格式由以下元素組成:

CAA <flags> <tag> <value>

釋義:

元素 說明
CAA DNS資源記錄類型
<flags> 認證機構限制標志
<tag> 證書屬性標簽
<value> 證書頒發機構、策略違規報告郵件地址等

 

<flags>定義為0~255無符號整型,取值:

Issuer Critical Flag:0

1~7為保留標記

<tag>定義為US-ASCII和0~9,取值:

CA授權任何類型的域名證書(Authorization Entry by Domain) : issue

CA授權通配符域名證書(Authorization Entry by Wildcard Domain) : issuewild

指定CA可報告策略違規(Report incident by IODEF report) : iodef

auth、path和policy為保留標簽

<value>定義為八位字節序列的二進制編碼字符串,一般填寫格式為:

[domain] [";" * 參數]

CAA資源記錄示例

當需要限制域名example.com及其子域名可由機構letsencrypt頒發不限類型的證書,同時可由Comodo頒發通配符證書,其他一律禁止,并且當違反配置規則時,發送通知郵件到example@example.com。

配置如下(為便于理解,二進制Value值已經過轉碼,下同):

example.com.  CAA 0 issue "letsencrypt.org"example.com.  CAA 0 issuewild "comodoca.com"example.com.  CAA 0 iodef "mailto:example@example.com"

如果子域名有單獨列出證書頒發要求,例如:

example.com.  CAA 0 issue "letsencrypt.org"alpha.example.com.  CAA 0 issue "comodoca.com"

那么,因子域策略優先,所以只有Comodo可以為域名alpha.example.com.頒發證書。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
金玫玫床戏