在 Amazon SES 中疑難排解 DKIM 問題 - Amazon Simple Email Service

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

在 Amazon SES 中疑難排解 DKIM 問題

本節列出您在 Amazon SES 中設定 DKIM 驗證時可能會遇到的一些問題。如果您嘗試設定 DKIM 卻遇到問題,請檢閱下方的可能原因和解決方案。

您成功設定 DKIM,但您的訊息未經過 DKIM 簽署

如果您使用 Easy DKIMBYODKIM 來設定網域的 DKIM,但您傳送的郵件未經過 DKIM 簽署,請執行下列動作:

  • 確定已為適用的身分啟用 DKIM。若要在 Amazon SES 主控台中為身分啟用 DKIM,請在身分清單中選擇電子郵件網域。在網域的詳細資訊頁面上,展開 DKIM,然後選擇 Enable (啟用) 以啟用 DKIM。

  • 確定您不是從相同網域上經過驗證的電子郵件地址傳送。如果您設定網域的 DKIM,則您從該網域傳送的所有訊息都會經過 DKIM 簽署,除了您個別驗證的電子郵件地址以外。個別驗證的電子郵件地址將使用其他設定。例如,如果您為網域 example.com 設定 DKIM,而且您個別驗證了電子郵件地址 mary@example.com (但並未設定該地址的 DKIM),則您從 mary@example.com 傳送的電子郵件會直接傳送,而不經過 DKIM 驗證。您可以從帳戶的身分清單中刪除電子郵件地址身分,以解決此問題。

  • 如果您在多個 AWS 區域中使用相同身分,您必須個別為每個區域設定 DKIM。同樣地,如果您使用相同的網域與多個 AWS 帳戶,您必須為每個帳戶設定 DKIM。如果您移除特定區域或帳戶的必要 DNS 記錄,Amazon SES 只會停用該區域或帳戶內的 DKIM 簽署。如果停用 DKIM 簽署,Amazon SES 會透過電子郵件傳送通知給您。

您在 Amazon SES 主控台中的網域 DKIM 詳細資訊顯示DKIM:正在等待寄件者驗證... DKIM 驗證狀態:等待驗證。

如果您完成「Easy DKIM」或「BYODKIM - 使用自有 DKIM」中的程序來設定網域的 DKIM,但 Amazon SES 主控台仍指出 DKIM 驗證待處理,請執行下列動作:

  • 等待最多 72 小時。在極少數情況下,可能需要一些時間 Amazon SES 才能看見 DNS 記錄。

  • 確認 CNAME 記錄 (針對 Easy DKIM) 或 TXT 記錄 (針對 BYODKIM) 使用正確的名稱。部分 DNS 提供者會自動將網域名稱附加至您建立的記錄。例如,如果您建立名稱為 example._domainkey.example.com 的記錄,則 DNS 提供者可能會將您的網域名稱新增到此字串的結尾,產生 example._domainkey.example.com.example.com。如需詳細資訊,請參閱您的 DNS 提供者的文件。

您收到來自 Amazon SES 的一封電子郵件,指出您的 DKIM 設定已被 (或將被) 撤銷。

這表示 Amazon SES 不能再於您的 DNS 伺服器上找到需要的 CNAME 記錄 (如果您使用 Easy DKIM) 或需要的 TXT 記錄 (如果使用 BYODKIM) 記錄。通知電子郵件將通知您,在 DKIM 設定狀態遭撤銷且 DKIM 簽署遭停用前,您還有多長時間必須重新發佈 DNS 記錄。如果您的 DKIM 設定被撤銷,您必須從頭開始 DKIM 設定程序。

嘗試設定 BYODKIM 時,DKIM 驗證程序會失敗。

確定您的私密金鑰使用正確的格式。私密金鑰必須採用 PKCS #1 或 PKCS #8 格式,並使用 1024 或 2048 位元 RSA 加密。此外,私密金鑰必須是 base64 編碼。

設定 BYODKIM 時,您會在嘗試指定網域的公開金鑰時收到 BadRequestException 錯誤。

如果您收到 BadRequestException 錯誤,請執行下列動作:

  • 確定您為公開金鑰指定的選取器包含至少 1 個且小於或等於 63 個英數字元。選取器不能包含句點或其他符號或標點符號。

  • 確定您已從公開金鑰中移除頁首和頁尾行,並且已從公開金鑰中移除所有換行符號。

使用 Easy DKIM 時,DNS 伺服器會成功傳回 Amazon SES DKIM CNAME 記錄,但針對網域驗證 TXT 記錄傳回 SERVFAIL

您的 DNS 供應商可能無法重新導向 CNAME 記錄。Amazon SES 和 ISP 會查詢 TXT 記錄。。為了符合 DKIM 規格,您的 DNS 伺服器必須能夠回應 TXT 記錄查詢以及 CNAME 記錄查詢。如果您的 DNS 供應商無法回應 TXT 記錄查詢,另一種方法是使用 Route 53 做為您的 DNS 託管供應商。

您的電子郵件包含兩個 DKIM 簽章

包含 d=amazonses.com 的額外 DKIM 簽章,會由 Amazon SES 自動新增。您可以忽略。