Postfix 转发“sendmail -bv root”

Postfix 转发“sendmail -bv root”

我已经设置了带有中继和一些转发文件的 postfix(Ubuntu 12.04 服务器)。root 有一个 .forward 文件,其中只包含 user@fqdn。然后 user 有一个 .forward 文件[电子邮件保护]

在几乎所有情况下,发送邮件都是有效的,除了......

如果我调用“sendmail -bv root”或“sendmail -bv user”,我既没有在预期的外部收件箱中收到电子邮件,也没有在本地收件箱中收到电子邮件。它似乎只是进入了以太。

如果我删除 .forward 文件,我会在本地收件箱中收到结果。

关于如何使转发功能正常工作,您有什么想法吗?

我在关注时偶然发现了这个问题首先介绍如何让转发功能正常工作。对于那个人来说,它似乎很管用,除了他的 gmail 特定设置外,我看不出有什么不同。

更新:

我已经删除了 .forward 文件,并按照下面的注释改用别名。我运行了“sudo newaliases”并重新启动了 postfix,发送给 root 和用户的邮件都被转发到我的外部地址。但是,我仍然没有收到邮件投递状态报告。mail.log 显示它被发送到我的外部地址(添加到队列中),然后从队列中删除。所以,看起来我的外部 SMTP 服务器不喜欢某些东西。也许是“orig_to”?

答案1

不要对 root 使用 .forward 文件,因为这本身就有一系列问题,而应该按照所有电子邮件标准和 postfix 作者的建议去做:将地址别名root为真实用户或邮箱。

/etc/aliases:
    root:  [email protected]

这可确保邮箱权限和根权限不是问题的一部分。

编辑:阅读您所包含的操作方法链接实际上可以解释很多事情......

该页面的作者指出:

  1. 需要设置 Postfix 来处理和识别外部地址。
  2. 作为一项安全措施,root 用户不能向外部地址发送邮件,因此我们需要先将 root 邮件转发给另一个用户,然后再将其发送到外部地址。

第一个是开箱即用的,这让我很怀疑作者在写作之前是如何破坏他的 postfix 安装的,而第二个则完全是胡说八道。

即使存在某种安全措施阻止根别名指向场外(实际上并没有),您需要做的就是将根别名设置为虚拟用户,并将该虚拟用户别名设置为场外地址;postfix 可以正确解析任意级别的别名引用。

相关内容