你的網域用 Cloudflare 代管,很可能也順手把網站流量的 Proxy 打開了,也就是 DNS 紀錄旁邊那個橘色雲朵圖示。收到電子豹寄來的 DNS 設定檔,要新增六筆紀錄完成寄件者身份驗證時,如果照著平常的習慣讓雲朵維持橘色,Amazon SES 的 DKIM 驗證會直接失敗,而且介面上不會明顯告訴你原因出在這裡。

這篇教學會照著電子豹寄給你的 DNS 設定檔,把每一筆紀錄要填在 Cloudflare 哪個欄位、雲朵要設成什麼顏色,一步步說清楚。

💡 重要提醒:文中出現的紀錄名稱與數值都是示意用途,並非實際要填入的內容。實際操作時,請依照你收到的 DNS 設定檔(CSV)裡的值逐一填入,操作步驟與本文相同。

六筆紀錄總覽

# Record Name Type 說明
1 _dmarc TXT DMARC 政策,以 v=DMARC1; 開頭,包含政策設定(如 p=none)
2 @(空白) TXT SPF 記錄,列出授權代表網域寄信的服務
3 mx._domainkey TXT Mailgun DKIM,以 k=rsa; p= 開頭,後接一長串 RSA 公鑰字串
4 xxxxxxxx..._domainkey CNAME Amazon SES DKIM(第 1 筆),指向 xxxxxxxx....dkim.amazonses.com
5 yyyyyyyy..._domainkey CNAME Amazon SES DKIM(第 2 筆),指向 yyyyyyyy....dkim.amazonses.com
6 zzzzzzzz..._domainkey CNAME Amazon SES DKIM(第 3 筆),指向 zzzzzzzz....dkim.amazonses.com

上表的 xxxxxxxx...、yyyyyyyy...、zzzzzzzz... 為示意字串,實際值請參照你收到的 DNS 設定檔。

開始前的注意事項

Cloudflare 有兩種網域使用方式,DNS 設定入口不同:

使用方式 DNS 設定位置
完整設定(Full Setup):網域的 Nameserver 指向 Cloudflare 直接在 Cloudflare Dashboard 的 DNS Records 頁面編輯
由主機商代管 需透過主機商的管理介面操作,本文不適用

進入 Cloudflare DNS 管理介面

  1. 開啟瀏覽器,前往 https://dash.cloudflare.com
  2. 輸入帳號與密碼登入
  3. 在帳號首頁,點擊要設定的網域名稱
  4. 在左側導覽列點擊「DNS」
  5. 再點擊「Records」

💡 重要提醒:所有記錄均須設為「DNS only」(灰色雲朵圖示),不可開啟 Proxy(橘色雲朵),否則郵件驗證將無法正常運作。

記錄 1:DMARC(TXT)

  1. 在 DNS Records 頁面,點擊「Add record」按鈕
  2. 在「Type」下拉選單選擇「TXT」
  3. 在「Name」欄位輸入:_dmarc
  4. 在「Content」欄位依你的檔案填入
  5. 「TTL」選擇「Auto」
  6. 點擊「Save」儲存

Cloudflare 儲存 TXT 記錄時,若內容未包含引號,系統會自動加上雙引號,這是正常現象。

記錄 2:SPF(TXT)

  1. 點擊「Add record」
  2. 「Type」選擇「TXT」
  3. 「Name」欄位輸入:@
  4. 「Content」依你的檔案填入
  5. 點擊「Save」儲存

💡 重要提醒:同一個網域只能有一筆 SPF 記錄。如果已經有 SPF 記錄,請點擊「Edit」進行編輯,而不是新增第二筆。

記錄 3:Mailgun DKIM(TXT)

  1. 點擊「Add record」
  2. 「Type」選擇「TXT」
  3. 「Name」依你的檔案填入,格式範例:mx._domainkey
  4. 「Content」依你的檔案填入(以 k=rsa; p= 開頭)
  5. 點擊「Save」儲存

驗證方式:請參照你的 DNS 設定檔中該筆記錄的 Validate URL 欄位。

記錄 4 到 6:Amazon SES DKIM(CNAME)

Amazon SES 使用三筆 CNAME 記錄來啟用 DKIM 簽章,三筆操作方式相同:

  1. 點擊「Add record」
  2. 「Type」選擇「CNAME」
  3. 「Name」依你的檔案填入對應的識別碼
  4. 「Target」依你的檔案填入對應的目標網域
  5. 「Proxy status」務必選擇「DNS only」(灰色雲朵)
  6. 「TTL」選擇「Auto」
  7. 點擊「Save」儲存

💡 重要提醒:CNAME 記錄的 Proxy status 必須設為 DNS only(灰色雲朵),若誤設為 Proxied(橘色雲朵),Amazon SES 的 DKIM 驗證將會失敗。

Cloudflare 的 CNAME 目標欄位名稱為「Target」,對應其他平台的「Value」或「Points to」欄位。驗證方式:請參照你的 DNS 設定檔中該筆記錄的 Validate URL 欄位。

設定完成後的確認清單

📌 逐項確認:

  • _dmarc TXT 記錄已新增
  • @ SPF TXT 記錄已新增,且只有一筆
  • mx._domainkey TXT 記錄已新增(Mailgun DKIM)
  • 三筆 Amazon SES DKIM CNAME 記錄均已新增
  • 三筆 CNAME 記錄的 Proxy status 均已設為「DNS only」(灰色雲朵)
  • 使用 DNS 設定檔中各筆記錄提供的 Validate URL 逐一驗證記錄是否已生效

DNS 變更通常在數分鐘內生效,但最多可能需要 48 小時才會在全球完全更新。

常見問題

Cloudflare 的橘色雲朵和灰色雲朵差在哪裡?

橘色雲朵代表 Proxy(流量會先經過 Cloudflare 再到你的伺服器),灰色雲朵代表 DNS only(單純的 DNS 解析,不經過 Cloudflare 代理)。寄件者身份驗證用的紀錄一律要設成灰色雲朵,Proxy 打開會讓 Amazon SES 的 DKIM 驗證失敗。

SPF 記錄已經存在,還要新增一筆新的嗎?

不用。同一個網域只能有一筆 SPF 記錄,請直接編輯現有那筆,把 DNS 設定檔裡 include: 後面的內容合併進去。

為什麼我的網域在 Cloudflare 找不到 DNS Records 頁面可以編輯?

如果你的網域是「由主機商代管」而非「完整設定」,Nameserver 沒有指向 Cloudflare,這種情況要回到主機商的後台編輯 DNS,Cloudflare Dashboard 裡的設定不會生效。

如果你是透過電子豹申請的寄件者身份驗證,DNS 設定檔裡已經把六筆紀錄的 Type、Name、Value 都列好了。你只需要照著這篇教學,把對應的值貼進 Cloudflare 的 DNS Records 頁面,記得每一筆都設成 DNS only,就完成了。等到 Validate URL 顯示紀錄生效,電子豹後台的驗證狀態也會跟著更新。


延伸閱讀