我有两个邮件服务器:A 和 B。
服务器 A 是该域的官方 MX 处理程序example.com
,配置为将整个转发@example.com
到[email protected]
。此部分运行正常。
但是,有时服务器 B 也会收到电子邮件[email protected]
,我希望它能够发送此类邮件直接地到[email protected]
。
为此,我/etc/mail/virtusertable
在服务器 B 上添加了与服务器 A 上相同的记录:
@example.com [email protected]
我重建了数据库并在 B 上重新启动了 sendmail,但我仍然看到它将电子邮件发送给example.com
A——而不是直接发送给雅虎。
就好像 MX 记录胜过virtusertable
——我该如何扭转这种局面并节省一跳?
答案1
虚拟用户可访问域
Sendmail 仅在向本地电子邮件域 ( $=w
) 或特殊虚拟域 ( $={VirtHost}
) 传送邮件时才咨询 virtusertable。
要以 root 身份列出两个列表中的域,请使用echo '$=w' |sendmail -bt
和echo '$={VirtHost}' |sendmail -bt
。默认情况下,本地电子邮件域列表是自动配置/自动填充的。
要添加example.com
,您可以在用于生成的文件$={VirtHost}
中使用以下行:sendmail.mc
sendmail.cf file
LOCAL_CONFIG
CP{VirtHost}example.com
divert(0)dnl comment: Turn off LOCAL_CONFIG