如何设置邮件服务器?

我希望任何向test@example.com发送电子邮件的人都可以获得邮件,因此我可以使用像Ruby这样的服务器端脚本语言来解析电子邮件的内容。

Ruby解决方案会很棒。

如果您从未设置过smtp服务器,并且您不愿意深入了解并学到很多东西,那么您可能需要查看一些提供此类function的服务。 我从未使用过任何这些,不确定质量或定价方面。

  • cloudmailin
  • mailgun
  • 调度
  • 邮戳

设置和配置邮件服务器的替代方法是使用诸如sendgrid或邮戳之类的服务。 您将DNS mx记录指向它们,它们会将入站消息转换为JSON文档并将它们发布给您

您可以在服务器上安装qmail,并将其配置为将传入邮件的管道传输到您的域,直到您的ruby脚本的STDIN。

如果您尚未这样做,请为您的域创建一个指向您的邮件服务器IP的MX记录。 然后,以root用户身份登录服务器,然后按照http://lifewithqmail.org/lwq.html#installation中的说明安装qmail。

配置qmail以接受*@yourdomain.tld(catchall)的传入邮件,并将所有传入邮件转发到/home/yourhomedirectory/yourscript.sc中的脚本:

add the following line to /var/qmail/control/me: hostname.yourdomain.tld add the following line to /var/qmail/control/defaultdomain: yourdomain.tld addd the following line to /var/qmail/control/virtualdomains yourdomain.tld:yourusername add the following line to /var/qmail/control/rcphosts: yourdomain.tld restart qmail: qmailctl stop qmailctl stat 

注销服务器,然后再次以用户名重新登录。 创建一个文件/home/yourusername/.qmail-default,包含以下行:| /home/yourhomedirectory/yourscript.sc

创建/home/yourhomedirectory/yourscript.sc脚本来处理传入的邮件。 为所有用户启用脚本的可执行权限:chmod a + x /home/yourhomedirectory/yourscript.sc

这里的所有都是它的。 您的域的传入邮件将通过qmail传送到此脚本的STDIN。

安装并配置SMTP服务器。 通常可以非常广泛地配置SMTP服务器,如何处理应该在本地传递的邮件。 一个这样的选择是通过调用ruby脚本在本地传递邮件。 流行的SMTP服务器是postfix,courier和qmail。 有关如何设置邮件服务器的详细信息取决于您使用的是哪一个。