Defaults.Exposed › 設置 › DNSSEC
如何在 Cloudflare 上設定 DNSSEC
在 Cloudflare 中開啟 DNSSEC,並在註冊商處新增 DS 記錄,讓任何人都無法偽造你的 DNS 應答。
這對你的業務意味著什麼
當有人輸入你的網域或給你傳送郵件時,他們的電腦會向 DNS 系統詢問正確的地址。這些應答通常未經簽章傳輸,這意味著能夠篡改它們的攻擊者可以悄悄把你的訪客引向假冒網站,或把你的郵件改道到他自己的伺服器上。在整個過程中,你的客戶在地址列裡看到的都是你真實的網域。
DNSSEC 彌合了這道缺口。它用密碼學方式為你的 DNS 應答簽章,於是查詢你的人能夠證明應答確實來自你、且在途中未被改動。說得直白一點:它能阻止犯罪分子劫持你的網域、或對那些把人們引向你的查詢投毒。它免費,而且是你能為這一切賴以建立的根基開啟的最強保護之一。
DNSSEC 究竟是怎麼運作的(這樣後面的步驟才好理解)
DNSSEC 有兩半,分別存在於兩個地方:
- 你的 DNS 託管方(Cloudflare)為你的記錄簽章,並發布公鑰(一條 DNSKEY)以及一個被稱為 DS 記錄的小型指紋。
- 你的註冊商(你購買並續費網域的地方)把那條 DS 記錄向上發布到上層區域(例如
.com)。
註冊商處的 DS 記錄是信任鏈上的那一環。Cloudflare 可以一直簽章,但在匹配的 DS 記錄登記到你註冊商之前,更廣闊的網際網路沒有經過簽章的途徑去信任這些簽章。所以這項工作分兩步:在 Cloudflare 裡開啟它,然後把 DS 記錄交給你的註冊商。
真正的風險——請謹慎操作
做錯時,DNSSEC 可能讓你的整個網域下線。導致這種情況的兩種方式:
- 在註冊商處發布的 DS 記錄與你 DNS 託管方實際簽章所用的不匹配。
- 把 DNS 遷往另一家託管方(或關閉 Cloudflare)時,沒有先在註冊商處移除 DS 記錄——舊的 DS 記錄會繼續索要早已不存在的簽章,於是查詢開始失敗。
只要你按下面的流程依序操作,並且在 Cloudflare 仍是你的簽章託管方期間絕不刪除註冊商處的 DS 記錄,這兩種情況都不會發生。如果你打算離開 Cloudflare,請先關閉 DNSSEC 並在註冊商處移除 DS 記錄,再遷移。
先確認 Cloudflare 在為你解析 DNS
這只有在 Cloudflare 負責回應你網域的 DNS 時才有效。Cloudflare 是你的 DNS 託管方,不一定是你購買網域的那家公司。只有當你網域的**網域伺服器(nameservers)**指向主控台中顯示的 Cloudflare 網域伺服器時,Cloudflare 的 DNS 才會生效。在 Cloudflare 中打開你的網域,查看 Overview 頁面以確認 Cloudflare 處於激活狀態。如果你的網域伺服器指向別處,請到真正負責你 DNS 的服務商那裡啟用 DNSSEC。
Cloudflare 上的操作步驟
- 登入 Cloudflare,選擇你的網域。
- 在左側選單中進入 DNS,再到 Settings(較舊的主控台會在 DNS 下直接顯示 DNSSEC 區域)。
- 找到 DNSSEC,點擊 Enable DNSSEC。
- Cloudflare 會顯示一組值——其中關鍵的是 DS 記錄。你通常會看到諸如 Key Tag、Algorithm、Digest Type、Digest 等欄位,以及一條現成的單行 DS 記錄。讓這個面板保持打開;你需要把這些複製到註冊商。
- 現在登入你的註冊商(你為網域續費的那家公司——它可能是、也可能不是 Cloudflare)。
- 在註冊商處找到你網域的 DNSSEC 或 DS 記錄區域,用 Cloudflare 給你的確切值新增一條新的 DS 記錄:
- Key Tag — Cloudflare 顯示的那個數字。
- Algorithm — 通常是
13(ECDSA P-256 SHA-256)。 - Digest Type — 通常是
2(SHA-256)。 - Digest — 那一長串十六進位字串,原樣複製。
- 在註冊商處儲存。如果你的註冊商允許你貼上一條合併好的單行 DS 記錄而非分開填寫,請使用 Cloudflare 顯示的完整 DS 行。
- 回到 Cloudflare,一旦註冊商接受了 DS 記錄,Cloudflare 的 DNSSEC 狀態就會轉為 active(這可能需要一點時間才能確認)。
Cloudflare 上人們常踩的坑
- 是兩個系統,不是一個。 僅在 Cloudflare 裡啟用 DNSSEC 本身什麼也不做——DS 記錄還必須登記到你的註冊商。人們在第 3 步之後就停下,然後納悶為什麼它始終不變 active。
- 原樣複製 digest。 Digest 裡哪怕錯一位或漏一個字元,註冊商的 DS 記錄就會與 Cloudflare 的簽章不匹配,而這正是導致網域下線的那種設定錯誤。請複製貼上,絕不要手敲。
- 演算法和摘要類型的數字要對上。 如果你的註冊商要求分開填寫這些,請使用 Cloudflare 顯示的值——不要猜。
- 如果 Cloudflare 同時也是你的註冊商,DS 這一步會在內部處理,你可能看不到單獨的註冊商表單——但在認定完成之前,請確認 DNSSEC 顯示為 active。
- Cloudflare 仍在簽章時,絕不要移除 DS 記錄。 而且如果你要把 DNS 從 Cloudflare 遷走,請在遷移前先關閉 DNSSEC 並在註冊商處清除 DS 記錄。
- 給它一點時間。 DNSSEC 變更完全傳播並顯示為 active 需要幾分鐘到一天不等。
驗證是否生效
當 Cloudflare 中 DNSSEC 顯示為 active、且註冊商處 DS 記錄已就位後,執行本站的免費檢測。它會用淺顯易懂的語言告訴你 DNSSEC 是否已正確發布並對你的網域受信。
完成了? 免費檢查您的網域 以確認設置已生效——並查看您在全部 34 項檢查中的完整評級。