Postfix:如何使用虚拟 Dovecot 邮箱配置 Postfix?

Postfix:如何使用虚拟 Dovecot 邮箱配置 Postfix?

我已经为两个域配置了 Postfix 邮件服务器:domain1.com 和 domain2.com。

在我的配置中,domain1 既有虚拟用户,也有 Maildirs 和别名,用于将邮件转发给本地用户(例如 root、webmaster)和一些小型邮件列表。它还具有一些到非本地域的虚拟映射。

另一方面,域 2 只有虚拟别名映射,主要是到域 1 中的相应“用户”(例如,发送到[电子邮件保护]应转发至[电子邮件保护])。

我的问题是,目前 Postfix 甚至接受那些用户的邮件系统中存在。发送给现有用户的邮件和 /etc/aliases 工作正常。Postfix 文档指出,永远不应在 mydestination 和 virtual_mailbox_maps 中指定同一个域,但如果我将 mydestination 指定为空白,则 postfix 会根据 virtual_mailbox_maps 验证收件人,但会拒绝 domain1.com 本地别名的邮件。

/etc/postfix/main.cf:

myhostname = domain1.com
mydomain = domain1.com
mydestinations = $myhostname, localhost.$mydomain, localhost

virtual_mailbox_domains = domain1.com
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_mailbox_base = /home/vmail/domains

virtual_alias_domains = domain2.com
virtual_alias_maps = hash:/etc/postfix/virtual

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

virtual_transport = dovecot

在/etc/postfix/虚拟:

domain1.com right-hand-content-does-not-matter
firstname.lastname user1
[more aliases..]

domain2.com right-hand-content-does-not-matter
@domain2.com @domain1.com

在/etc/postfix/vmailbox中:

[email protected] user1/Maildir
[email protected] user2/Maildir

在 /etc/别名中:

root: :include:/etc/postfix/aliases/root
webmaster: :include:/etc/postfix/aliases/webmaster
[etc..]

这种方法正确吗?还是还有其他方法可以使用 Dovecot(虚拟)Maildirs 和 Postfix 别名配置 Postfix?

答案1

是的,您不能同时在mydestination和中拥有域名virtual_mailbox_maps。为了解决这个问题,您需要mydestinationmain.cf

mydestination = localhost.$mydomain, localhost

以及/etc/postfix/virtual

[email protected]   root@localhost
[email protected]  webmaster@localhost

使用此设置,发送电子邮件至[电子邮件保护]将被重定向到 root@localhost。由于 localhost 列在,mydestination因此 postfix 将在/etc/aliases

相关内容