介绍
在您自己的域下设置网站或应用程序时,您可能还需要一个邮件服务器来处理该域的传入和传出电子邮件。 虽然可以运行您自己的邮件服务器,但由于各种原因,它通常不是最佳选择。 本指南将涵盖您可能不想运行自己的邮件服务器的许多原因,并提供一些替代方案。
如果您不想阅读整篇文章,这里有一个简短的总结:设置和维护自己的邮件服务器既复杂又耗时,并且有几种经济实惠的替代方案——大多数人将获得更多价值,形式为节省了使用付费邮件服务的时间。 话虽如此,如果您想了解更多详细信息,请继续阅读。
邮件服务器很复杂
典型的邮件服务器由许多提供特定功能的软件组件组成。 每个组件都必须经过配置和调整,才能很好地协同工作,并提供一个功能齐全的邮件服务器。 因为它们有很多活动部件,所以邮件服务器可能会变得复杂且难以设置。
以下是邮件服务器中所需组件的列表:
- 邮件传输代理
- 邮件递送代理
- IMAP 和/或 POP3 服务器
除了所需的组件之外,您可能还需要添加以下组件:
- 垃圾邮件过滤器
- 杀毒软件
- 网络邮件
虽然某些软件包包含多个组件的功能,但每个组件的选择通常由您决定。 除了软件组件之外,邮件服务器还需要域名、适当的 DNS 记录和 SSL 证书。
让我们更详细地看一下每个组件。
邮件传输代理
处理简单邮件传输协议 (SMTP) 流量的邮件传输代理 (MTA) 有两个职责:
- 将用户的邮件发送到外部 MTA(另一个邮件服务器)
- 从外部 MTA 接收邮件
MTA 软件示例:Postfix、Exim 和 Sendmail。
邮件递送代理
有时称为本地传递代理 (LDA) 的邮件传递代理 (MDA) 从 MTA 检索邮件并将其放置在适当的邮件用户的邮箱中。
邮箱格式有多种,如mbox和Maildir。 每个 MDA 都支持特定的邮箱格式。 邮箱格式的选择决定了邮件在邮件服务器上的实际存储方式,进而影响磁盘使用率和邮箱访问性能。
MDA 软件示例:Postfix 和 Dovecot。
IMAP 和/或 POP3 服务器
IMAP 和 POP3 是邮件客户端使用的协议,即 任何用于阅读电子邮件的软件,用于邮件检索。 每个协议都有其自身的复杂性,但我们将在这里强调一些关键差异。
IMAP 是更复杂的协议,除其他外,它允许多个客户端同时连接到单个邮箱。 电子邮件消息被复制到客户端,而原始消息则留在邮件服务器上。
POP3 更简单,默认情况下会将电子邮件消息移动到邮件客户端的计算机,通常是用户的本地计算机。
提供 IMAP 和/或 POP3 服务器功能的软件示例:Courier、Dovecot、Zimbra。
垃圾邮件过滤器
垃圾邮件过滤器的目的是减少到达用户邮箱的垃圾邮件或垃圾邮件的数量。 垃圾邮件过滤器通过将垃圾邮件检测规则(考虑了发送邮件的服务器、邮件内容等)到传入邮件的各种因素来实现这一点。 如果邮件的“垃圾邮件级别”达到某个阈值,则将其标记为垃圾邮件并将其视为垃圾邮件。
垃圾邮件过滤器也可以应用于外发邮件。 如果用户的邮件帐户被盗用,这会很有用,可以减少使用您的邮件服务器发送的垃圾邮件数量。
SpamAssassin 是一种流行的开源垃圾邮件过滤器。
杀毒软件
防病毒软件用于检测传入和传出邮件中的病毒、木马、恶意软件和其他威胁。 ClamAV 是一种流行的开源防病毒引擎。
网络邮件
许多用户希望他们的电子邮件服务能够提供网络邮件访问。 Webmail,在运行邮件服务器的上下文中,基本上是用户可以通过网络浏览器访问的邮件客户端——Gmail 可能是这方面最著名的例子。 需要 Nginx 或 Apache 等 Web 服务器的 webmail 组件可以在邮件服务器本身上运行。
提供网络邮件功能的软件示例:Roundcube 和 Citadel。
维护是耗时的
现在您已经熟悉了必须安装和配置的邮件服务器组件,让我们看看为什么维护会变得过于耗时。 有明显的维护任务,例如持续保持您的防病毒和垃圾邮件过滤规则,以及所有邮件服务器组件的最新状态,但还有一些您可能没有想到的其他事情。
远离黑名单
维护邮件服务器的另一个挑战是让您的服务器远离各种黑名单,也称为 DNSBL、阻止列表或黑洞列表。 这些列表包含被报告为发送垃圾邮件或垃圾邮件(或 DNS 记录配置不正确)的邮件服务器的 IP 地址。 许多邮件服务器订阅这些黑名单中的一个或多个,并根据发送消息的邮件服务器是否在列表中来过滤传入的消息。 如果您的邮件服务器被列出,您的外发邮件可能会在到达预期收件人之前被过滤和丢弃。
如果您的邮件服务器被列入黑名单,通常可以将其从黑名单中删除(或从黑名单中删除)。 您需要确定被列入黑名单的原因并解决问题。 在此之后,您将需要查找您的邮件服务器所在的特定列表的黑名单删除过程,并遵循它。
故障排除很困难
尽管大多数人每天都在使用电子邮件,但很容易忽视一个事实,即它是一个难以排除故障的复杂系统。 例如,如果没有收到您发送的消息,您从哪里开始解决问题? 该问题可能是由于许多邮件服务器组件之一中的错误配置引起的,例如外发垃圾邮件过滤器调整不佳,或者由外部问题引起,例如在黑名单上。
简单的替代方案 - 邮件服务
既然您知道为什么您可能不想运行自己的邮件服务器,那么这里有一些替代方案。 这些邮件服务可能会满足您的需求,并允许您和您的应用程序从您自己的域发送和接收电子邮件。
- 谷歌应用
- 佐霍
- 快速邮件
- Gandi(需要通过他们注册域名)
- 微软Office365
此列表不包括所有邮件服务; 那里有很多,每个都有自己的功能和价格。 请务必以您想要的价格选择具有您需要的功能的产品。
简单的替代方案——外发邮件的后缀
如果您只需要从服务器上的应用程序发送外发邮件,则无需设置完整的邮件服务器。 您可以设置一个简单的邮件传输代理 (MTA),例如 Postfix。 可以在此处找到涵盖此内容的教程:如何在 Ubuntu 14.04 上安装和设置 Postfix。
然后,您可以将您的应用程序配置为使用服务器上的 sendmail
作为其传出消息的邮件传输。
不服气?
如果您真的想运行自己的邮件服务器,我们有一些关于该主题的教程。 以下是一些不同设置的链接:
- 如何使用 Postfix、Dovecot、MySQL 和 SpamAssasin 配置邮件服务器
- 如何使用 Dovecot 设置 Postfix 电子邮件服务器
- 如何在 Ubuntu 12.04 x64 上安装 iRedMail
- 如何在 Ubuntu 13.10 VPS 上安装 Citadel 群件
- 如何在 Ubuntu 12.04 上安装仅发送邮件服务器“Exim”
- 虚拟最小值
祝你好运!