我对一般的邮件服务器真的不熟悉,所以请原谅我的无知。
我需要能够通过基于 Spring 的 Web 应用程序管理邮件服务器。通过管理,我的意思是为新用户创建邮件帐户,侦听来自这些用户的传入更新,删除帐户,何时删除用户帐户等等等等。
我假设邮件服务器(至少是好的服务器)提供某种服务 API(SOAP、REST,没关系),应用程序可以通过这些 API 进行挂钩并进行更改。但是,我真的不熟悉那里有哪些好的开源服务器,以及它们提供的选项。
如果有人可以提出解决方案,我会很高兴。
我对一般的邮件服务器真的不熟悉,所以请原谅我的无知。
我需要能够通过基于 Spring 的 Web 应用程序管理邮件服务器。通过管理,我的意思是为新用户创建邮件帐户,侦听来自这些用户的传入更新,删除帐户,何时删除用户帐户等等等等。
我假设邮件服务器(至少是好的服务器)提供某种服务 API(SOAP、REST,没关系),应用程序可以通过这些 API 进行挂钩并进行更改。但是,我真的不熟悉那里有哪些好的开源服务器,以及它们提供的选项。
如果有人可以提出解决方案,我会很高兴。
一种可能的解决方案是使用带有通用数据库插件的软件。您的 Web 应用程序不与邮件服务器交互,而只是填充 mysql 数据库中的用户表。在最简单的情况下,该表有一个用户名字段和一个密码字段。在大多数实际设置中,需要一些附加字段,例如“用户已禁用”或“用户可以连接 IMAP”、“用户 homedir/maildir 的位置”……如果您的用户也可以创建新域,您还需要一张桌子。
然后,您需要带有数据库后端的邮件服务器软件。
对于托管邮箱,您可以使用dovecot IMAP/POP3 服务器。它支持所有花哨的东西,如用户配额、邮箱自动创建等。在这里,您将找到有关如何使用数据库后端配置 dovecot 的文档: http ://wiki2.dovecot.org/AuthDatabase/SQL
要通过 stmp 实际接收邮件,您还需要一个 MTA 软件。在这里,一个不错的选择是postfix。如果您的用户可以创建新域,您需要添加 mysql 配置,告诉 postfix 它可以接受哪些域的邮件。由于我不完全了解您的域要求,因此我将向您指出一般的 postfix 虚拟域托管方法: http ://www.postfix.org/VIRTUAL_README.html
最后,如果您的用户也应该能够发送邮件,您需要在 postfix 中配置 SASL。如果您已经配置了 dovecot,这非常简单。它归结为告诉后缀“嘿,我已经在 dovecot 中配置了用户身份验证,我不想再这样做了,只需与 dovecot 交谈并让它完成工作”。文档在这里:http ://www.postfix.org/SASL_README.html#server_dovecot