Domain-Name-System

CAA issuewild 多級子子域

  • November 23, 2019

CAA 可能會確保頒發的證書來自我的 CA,而不是來自另一個 CA。

在 DNS 中給出:

example.com. 300 IN CAA 0 issue "ca.example.com"
example.com. 300 IN CAA 0 issuewild "ca.example.com"

問題 1:我的 CA 可以使用它來頒發以下子子域嗎?

a.b.c.example.com
d.e.f.example.com

問題 2:如果這不可能,那麼在 DNS 中執行此操作的最簡單方法是什麼?我們有許多子子域。

CAA 規範包括從根上走的 DNS。

因此,首先a.b.c.example.com將完成對 CAA 記錄的 DNS 查詢,如果失敗,則對b.c.example.com、 thenc.example.com等進行相同的查詢,直到找到匹配項或到達根。

請參閱顯示要使用的算法的RFC 8659 §3:

 RelevantCAASet(domain):
   while domain is not ".":
     if CAA(domain) is not Empty:
       return CAA(domain)
     domain = Parent(domain)
   return Empty

有了這個解釋:

搜尋 CAA RRset 會將 DNS 名稱樹從指定標籤向上爬到但不包括 DNS 根“.”。直到找到 CAA RRset。

所以對你的問題 1 的回答是肯定的,因此問題 2 消失了。

引用自:https://serverfault.com/questions/992735