狀況:
透過sendmail寄信給客戶發生錯誤,客戶的domain會被改掉。
寄給user@xxx.com變成user@d29xxxuh8.cloudfront.net
原因:
用Google搜尋,看起來sendmail會優先用CNAME寄信,所以造成寄錯。
處理方法:
修改/etc/mail/sendmail.mc
dnl #add by Chdu 2024.12.02 (不要用CNAME, 必須在MAILER前面)
define(`confBIND_OPTS', `+WorkAroundBrokenAAAA')
define(`confPRIVACY_FLAGS', `authwarnings,needmailhelo,goaway')
FEATURE(`nocanonify')
sendmail.mc修改後,執行make產生sendmail.cf,再執行 systemctl restart sendmail
另外通知客戶的MIS調整DNS設定,避免在domain設定CNAME。
測試方法:
用 [root@mail_server]# echo "Test email body" | sendmail -v user@xxx.com 可以看到收件人domain是否被改變。