在Ubuntu上配置DKIM(DomainKeys Identified Mail)簽名可以幫助提高郵件的安全性和可信度。以下是一個基本的步驟指南,幫助你在Ubuntu上配置DKIM簽名:
首先,你需要安裝opendkim和opendkim-tools。你可以使用以下命令來安裝它們:
sudo apt update
sudo apt install opendkim opendkim-tools
使用opendkim-genkey命令生成DKIM密鑰對。你需要為你的域名生成一個私鑰和一個公鑰。
sudo opendkim-genkey -t -s mail -d yourdomain.com
-t 表示生成測試密鑰。-s 指定選擇器的名稱,通常是mail。-d 指定你的域名。執行上述命令后,你會在/etc/opendkim/keys/yourdomain.com/mail.private中找到私鑰,在/etc/opendkim/keys/yourdomain.com/mail.txt中找到公鑰。
編輯OpenDKIM的主配置文件/etc/opendkim.conf,添加或修改以下內容:
Domain yourdomain.com
Selector mail
PrivateKey /etc/opendkim/keys/yourdomain.com/mail.private
Socket inet:12301@localhost
Domain 是你的域名。Selector 是你在生成密鑰時指定的選擇器。PrivateKey 是你的私鑰文件路徑。Socket 是OpenDKIM監聽的套接字地址和端口。你需要為你的域名添加一個TXT記錄,以便郵件接收方可以驗證DKIM簽名。TXT記錄的內容應該是你的公鑰文件中的內容,去掉v=DKIM1; k=rsa; p=前綴。
例如,如果你的公鑰文件內容如下:
v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC8kGa1pSjbSYZVebtTRBLxBz5H4I
...
那么你的TXT記錄應該是:
v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC8kGa1pSjbSYZVebtTRBLxBz5H4I
將這個TXT記錄添加到你的DNS管理界面中,記錄名通常是_domainkey.mail.yourdomain.com。
啟動OpenDKIM服務并設置為開機自啟動:
sudo systemctl start opendkim
sudo systemctl enable opendkim
你可以使用opendkim-testkey命令來驗證你的DKIM配置是否正確:
sudo opendkim-testkey -d yourdomain.com -s mail
如果一切配置正確,你應該會看到類似以下的輸出:
yourdomain.com mail._domainkey IN TXT "v=DKIM1; k=rsa; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC8kGa1pSjbSYZVebtTRBLxBz5H4I"
如果你使用的是Postfix作為郵件服務器,你需要配置Postfix以使用OpenDKIM進行簽名。編輯Postfix的主配置文件/etc/postfix/main.cf,添加以下內容:
milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:localhost:12301
non_smtpd_milters = inet:localhost:12301
然后重啟Postfix服務:
sudo systemctl restart postfix
完成以上步驟后,你的Ubuntu郵件服務器應該已經成功配置了DKIM簽名。