Exim:發給 root 的電子郵件會忽略 /etc/aliases 和 /root/.forward - 始終使用限定域名
dpkg-reconfigure exim4-config
要求域名來“限定”本地使用者的電子郵件地址,例如root
. 假設我已將此設置設置為qualified.example.com
- 這會導致所有發送到的電子郵件root
都轉到root@qualified.example.com
.相反,我希望將所有電子郵件
root
發送到,但出於其他原因example@gmail.com
,我希望將限定域名設置保留為。qualified.example.com
我已將此行添加到
/etc/aliases
root: example@gmail.com
我也投入
example@gmail.com
了/root/.forward
我已經執行
newaliases
並重新啟動exim
了,但無論我做什麼,mail toroot
都會繼續嘗試發送到root@qualified.example.com
,這甚至不存在。如何強制電子郵件
root
轉到example@gmail.com
?這是在 Ubuntu 伺服器 14.04 上
我的
/etc/exim4/update-exim4.conf.conf
樣子是這樣的:dc_eximconfig_configtype='internet' dc_other_hostnames='' dc_local_interfaces='127.0.0.1' dc_readhost='' dc_relay_domains='' dc_minimaldns='false' dc_relay_nets='' dc_smarthost='' CFILEMODE='644' dc_use_split_config='false' dc_hide_mailname='' dc_mailname_in_oh='true' dc_localdelivery='mail_spool'
當我執行時,
dpkg-reconfigure exim4-config
我回答了這樣的合格域問題:The 'mail name' is the domain name used to 'qualify' mail addresses without a domain name. This name will also be used by other programs. It should be the single, fully qualified domain name (FQDN). Thus, if a mail address on the local host is foo@example.org, the correct value for this option would be example.org. This name won't appear on From: lines of outgoing messages if rewriting is enabled. System mail name: qualified.example.com_________
儘管該設置沒有出現在
/etc/exim4/update-exim4.conf.conf
. 應該是?我注意到同樣的問題也發生在我的 Debian 伺服器上。我一定完全誤解了關於 Exim 和/或
/etc/aliases
文件的一些東西,因為他們似乎都忽略了我的/etc/aliases
root:example@gmail.com 條目,無論我嘗試什麼,他們總是將 root 的郵件發送到 root@qualified.example.com。一個簡單的轉發規則如此依賴於郵件伺服器的主要配置似乎也很奇怪?
您的主機不知道它應該是
qualified.example.com
. 本地傳遞root
被重寫為root@qualified.example.com
,它(錯誤地)被認為是在其他地方,因此嘗試了脫離主機傳遞。您需要完成
exim4
說明您的本地主機確實是qualified.example.com
. 然後,當它傳遞給 時root
,重寫,因為root@qualified.example.com
它會將其視為本地傳遞。然後它將檢查文件並按照您的指示/etc/aliases
執行脫離主機傳遞。example@gmail.com
假設您的主機的真實 DNS 名稱是
myhost.contoso.com
. 重新執行dpkg-reconfigure exim4-config
並包括以下設置:
- 系統郵件名稱:
myhost.contoso.com
- 其他目的地$$ local $$郵件被接受:
myhost : qualified.example.com
- 中繼郵件的域:{empty}
- 中繼郵件的機器:{empty}
然後執行
update-exim4.conf
並invoke-rc.d exim4 restart