OpenSMTPD:每个本地邮件发送到特定目的地

OpenSMTPD:每个本地邮件发送到特定目的地

我目前使用 Exim 来满足以下需求,效果很好。但升级时太麻烦了,因为这是一种黑客行为,需要修改我们不应该修改的文件。
我尝试使用 OpenSMTPD,因为它似乎很适合我的需要,但我陷入困境。任何其他软件都可以,只要它位于 Debian 存储库中即可。

需求:

  • MTA 仅监听 127.0.0.1(简单)
  • 它的目的是收集每一个来自本地计算机(来自 cron 或其他)的邮件,并将它们发送到特定的外部的接受者 ([电子邮件受保护]) 覆盖原始收件人
  • 如果出现网络故障,邮件会稍后发送,这是不可能的esmtp例如
  • 创建/销毁用户时无需维护别名文件
  • 奖励:如果外部收件人已存在(或多个),则将邮件发送给该收件人并发送至[电子邮件受保护](即将任何本地收件人替换为[电子邮件受保护]

使用 OpenSMTPD,我测试了在别名文件中使用通配符,但这不起作用。
也许我需要修改/etc/smtpd.conf,但我不知道如何修改。

答案1

经过一番挖掘后,我没有看到genericstable支持;smtpd.conf尝试在中继上重写表导致aliases/virtual may not be used with a relay rule错误。您可以说,但这似乎不会重写邮件中的地址,而只会重写 SMTP 会话中的发件人。accept from local for local relay as "[email protected]"

或许看看Postfix 根电子邮件仅作为密件抄送转发到外部地址从 postfix 执行此操作。

相关内容