31.2.邮件组件

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

邮件用户代理(MUA)

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

邮件传输代理(MTA)

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

邮件主机和邮箱

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

如果要远程访问邮箱,则需要 POP 或 IMAP 服务器,因为这些协议允许用户从远程位置连接到他们的邮箱。IMAP 比 POP 有几个优点。这些优势包括在下载邮件后在远程服务器上存储一份邮件副本和同步更新的能力。IMAP 在低速链接中很有用,因为它允许用户在不下载邮件的情况下获取邮件的结构。它还可以在服务器上执行搜索等任务,以尽量减少客户和服务器之间的数据传输。

在 Ports 中有几个 POP 和 IMAP 服务器可用。这些服务器包括 mail/qpopper, mail/imap-uwmail/courier-imapmail/dovecot2

警告

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

域名系统(DNS)

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

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

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

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

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