我目前有一台机器设置为使用两个域。主域名使用标准 Unix 用户交付,第二个域完全是虚拟的(使用virtual_alias_domains
和virtual_alias_maps
),第二个域仅转发邮件。
但是,当邮件被转发时,它仍然似乎由主域的主机传递(可能由 设定myorigin
)。是否可以实现当邮件被转发到虚拟域时,它似乎也是由它传递的?该域位于另一个 IP 上,我想使用它以便邮件保持一致。
谢谢。
答案1
伪造主机名通常不是一个好主意。如果客户端名称与电子邮件发件人域名不同,您会有什么问题吗?
通常情况下,让主机名位于主 IP 地址/DNS 名称是完全没问题的。如果您真正了解你要做什么,那就继续读下去。否则就让它保持原样吧。
要使用两个不同的发送主机名实现您的目标,您必须使用两个不同的 smtp 守护程序发送邮件。我假设您有两个 IP 地址和相应的 DNS 名称,并且它们已正确配置。
因此,首先在 master.cf 中创建一个新的 smtp 守护进程。然后,您应该在 master.cf 中添加类似以下内容:
smtp unix - - - - - smtp
smtp2 unix - - - - - smtp
-o myhostname=other.example.com
-o smtp_helo_name=other.example.com
-o smtp_bind_address=1.2.3.4
现在你只需要告诉,从 other.example.com 发送的所有邮件都应该使用 smtp2 守护进程。因此,你在传输表中写入:
other.example.com smtp2:
就这些了。