Postfix:哪个选项适用于多个域和多个用户?

Postfix: which option for multiple domains and multiple users?

我们的服务器将具有三个域:example.net、example.org 和 example.nl。 对于每个,info@... 和 webmaster@... 应该工作(但可以共享/转发给一个)。对于 .org 和 .nl 域,这些将是唯一的用户。对于 .net 域,将有几十个用户。 .net 域将是网站和电子邮件的主要地址。

用户将没有 SSH 访问权限,没有 mysql 访问权限,没有 ftp 访问权限,只有邮箱。

Postfix 和 Dovecot 现在 运行。 Dovecot 目前正在查看邮箱的 unix 帐户,但这可能会改变。

在此页面上,我了解了 Postfix 的不同选项: http://www.postfix.org/VIRTUAL_README.html 但我还不清楚哪个对我们最好,优缺点是什么。

我缺乏知识来做出对我们来说最好的选择。 所以: * .net 域是网站和电子邮件的主要地址 * .net/.org/.nl 的 info@ 和 webmaster@ 应该有一个邮箱,但如果只有一个邮箱用于 info@ 和一个用于 webmaster@ 并且其他转发给那些 info@example.net和网站管理员@example.net * 用户只有name@example.net,我不关心name@example.org和name@example.nl能不能用

有什么建议吗?

谢谢!

在我开始描述您如何执行此操作之前,我必须警告您 - 错误配置您的 postfix 服务器相当容易,这可能导致它作为开放中继工作。确保在这样的网站上对其进行测试:http://mxtoolbox.com/diagnostic.aspx

另外我会推荐 Ralf Hildebrandt 和 Patric Koetter 的 "The book of postfix"。

现在-答案。

Postfix 提供称为 "virtual mailbox" 的功能。不深入细节 - 您可以在 main.cf 中使用 virtual_mailbox_domains 配置选项列出所有域;此选项与 virtual_mailbox_mapsvirtual_alias_mapsvirtual_alias_domains 一起使用。请参阅下面我的 main.cf 中的示例配置:

(...)
myhostname = main_domain.com
(...)
virtual_mailbox_domains = domain1.com, domain2.com
virtual_uid_maps = static:2000
virtual_gid_maps = static:2000
virtual_mailbox_base = /home/postfix/virtual_mailboxes/
virtual_mailbox_maps = hash:/etc/postfix/virtual_mailboxes/virtual_mailbox_recipients
virtual_alias_maps = hash:/etc/postfix/virtual_mailboxes/virtual_mailbox_aliases
virtual_alias_domains = hash:/etc/postfix/virtual_alias_domains

postfix 需要我的主机名,这应该是您的主域。

示例/etc/postfix/virtual_mailboxes/virtual_mailbox_recipients

account1@main_domain.com account1/
account2@domain1.com account2/
account3@domain2.com account3/

/home/postfix/virtual_mailboxes/{account1,account2,account3} 个目录必须存在。

然后您可以在 /etc/postfix/virtual_mailboxes/virtual_mailbox_aliases

中添加一些别名
forward_to_account1@domain1.com account1@main_domain.com
forward_to_account2@domain1.com account2@domain1.com
forward_to_account3@domain1.com account3@domain2.com
forward_to_everybody@domain1.com account1@main_domain.com,account2@domain1.com,account3@domain2.com

您将虚拟邮箱指向您的 dovecot 配置,如下所示:

mail_location = maildir:/home/postfix_vuser/virtual_mailboxes/%n

(来自 dovecot 文档 %n - user part in user@domain, same as %u if there's no domain