管理 DNSSEC 設定

本頁面說明如何啟用及停用網域名稱系統安全性擴充功能 (DNSSEC),以及如何驗證 DNSSEC 部署作業。

如需 DNSSEC 的概念總覽,請參閱 DNSSEC 總覽

為現有的代管公開區域啟用 DNSSEC

如要為現有的代管公開區域啟用 DNSSEC,請按照下列步驟操作。

主控台

  1. 前往 Google Cloud 控制台的「Cloud DNS」頁面。

    前往 Cloud DNS

  2. 按一下要啟用 DNSSEC 的區域名稱。

  3. 在「區域詳細資料」頁面中,按一下「編輯」

  4. 在「Edit a DNS zone」(編輯 DNS 區域) 頁面中,按一下「DNSSEC」

  5. 在「DNSSEC」底下選擇「On」

  6. 按一下 [儲存]

您為區域選取的 DNSSEC 狀態會顯示在「Cloud DNS」頁面的「DNSSEC」欄中。

gcloud

執行下列指令:

 gcloud dns managed-zones update EXAMPLE_ZONE \     --dnssec-state on 

EXAMPLE_ZONE 替換為區域 ID。

Terraform

resource "google_dns_managed_zone" "example" {   name        = "example-zone-name"   dns_name    = "example.com."   description = "Example Signed Zone"   dnssec_config {     state = "on"   } }

建立區域時啟用 DNSSEC

如要在建立區域時啟用 DNSSEC,請按照下列步驟操作。

主控台

  1. 前往 Google Cloud 控制台的「Cloud DNS」頁面。

    前往 Cloud DNS

  2. 按一下 [Create zone] (建立區域)。

  3. 在「可用區名稱」欄位中輸入名稱。

  4. 在「DNS name」(DNS 名稱) 欄位中輸入名稱。

  5. 在「DNSSEC」底下選擇「On」

  6. 選用:新增說明。

  7. 點選「建立」

    建立 DNSSEC 簽署區域

gcloud

執行下列指令:

 gcloud dns managed-zones create EXAMPLE_ZONE \     --description "Signed Zone" \     --dns-name myzone.example.com \     --dnssec-state on 

EXAMPLE_ZONE 替換為區域 ID。

驗證 DNSSEC 部署

如要驗證啟用 DNSSEC 的區域是否已正確部署,請確認您在父項區域中放置的 DS 記錄正確無誤。如果發生下列任一情況,DNSSEC 解析可能會失敗:

  • 設定有誤或輸入錯誤。
  • 您在上層區域中放置了錯誤的 DS 記錄。

如要確認您已完成正確設定,並在將 DS 記錄放在父項區域前交叉檢查,請使用下列工具:

在您向註冊商更新 Cloud DNS 名稱伺服器或 DS 記錄之前,可以使用 Verisign DNSSEC 偵錯工具和 Zonemaster 網站驗證 DNSSEC 設定。網域已妥善設定 DNSSEC 的範例為 example.com, 可透過 DNSViz 查看。

建議的 DNSSEC 簽署區域存留時間設定

存留時間是指 DNSSEC 簽署區域的存留時間 (以秒為單位)。

與存留時間的到期時間不同,這是名稱伺服器傳送查詢回應的相對時間,DNSSEC 簽名會於固定的絕對時間到期。TTL 的設定時間超過簽名有效時間,會造成 DNSSEC 簽名到期時許多用戶端同時要求記錄。TTL 時間太短也會造成 DNSSEC 驗證解析器發生問題。

如需更多有關存留時間選擇的建議,請參閱 RFC 6781 4.4.1 節「時間考量」RFC 6781 圖 11

閱讀 RFC 6781 第 4.4.1 節時,請注意許多簽名時間參數都已由 Cloud DNS 固定設定,您無法變更。您無法變更下列參數 (如有變更,恕不另行通知或更新本文件):

  • Inception 偏移 = 1 天
  • 有效期限 = 21 天
  • 重新簽署期間 = 3 天
  • 重新整理期間 = 18 天
  • 時基誤差間隔 = ½ 天 (或 ±6 小時)
  • 簽名有效性最短期間 = 重新整理 – 時基誤差 = 17.75 天 = 1533600

永遠不得使用值大於簽名有效性最短時間的 TTL。

停用代管區域的 DNSSEC

移除 DS 記錄並等到這些記錄在快取中到期後,您就可以使用下列 gcloud 指令關閉 DNSSEC:

 gcloud dns managed-zones update EXAMPLE_ZONE \     --dnssec-state off 

EXAMPLE_ZONE 替換為區域 ID。

後續步驟