在 Postfix 中混合虚拟转发和虚拟邮箱

在 Postfix 中混合虚拟转发和虚拟邮箱

我正在设置 Postfix 服务器。我尝试做的第一件事是将邮件发送到虚拟邮箱:

主配置文件

[..]
virtual_mailbox_domains = /etc/postfix/virtual_domains
virtual_mailbox_base = /var/spool/mail
virtual_mailbox_maps = hash:/etc/postfix/virtual_mailbox

虚拟域

mydomain.com

虚拟邮箱

[email protected] mydomain.com/jasper

这有效。或者,我可以在虚拟域上使用转发:

主配置文件

[..]
virtual_alias_domains = /etc/postfix/virtual_domains
virtual_alias_maps = hash:/etc/postfix/virtual_forwards

虚拟域

mydomain.com

虚拟转发

[email protected] [email protected]

这也行得通。但是,如果我尝试同时使用两者,我的日志会显示一条警告,提示我不应该在两者中使用相同的域,virtual_mailbox_domains并且virtual_alias_domains两者中只有一个可以工作。

但这就是我想要实现的,转发虚拟域中某些帐户的邮件,并存储同一虚拟域中其他帐户的邮件。有没有办法用 postfix 来实现这个功能?

答案1

在我发布这个问题后,另一个可能解决这个问题的想法浮现在我的脑海里。它不是精确的解决方案,但它还是引导我找到了解决方案。其实很简单:你只需要在 中指定域,virtual_mailbox_domains而不是在 中virtual_alias_domains,它就可以正常工作。

所以:

主配置文件

[..]
virtual_mailbox_domains = /etc/postfix/virtual_domains
virtual_mailbox_base = /var/spool/mail
virtual_mailbox_maps = hash:/etc/postfix/virtual_mailbox
virtual_alias_maps = hash:/etc/postfix/virtual_forwards

虚拟域

mydomain.com

虚拟邮箱

[email protected] mydomain.com/jasper

虚拟转发

[email protected] [email protected]

现在两名前锋邮箱可以正常工作。(当然,virtual_alias_maps只要您不添加该域名(我假设),您仍然可以指定,但我用不着它,所以我将其完全删除。)

答案2

是的,对于我来说,docker-mailserver 运行得很好。

如果您想重新路由某封电子邮件,请在虚拟设置文件中输入覆盖。./CONTAINER/docker-data/dms/config/postfix-virtual.cf

[电子邮件保护] [电子邮件保护]

如果删除该行,电子邮件将在本地发送。

相关内容