29.2. 邮件组件

在电子邮件传递交换信息过程中涉及五个主要部分:邮件用户代理 (MUA)、邮件传输代理 (MTA)、邮件主机、远程或本地邮箱、以及 DNS 。本节将对这些部分进行概述。

邮件用户代理 (MUA)

邮件用户代理(MUA)是一个用于编写、发送和接收电子邮件的应用程序。这个应用程序可以是一个命令行程序,例如内置的邮件工具;或者来自 Ports Collection 的第三方应用程序,例如 mutt、alpine 或 elm 。 在 Ports Collection 中也有几十个图形程序,包括 Claws Mail、Evolution 和 Thunderbird 。一些组织提供了一个网络邮件程序,可以通过网络浏览器访问。 关于在 FreeBSD 上安装和使用 MUA 的更多信息可以在 Mail User Agents 中找到。

邮件传输代理(MTA)

邮件传输代理(MTA)负责接收传入的邮件和传递传出的邮件。FreeBSD 将 Sendmail 作为默认的 MTA,但它也支持许多其他的邮件服务器守护程序,包括 Exim,Postfix,和 qmail。Sendmail 的配置在 Sendmail 配置文件中有描述说明。 如果使用 Ports Collection 安装了另一个 MTA,请参考安装之后的信息,了解 FreeBSD 特有的配置细节,也可以参考该应用程序的网站了解更多的配置说明。

邮件主机和邮箱

邮件主机是负责为主机或网络传送和接收邮件的服务器。邮件主机收集所有发送到某个域名的邮件,并将其存储在默认 mbox 或备用 Maildir 格式中,具体取决于配置。 邮件存储后,既可以使用 MUA 在本地读取,也可以使用 POP 或 IMAP 等协议远程访问和收集。如果在本地读取邮件,则不需要安装 POP 或 IMAP 服务器。

要远程访问邮箱,需要 POP 或 IMAP 服务器,因为这些协议允许用户从远程网络位置连接到他们的邮箱。与 POP 相比,IMAP 多了几个优势。: 其中包括在下载消息和并发更新后将消息副本存储在远程服务器上的能力。IMAP 在低速链接上很有用,因为它允许用户在不下载消息的情况下获取消息的结构。它还可以在服务器上执行搜索等任务,以尽量减少客户端和服务器之间的数据传输。

Ports Collection 中提供了几个 POP 和 IMAP 服务器。其中包括 mail/qpoppermail/imap-uwmail/courier-imapmail/dovecot2

警告:

这里需要注意,POP 和 IMAP 都是以明文传输信息,包括用户名和密码凭证。为了保证这些协议的信息传输安全,可以考虑通过 ssh(1)(SSH隧道)或使用 SSL(OpenSSL)建立隧道会话。

域名系统 (DNS)

域名系统(DNS)及其命名的守护程序在电子邮件的传递过程中发挥了很大作用。为了将邮件从一个站点送到另一个站点,MTA 将在 DNS 中查找远程站点,确定哪个主机将接收目的地的邮件。当邮件从远程主机发送至 MTA 时,也会发生这一过程。

除了将主机名映射到 IP 地址外,DNS 还负责存储邮件发送的特定信息,称为 Mail eXchanger MX 记录。MX 记录指定了哪些主机将接收某个特定域的邮件。

要查看一个域名的 MX记录,需要指定记录的类型。参考 host(1),了解关于这个命令的更多细节。

  1. % host -t mx FreeBSD.org
  2. FreeBSD.org mail is handled by 10 mx1.FreeBSD.org

关于DNS及其配置的更多信息,请参考域名系统(DNS)