我可以安装一个简单的邮件服务器吗?

我有一个桌面安装的ubuntu,而不是服务器。 但我正在运行一个localhost LAMP堆栈进行开发。 我可以安装一个简单的邮件服务器,以便PHP的sendmail有效吗?

理想情况下,它将具有很少的选项和最小配置,并且优选地是GUI而不是CL接口。

编辑添加 – 我是否使用Local Only配置来测试php mail()? 在此处输入图像描述

我安装过的最简单的是带有dovecot的postfix。 有一个dovecot-postfix包,但它看起来像Ubuntu服务器团队已将其打包为邮件堆栈交付:

Description: mail server delivery agent stack provided by Ubuntu server team Ubuntu's mail stack provides fully operational delivery with safe defaults and additional options. Out of the box it supports IMAP, POP3 and SMTP services with SASL authentication and Maildir as default storage engine. 

在软件中心看,我看到dovecot-postfix作为meta-pacakge存在(但我不知道它是否会被称为从现在开始的一两个版本)。 但这就是我建议的 – 它简单明了而且安全。

从我10.10桌面上的命令行,我通过apt-get安装了这个:

sudo apt-get install dovecot-postfix

如果你愿意,可以试一试,如果你有疑问,可以开始新的post。


这是一个古老的(2009) Ubuntu Server博客文章 ,提供了有关do​​vecot-postfix配置的一些细节。

我正在尝试找到有关以Ubuntu为中心的邮件服务器项目的当前状态的更多信息。 现在,我找不到比2010年5月的维基帖更多关于使反垃圾邮件/病毒集成更容易的内容。

只需要postfix

对于设置,只需使用默认值。 互联网网站。 当你到达它时,有一个部分用于设置允许哪些计算机通过服务器中继邮件。 默认值为127.0.0.1(措辞稍微冗长),这很好。 这意味着即使另一台计算机可以连接到postfix, postfix不会允许它将邮件发送到某个地方但postfix接受为“本地”域。

但良好的网络安全性不会受到影响。 阻止传入连接和/或防火墙的路由器(请参阅ufw )将阻止任何其他人联系postfix

如果需要重新配置,只需运行:

 sudo dpkg-reconfigure postfix 

如果您只想在本地调试,可以按照stackoverflow中提供的方法进行操作 。 php.ini中的单行,没有其他包。 将您的外发邮件写入可以使用邮件客户端打开的文件,以防您想要调试html邮件。

 sendmail_path = 'tee /tmp/mylocal.mail > /dev/null' 

那么,邮件服务器的GUI或CL接口并不是一个重要的问题,因为你无论如何都不需要用于邮件服务器的UI,只能用于初始配置(好的,也许有时会有像relayhost这样的配置更改等) ,但是已经正常工作的服务器的情况非常罕见。 所以我认为这不是一个重要方面。 我可以建议使用postfix,只需安装(apt-get install postfix),并在安装时询问最基本的配置设置。 然后它将与PHP的mail()等一起使用,无需进一步配置或任何UI的大量/日常使用(让我们是GUI或CLI,虽然我不知道关于后缀配置的GUI,也许是一些通用的系统配置解决方案像webmin一样,无论如何都会为此工作)。 要小心,不要生产开放式继电器系统:)

您不需要邮件服务器来发送电子邮件,只需要接收电子邮件。 要发送电子邮件(使用sendmail ),请选择Internet with smarthost选项的Internet with smarthost

MailCatcher运行一个超级简单的SMTP服务器,它捕获发送给它的任何消息以显示在Web界面中。 运行mailcatcher,将您喜欢的应用程序设置为smtp://127.0.0.1:1025而不是默认的SMTP服务器,然后查看http://127.0.0.1:1080以查看到目前为止已到达的邮件。

https://mailcatcher.me/