我目前運行一個網站,託管在 VPS 上。該軟體是Plesk。
我已經透過 DNS 設定設定了 SPF 記錄和 DMARC 記錄。我對如何設定 DKIM 記錄有點困惑。
到目前為止,我已經研究了:
設定與工具 > 郵件設定 > 啟動的 DKIM
除了在範圍內啟動 DKIM 伺服器之外,我還在網域層級啟用了它。
我已確定 DKIM 私鑰儲存在:
/etc/domainkeys/example.com
我現在明白我需要透過 DNS 設定輸入 DKIM DNS 記錄。瀏覽網頁後,我讀到公共記錄應儲存在/etc/opendkim/keys/example.com/mail.txt (or default.txt)
我已閱讀該條目應該類似於:
v=DKIM1; k=rsa; p=GHDSGGH7567KGFDBUUasd4655676vbhgvASDFsdfgh6456yh4565RFCpy4zMNWUbL6JM5XIyjBy3bUnANI5axeb/Lw/GBjUoSFLEiO80Tt8m3A5YrBKcodRQQURYiW6/YtElhLupHyfcxQhfNLU4z9JUOJKPjcpMZCj0Xv873QgVOl+7U605JdBHSPOx4ybBZwDq68cw9YFYRPmEwIDAQAB
問題是,我找不到這樣的文件。我是否缺少進一步的配置要求,或者公鑰可以儲存在其他地方嗎?
答案1
在 Plesk 伺服器上使用 DKIM 有兩種方法。
如果您只想將 DKIM 用於網路郵件和使用 POP/IMAP 傳送的郵件,則在 Plesk 中的網域層級啟動 DKIM 就足夠了。
(看https://support.plesk.com/hc/en-us/articles/115002519933-如何啟用-DKIM-support-for-a-domain)
DNS 記錄應由 Plesk 自動新增。您可以透過發送郵件至以下地址來驗證 DKIM 是否有效https://dkimvalidator.com/使用網路郵件或您的郵件用戶端。但是,如果您也想從伺服器本身(例如網站上的聯絡表單)發送 DKIM 簽署的郵件,則需要編輯全域伺服器設定以透過 DKIM 傳遞所有郵件。
雖然有多種方法可以做到這一點,但安裝 openDKIM 是最簡單的。在我的工作中,我們使用設定管理自動執行此操作,但本指南應該可以幫助您:https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-dkim-with-postfix-on-debian-wheezy
(TL;DR:安裝 OpenDKIM,產生金鑰並編輯您的後綴以添加以下 milter:
smtpd_milters = inet:127.0.0.1:8891, inet:127.0.0.1:12768
,
8891 用於 openDKIM)
/etc/opendkim/keys/example.com/<name>.{txt,private}
您會發現.txt 檔案內容下的按鍵應放置在 TXT 記錄中*姓名*._domainkey.example.com。從網站或伺服器再次測試。
(從命令列:) mail -s 'DKIM test subject' -r '[email protected]' [email protected] < /dev/null
不要忘記仔細檢查您的 DMARC 記錄,否則您可能會遺失外寄郵件。 (例如https://dmarcian.com/dmarc-inspector/)也許從 開始p=none
。