所以,我有两个服务器,我分别称之为内部和外部。
当我在内部 postfix 中发送电子邮件时,它会被外部中继,外部中继实际上负责发送电子邮件。正常中继,效果很好:
sendmail on External -> go to destination
sendmail on Internal -> go to External -> go to destination
我有一个别名文件,它定义了两个服务器上的等价关系的小列表。我想要别名的主要电子邮件是“root”。这在一定程度上是可行的,也就是说,我收到了从内部或外部发送给 root 用户的所有电子邮件。
外部的别名是:
root: [email protected], [email protected]
内部的别名是:
root: [email protected]
然而,用户 2 会从内部和外部收到根电子邮件。
有没有办法将内部发送的根电子邮件转发给[电子邮件保护]并且不同时使用 user1 &[电子邮件保护]?
我尝试了 .forward 功能,但也没有帮助。[电子邮件保护]仍按原样转发,并因此分发给外部服务器的所有管理器(尽管它们不应该被分发)。
这是一封不需要的电子邮件的示例,其中包含“已接收”、“发件人”和“收件人”字段:
Received: from halk.m2osw.com (162-226-130-121.lightspeed.frokca.sbcglobal.net [162.226.130.121])
by mail.m2osw.com (Postfix) with ESMTP id 50BD6CE2253
for <[email protected]>; Tue, 1 Oct 2013 08:18:27 -0700 (PDT)
Received: by halk.m2osw.com (Postfix, from userid 0)
id 0443B4C009F; Tue, 1 Oct 2013 08:18:26 -0700 (PDT)
From: Anacron <[email protected]>
To: [email protected]
这里有一些内部的 main.cf 文件(即 halk.m2osw.com):
myhostname = halk.m2osw.com
mydestination = halk, halk.m2osw.com, localhost.m2osw.com, localhost
masquerade_domains = m2osw.com
relay_domains = halk.m2osw.com
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases
答案1
您的别名设置正确,但主机设置不正确。
正如 84104 所暗示的,问题出在你设置后缀/转发的方式上,无论是在内部的或者外部的主办方,但更有可能——如果不是很高——内部的您应该首先调查为什么 root 帐户(或 postmaster)外部的收到你发送的邮件内部的。
问题可能很简单,就像忘记newaliases
了内部的,或者像完全错误的设置一样复杂。使用当前可用的信息不可能解决您的问题,更不用说以问答的形式。请仔细、彻底地查看错误接收的电子邮件的标题,以追踪它去了哪里以及原因。
PS:我已经在我工作过的地方实现了你想要的部分功能,所以是可能的。
答案2
尝试摆脱 masquerade_domains。它会将 halk.m2osw.com 重写为 m2osw.com,而 m2osw.com 不在 mydestination 中,因此它会将其转发到外部服务器。