安装邮件服务器的简单方法

我正在寻找一种在我的Ubuntu服务器上安装邮件服务器的简单方法。我希望能够通过Webmail(例如roundcube)收发电子邮件。
我有一个域名。Web服务器已经正常工作,没有任何问题。
当我在谷歌上搜索“在Ubuntu上安装邮件服务器的简单方法”时,我会看到一些博客,里面列出了成百上千个安装邮件服务器的步骤:
  1. 在Ubuntu 12.04上安装邮件服务器:Postfix,Dovecot,MySQL
  2. 在Ubuntu上创建邮件服务器
  3. Postfix
但是,如果我按照这些教程进行操作,我肯定会犯错,并且会非常耗时。大多数步骤看起来都很容易自动化。
我尝试了几种安装方法:

sudo apt-get install dovecot-postfix

sudo tasksel install mail-server

不过从那之后,我不知道如何添加电子邮件帐户,并测试它是否真的有效。

你知道是否有一种自动安装邮件服务器的方法吗?

编辑 - 新答案

Mail-In-A-Box

一个非常有趣的开源项目,将ubuntu机器转变为邮件服务器:

https://github.com/JoshData/mailinabox


3在我看来,你似乎想要运行一个与其他服务器进行交互的公开访问服务,但又不愿意花时间去学习它,甚至更不愿意去管理它。当它被滥用时,你会怎么办?如果你对其操作的基本细节一无所知,你将如何进行故障排除?这是应该留给了解自己工作的*nix管理员来处理的事情之一。 - Marcin Kaminski
6@MartinOrda,我理解你的观点。然而,对于一个网络服务器来说,你也可以说同样的话。它是公开可用的,可能会被滥用。不过,我可以通过执行“sudo apt-get install lamp^”命令,找到我的IP地址,将网页移动到“/var/www/”目录下,并从任何地方访问它。这只需要三个简单的步骤。此外,通常情况下,默认选择最安全的选项。对于邮件服务器来说,我认为我在链接中提供的设置步骤中有90%都是完全无用的,因为它们并不能教会我如何保护我的邮件服务器。最多,它可能会让新手望而却步。但是,这并不能帮助任何人学习如何保护它。 - oli
当然,这适用于与其他系统互动的情况。关于保护服务,首先需要了解基础知识。如果你真的打算运行这样一个邮件传输代理(MTA),你应该查看可用选择的列表,选择一个适合你的发行版并具备你想要的功能,并且你觉得自己能够轻松使用的软件包。然后阅读友好的手册、文档等,这些很可能会解释如何测试和验证其是否已经适当地保护。如果我必须向你推荐一个,我会说选择Postfix。 - Marcin Kaminski
请看我的回答,@MartinOrda 是正确的。不正确地运行邮件服务器可能会导致非常严重的罚款,而在一些罕见情况下甚至可能会被判监禁(虽然我认为监禁部分可能尚未通过法庭审理)。不正确地配置网络服务器只会对你自己造成损害,不会伤害到其他人。 - coteyr
运行配置不正确、公开可寻址的邮件服务器将使您被永久禁止发送可投递的电子邮件。这种情况经常发生。我一直在处理这个问题。如果您不花时间正确学习这个软件,您将会遇到一系列麻烦,从无法再从该域名发送电子邮件到受到各个政府的巨额罚款。因此,postfix 设置为仅进行本地传递。我再次强调,您首先应该在本地局域网上学习使用电子邮件服务器... - coteyr
...无法发送到外部地址。人们对此非常认真,有许多执行“机构”来确保您在打开25号端口的几个小时/几天后被列入黑名单(实际上您可能已经被预先列入黑名单)。-- 请记住,我的术语是通用的,尽量不使用行话,所以它们可能不如我希望的那样准确,但基本上如果您不知道自己在做什么,请不要运行公共邮件服务器。在内部邮件服务器上学习。 - coteyr
@coteyr,那么,我怎样才能了解它呢?我觉得所有这些安装教程都不会教我有关安全性和避免被列入黑名单的知识... - oli
有两种方法非常有效。一种是通过教育(比如上大学、参加认证培训等)来学习,这需要支付费用;另一种是我个人最喜欢的方法,也是我自己用来获得有限理解的方式,就是找一份电子邮件服务器管理员的工作,向专家学习。此外,你还可以尝试本地投递,这样你可以“玩弄”一下。 - coteyr
@oli,一个邮件服务器的配置要比一个简单的网页服务器复杂得多...(并不是所有的网页服务器都简单,但所有的邮件服务器都是关键的)。无论如何,按照你所说的方式安装Apache只能让你看到页面上的"It Works"或者一个简单的网站,而其他很多东西需要更多的配置(并不总是容易)。它只会对外开放一个端口,并且不需要写入权限,也没有登录功能。这与邮件服务器非常不同!至少有很多垃圾邮件发送者对任何邮件服务器都感兴趣,而不仅仅是那些有趣的邮件服务器。 - laurent
如果你没有正确配置,很快你的邮件服务器就会成为一个垃圾邮件发送者和病毒传播者,更不用说其他可能通过它匿名进行的非法活动(例如盗用用户账户)。另一个需要考虑的问题是,网站是人们“决定去看”的地方,而电子邮件则是他们无需做任何操作就能收到的。 - laurent
8个回答

这是最简单的方法。
sudo apt-get install postfix
就这样一个邮件服务器就安装好了。
现在管理这个邮件服务器是完全不同的故事。
默认情况下,postfix将为所有本地用户帐户提供投递和中继服务。这应该能让你入门。如果你想要更复杂的东西,那么你真的需要阅读、学习、实践等等。邮件服务器非常复杂,正确设置非常困难。即使设置正确,也需要不断的监督和监控。如果你要做的事情超出了本地交付,我百分之百建议你不要自己搭建邮件服务器。
如果你要发送电子邮件给非本地地址,请不要忘记设置DNS和SPF记录。这只是最基本的要求,但并不能确保大多数ISP能接收到邮件。
我再次强烈建议,在你尝试运行公共邮件服务器之前,先阅读并充分理解你所做的事情。请记住,(至少在美国)你可能会因为从你的服务器发送错误的电子邮件而受到罚款。虽然这种情况很少见,但确实发生过。更常见的结果是你被列入黑名单,被排斥,并被标记为一个普遍邪恶的人,禁止你再次运行邮件服务器(这种情况经常发生)。
如果你打算运行一个公共服务器,请先与你的ISP/托管服务商进行沟通。你至少需要一个静态IP和他们的许可。大多数ISP会完全阻止你再次上网,如果你长时间运行一个配置不正确的邮件服务器。
我提醒你注意这些警告,以便你知道,本地投递、内部网络投递是没问题的。远程投递,在你尝试之前,要明确自己在做什么。如果邮件服务器配置不正确,可能会带来一系列灾难,如果处理不当的话。

你似乎也在寻找MTA和MUA。这两者是完全不同的。因为市面上有大约9亿种选择,所以没有“简单”的方法。如果你真的认真考虑运行自己的邮件服务器,请与你的ISP的物流/集成团队交谈。他们将提供一些解决方案,你需要实施才能开始。如果你在VPS上托管,那么VPS公司可能会有非常具体的规则和指南。 - coteyr
1这并不是一个自大的回答,因为如果你曾经尝试过,你就会知道这是一场噩梦。然而,为什么它如此困难完全没有道理。一点也没有。我应该能够打开一个端口,然后就完成了。 - Jonathan

Zimbra是一个非常出色且易于设置的邮件服务器,具备协作功能。对于某些人的需求来说可能有点庞大,但我第一次安装的时候只花了不到30分钟就能投入使用。如果你真的需要的话,甚至还有付费支持服务。

确实,这似乎是最简单的解决方案,而且具有许多内置的安全性。谢谢 :) - oli
没问题!加油,努力完成它! - Neojames
https://help.ubuntu.com/community/MailServer,对我来说似乎更容易 - user457015
-1 对新的Ubuntu版本的支持有限。 - GusDeCooL


这对我来说是最好的解决方案。设置非常简单。 - Chris Bornhoft

如果您是新手并且想要设置邮件服务器,您可以查看我的博客页面 Tiny VPS Postfix

这是学习的良好起点,将来您可以扩展配置以进行完整设置。

它可以做什么

  • 为您的域名发送/接收邮件
  • 根据配置将所有传入的电子邮件转发到另一个电子邮件地址。

它不能做什么

  • 没有本地账户,所有 username@your-domain.com 都配置为转发
  • 没有 Webmail。您将使用第三方电子邮件服务(例如 Yahoo、GMail 等)

如果这正是您想要的,那么我将在此处复制说明。 否则,我将保留这个答案。


我使用全能的WEBMIN。在这里找到
它有不同的模块,你可以将其(或不)整合到服务器管理中。这些模块如:Apache、RAID、Sendmail等都是Webmin的插件,因此在安装后可以进行管理。Webmin还可以管理您当前的安装和报告。
这个简单的应用程序是设置VOIP、邮件、数据库、云、防火墙等的管理员支柱。
你可以保持简单,也可以与大牌一起使用。
任何一个经验丰富的系统管理员都会使用这个或类似的工具。这是Ubuntu 12.04上邮件服务器的前端GUI:Postfix、Dovecot、MySQL等。

看起来很有趣,我会去看一看。 - oli
@oli 即使您没有使用邮件模块,您仍然可以远程管理您的服务器。 - Ringtail
小浣熊,你真是个明星。我要说这是最佳解决方案。 - Gadgetroid

你还应该考虑一下"mailinabox"的灵感之一,德鲁·克劳福德在他的文章中讲述了如何在2小时内使你的电子邮件免受NSA监控的方法。

1虽然这个回答在理论上可能解决了问题,但最好还是在这里包含回答的关键部分,并提供链接作为参考。 - Kevin Bowen

这篇文章不短,但你找不到更短的。它易于跟随,并且非常容易在MySQL中进行管理,因为用户、域和转发表都是虚拟的。邮件用户无需系统帐户即可登录到POP或IMAP。可以使用StartTLS或SSL。

它指导您构建MySQL查询并将其连接到postfix以使用MySQL作为虚拟后端,并安装防病毒、反垃圾邮件过滤器和Webmail(SquirrelMail)。对于不同版本的Ubuntu,该指南有各种版本。

http://www.howtoforge.com/virtual-users-and-domains-with-postfix-courier-mysql-and-squirrelmail-ubuntu-12.04-lts



虽然这理论上可以回答问题,但最好在此处包含回答的重要部分,并提供链接作为参考。 - Braiam
不仅在理论上回答了问题,它正在回答这个问题。 - user457015
你有没有看评论里附带的链接? - Braiam
我正在寻找一些简单安装的东西...你提供了一个很长的软件安装列表,每个安装步骤都有很多步骤...只要在其中一个步骤中犯一个错误,什么都无法运行...我想要更多功能全面的、易于配置的东西。 - oli
大部分的步骤都是在终端中进行复制/粘贴。之所以不算“容易”,是因为它没有图形用户界面(GUI)。 - user457015
@user457015,好的,有数百行需要复制和粘贴。但根据我的经验,总会发生一些意想不到的事情。即使只有几十行需要复制粘贴,完美执行的概率也很低。对于数百行来说,几乎是零。如果真的那么容易并且总能顺利执行,人们就会编写一个脚本来执行了... - oli