設定網域的 DNSSEC - Amazon Route 53

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定網域的 DNSSEC

攻擊者有時會透過攔截 DNS 查詢並向 DNS 解析程式傳回自己的 IP 地址而不是網際網路端點的實際 IP 地址,來劫持通往這些端點的流量。然後系統會將使用者路由到攻擊者在詐騙回應中提供的 IP 地址,例如假網站。

您可以透過設定網域名稱系統安全性延伸 (DNSSEC) (保護 DNS 流量的通訊協定) 來保護您的網域免受這種 man-in-the-middle 攻擊 (稱為 DNS 詐騙或攻擊) 的攻擊。

重要

Amazon Route 53 支援 DNSSEC 簽署和 DNSSEC 以進行網域註冊。如果要為向 Route 53 註冊的網域設定 DNSSEC 簽署,請參閱 在 Amazon Route 53 中設定 DNSSEC 簽署

DNSSEC 如何保護網域的概觀

當您為網域設定 DNSSEC,DNS 解析程式會為來自中間解析程式的回應建立信任鏈。該信任鏈從網域 (您的網域的父區域) 的 TLD 註冊機構開始,至 DNS 服務提供者的授權名稱伺服器結束。並非所有 DNS 解析程式都支援 DNSSEC。只有支援 DNSSEC 的解析程式會執行所有簽章或真實性驗證。

為清晰起見,下面簡要說明如何為向 Amazon Route 53 註冊的網域設定 DNSSEC,以保護您的網際網路主機不受 DNS 詐騙:

  1. 使用由 DNS 服務提供者提供的方法,透過非對稱金鑰對中的私有金鑰簽署託管區域內的記錄。

    重要

    Route 53 支援 DNSSEC 簽署和 DNSSEC 以進行網域註冊。如需進一步了解,請參閱 在 Amazon Route 53 中設定 DNSSEC 簽署

  2. 將金鑰對中的公有金鑰提供給您的網域註冊商,並指定用於產生金鑰對的演算法。網域註冊商會將公開金鑰和演算法轉送給頂層網域 (TLD) 的註冊機構。

    如需如何為已向 Route 53 註冊的網域執行此步驟的資訊,請參閱 為網域新增公開金鑰

在您設定 DNSSEC 之後,下面說明如何保護您的網域不受 DNS 詐騙:

  1. 提交 DNS 查詢,例如透過瀏覽到網站或傳送電子郵件訊息。

  2. 請求路由到 DNS 解析程式。解析程式負責根據請求向用戶端傳回適當的值,例如,執行 Web 伺服器或電子郵件伺服器的主機的 IP 地址。

  3. 如果該 IP 地址已在 DNS 解析程式中快取 (因為其他人已提交過相同的 DNS 查詢,且解析程式已取得該值),解析程式會將該 IP 地址傳回給提交請求的用戶端。然後用戶端使用該 IP 地址來存取主機。

    如果該 IP 地址未在 DNS 解析程式中快取,解析程式將向您的網域的父區域傳送請求,在 TLD 註冊機構該操作會傳回兩個值:

    • 委派簽署人 (DS) 記錄,這是與用來簽署記錄的私有金鑰對應的公開金鑰。

    • 網域的授權名稱伺服器的 IP 地址。

  4. DNS 解析程式將原始請求傳送到另一個 DNS 解析程式。如果該解析程式沒有此 IP 地址,它會重複此程序,直到解析程式將請求傳送到位於您的 DNS 服務提供者的名稱伺服器。名稱伺服器會傳回兩個值:

    • 網域的記錄,例如 example.com。這通常包含主機的 IP 地址。

    • 您在設定 DNSSEC 時建立的記錄的簽章。

  5. DNS 解析程式使用您向網域註冊商提供的公開金鑰 (註冊商再將其轉送給 TLD 註冊機構) 來執行下面的兩項操作:

    • 建立信任鏈。

    • 驗證來自 DNS 服務提供者的已簽署回應合法,並且未被攻擊者的錯誤回應取代。

  6. 如果回應是真實的,解析程式會將該值傳回給提交請求的用戶端。

    如果回應無法驗證,解析程式會傳回錯誤給使用者。

    如果網域的 TLD 註冊機構沒有網域的公開金鑰,解析程式會使用它從 DNS 服務提供者取得的回應來回應 DNS 查詢。

為網域設定 DNSSEC 的先決條件和上限

若要為網域設定 DNSSEC,您的網域和 DNS 服務提供者必須符合以下先決條件:

  • TLD 的註冊機構必須支援 DNSSEC。若要判斷您的 TLD 註冊機構是否支援 DNSSEC,請參閱可向 Amazon Route 53 註冊的域

  • 網域的 DNS 服務提供者必須支援 DNSSEC。

    重要

    Route 53 支援 DNSSEC 簽署和 DNSSEC 以進行網域註冊。如需進一步了解,請參閱在 Amazon Route 53 中設定 DNSSEC 簽署

  • 您必須與 DNS 服務提供者設定 DNSSEC,然後才能將網域的公開金鑰新增到 Route 53。

  • 可以新增到網域的公開金鑰數目取決於網域的 TLD:

    • .com 和 .net 網域 – 最多 13 個金鑰

    • 所有其他網域 – 最多 4 個金鑰

為網域新增公開金鑰

您在輪換金鑰或為網域啟用 DNSSEC 時,請在與網域的 DNS 服務提供者設定 DNSSEC 之後執行以下程序。

若要為網域新增公開金鑰
  1. 如果您尚未與您的 DNS 服務提供者設定 DNSSEC,請使用您的服務提供者提供的方法來設定 DNSSEC。

  2. 登入 AWS Management Console 並開啟路線 53 主控台,網址為 https://console.aws.amazon.com/route53/

  3. 在導覽窗格中,選擇 Registered domains (已註冊的網域)

  4. 選擇要新增金鑰的網域的名稱。

  5. 選擇 DNSSEC 金鑰索引標籤,然後選擇新增金鑰

  6. 指定下列值:

    Key type

    選擇您要上傳金鑰簽署金鑰 (KSK) 或區域簽署金鑰 (ZSK)。

    演算法

    選擇您用來簽署託管區域記錄的演算法。

    公有金鑰

    指定您與 DNS 服務提供者設定 DNSSEC 時所使用非對稱金鑰對中的公開金鑰。

    注意下列事項:

    • 請指定公開金鑰,而非摘要。

    • 您必須指定 base64 格式的金鑰。

  7. 選擇新增

    注意

    您一次只能新增一個公開金鑰。如果您需要新增更多金鑰,請等待,直到您從 Route 53 收到確認電子郵件。

  8. 當 Route 53 收到來自註冊機構的回應時,我們會向網域的註冊聯絡人傳送電子郵件。電子郵件會確認已將公開金鑰新增到註冊機構的網域或解釋無法新增金鑰的原因。

刪除網域的公開金鑰

您在輪換金鑰或為網域停用 DNSSEC 時,請執行以下程序刪除公開金鑰,然後與網域的 DNS 服務提供者停用 DNSSEC。注意下列事項:

  • 如果您要輪換金鑰,我們建議您在新增新的公開金鑰之後最多等待 3 天,再刪除舊的公開金鑰。

  • 如果您要停用 DNSSEC,請先刪除網域的公開金鑰。我們建議您最多等待 3 天,再與網域的 DNS 服務提供者停用 DNSSEC。

重要

如果已為網域啟用 DNSSEC 並與 DNS 服務停用 DNSSEC,則支援 DNSSEC 的 DNS 解析程式將向用戶端傳回 SERVFAIL 錯誤,用戶端將無法存取與該網域關聯的端點。

若要刪除網域的公開金鑰
  1. 登入 AWS Management Console 並開啟路線 53 主控台,網址為 https://console.aws.amazon.com/route53/

  2. 在導覽窗格中,選擇 Registered domains (已註冊的網域)

  3. 選擇要刪除金鑰的網域的名稱。

  4. DNSSEC 金鑰索引標籤中,選擇要刪除之金鑰旁邊的選項按鈕,然後選擇刪除金鑰

  5. 刪除 DNSSEC 金鑰對話方塊中,在文字方塊內輸入刪除,以確認您要刪除此金鑰,然後選擇刪除

    注意

    您一次只能刪除一個公開金鑰。如果您需要刪除更多金鑰,請等待,直到您從 Amazon Route 53 收到確認電子郵件。

  6. 當 Route 53 收到來自註冊機構的回應時,我們會向網域的註冊聯絡人傳送電子郵件。電子郵件會確認已從註冊機構的網域刪除公開金鑰或解釋無法刪除金鑰的原因。