20.6. 高级主题

下面这节将介绍邮件配置和为整个域安装邮件.

20.6.1. 基本配置

在邮箱外, 只要你设置/etc/resolv.conf或者运行你自己的名字服务器,你就可以发送邮件到外部的主机. 如果你想要你的邮件发送给某个特定的MTA(例如, sendmail) 在你的FreeBSD主机上,有两个方法 :

不管你选择上面那种方法, 为了直接在你的主机上发送邮件 , 必须有一个静态的IP地址(不是象PPP拨号一样的动态地址).如果你在防火墙后面 , 它必须让SMTP协议通过. 如果你想要在你的主机上直接的收取邮件 , 你必须确定两件事:

上面的每条记录都允许你在你的主机直接接收邮件.

试试这个:

# hostname example.FreeBSD.org # host example.FreeBSD.org example.FreeBSD.org has address 204.216.27.XX

如果你看到这些, 直接使用 应该没有问题 (假定sendmail已经 正确的运行在example.FreeBSD.org).

如果你看到这些:

# host example.FreeBSD.org example.FreeBSD.org has address 204.216.27.XX example.FreeBSD.org mail is handled (pri=10) by hub.FreeBSD.org

所有发送到主机(example.FreeBSD.org)的邮件在相同的用户名下将会被 hub终止的收集,而不是直接发送到你的主机.

上面的信息是通过你的DNS服务器来处理的. 支持邮件路由信息的DNS记录是 邮件 交换记录. 如果 MX记录不存在, 邮件将通过它自己的IP地址被直接的发送到主机.

freefall.FreeBSD.org的MX记录如下所示:

freefall       MX  30  mail.crl.net
freefall        MX  40  agora.rdrop.com
freefall        MX  10  freefall.FreeBSD.org
freefall        MX  20  who.cdrom.com

正如你说看到的, freefall 有很多MX记录. 最小编号的MX记录是直接接收邮件的主机; 如果因为一些原因它不可用, 其它 (有时会访问``backup MXes'')接收信息将会暂时接替并做临时的排列 .

为了有效的使用交换式MX站点,应当从你的机器上分离一些Internet连接. 你的ISP或者其它友好的站点可以没有任何问题的为你提供这个服务.

20.6.2. Mail for Your Domain

为了设置一个``邮件主机'' (又称邮件服务器)你必须要把许多邮件发送到与它相连的几个工作站中.基本上, 你想要``要求''在你域的每个主机的所有邮件(在这个例子里是*.FreeBSD.org)转向到你的邮件服务器,从而使你的用户可以在主邮件服务器里接收他们的邮件.

要使工作最简单, 带有同样 用户名的帐户应该同时存在于两台机器上. 使用 adduser(8) 来这样做.

你将使用的邮件主机必须为每个工作站指定一个邮件交换. 你可以在 DNS中这样配置:

example.FreeBSD.org    A   204.216.27.XX       ; Workstation
            MX  10 hub.FreeBSD.org  ; Mailhost

无论A记录指向哪,这将为工作站重新定位到邮件主机. 邮件将被发送到MX 主机.

你不能自己这样做除非你运行着一个DNS服务器. 如果不是这样, 或者不能运行你自己的DNS服务器, 告诉你的ISP或者给你提供DNS服务的人.

如果你正在使用虚拟邮件主机, 下面的信息将会对你有用 . 在这个例子, 我们假定你有一个客户并且他有自己的域 , 这个例子中是customer1.org, 你要把 customer1.org所有的邮件发送到你的邮件主机 mail.myhost.com. 你的DNS记录应该是这样 :

customer1.org      MX  10  mail.myhost.com

需要你个A记录,如果你只为域customer1.org处理邮件.

Note: 必须清楚customer1.org将不能工作,除非 一个A记录存在.

最后一件你必须要做的事是告诉 sendmail接受邮件的是什么域和(或)主机名 . 这里有好几种方法. 下面方法可以任选一种: