我查看了我当地大学的大型邮件服务器,该服务器带有 Postfix/Dovecot。我正在尝试存档相同的内容,并希望获得有关如何自行构建此内容的任何意见或搜索查询。
- mi(邮件收发)上有一个 mx 记录,研究发现,有两个使用 dovecot 的邮件收发服务器(mx1/mx2)。它们都在并行工作。(这里我不知道如何选择最佳服务器,没有具有其他优先级的辅助 MX 记录)同样适用于 Mail-Out 服务器(其中有一些),软件会选择最佳服务器。
- 大约有 8 个邮箱服务器 (mbx1....),数据保存在其中一个服务器上。如果我设置一个域 (fe mail-in.xxxx),我该如何设置 Dovecot 自动选择正确的服务器。
- 服务器似乎使用某种技术自动化来(重新)分配账户。这是已经存在的功能还是自定义代码?
我期待找到一些可以用于实现此类设置的关键字。提前致谢,
卢卡斯
答案1
我会研究以下内容
- 使用 DNS 在多个服务器之间分配传入的 SMTP 连接。这可以通过为出站电子邮件设置多个 A 记录 (
smtp.example.net
) 以及为入站电子邮件设置多个具有相同优先级的 MX 记录来实现。(如果所有 MX 记录都具有相同的优先级,则入站连接应在服务器之间相当均匀地分配。) - 让您的前端入站服务器仅将电子邮件转发到
[email protected]
,其中X
是分配给用户的存储服务器的 ID/号码。 - 在存储服务器上运行一个非常基本的 postfix/dovecot 设置
- 使用类似 nginx 的东西作为 IMAP 的负载均衡器/代理(也可能用于出站 SMTP)。它还能够验证 IMAP/SMTP 连接并根据身份验证响应代理到特定的后端服务器。例如,您可以让多个 nginx 服务器终止并验证 IMAP 连接,然后使用一个相当简单的 Web 应用程序代理到正确的服务器,该应用程序向 nginx 回复正确的存储服务器。https://docs.nginx.com/nginx/admin-guide/mail-proxy/mail-proxy/#mail_auth
- 你要么希望所有东西都使用 SQL 身份验证,这样所有服务器都可以与中央 SQL 服务器(或一堆只读镜像)进行通信,要么使用一些自定义代码来在整个服务器上部署配置/用户
我认为没有任何东西可以通过 dovecot/postfix 实现这一“开箱即用”的功能,但这主要取决于配置。