网络管理员指南 -15.Sendmail+IDA -4>安装 sendmail

/ns/wz/net/data/20020808040937.htm

网络管理员指南 -15.Sendmail+IDA -4>安装 sendmail

本文出自:http://www.linpus.com.tw 作者: Andrew Anderson


在这节中,我们将看一眼怎么安装 sendmail+IDA 的一个典型的二进制的分区,并且通过使它局部
性和功能性的需求。

sendmail+IDA当前的二进制的分区可从/pub/Linux/system/Mail中的 sunsite.unc.edu 被得到。即
使你有sendmail I的一个早期版本,我强烈推荐你使用sendmail5.67b+IDA1.5版本,因为所有被要求
的Linux特定的修改现在在vanilla来源中,几个重要的安全口被插入,它们是先于1993年12月1日的
版本。

如果你从来源正在建造 sendmail ,你应该遵循包含在来源分区中的在自述文件中的用法说明。当前
的 sendmail+IDA 来源从 vixen.cso.uiuc.edu 是可得到的。建造 sendmail+IDA,你也需要从
newspak-2.2.tar.gz 中的特定的配置文件,它在 /pub/Linux/system/Mail 目录的 sunsite.unc.edu
上是可得到的。

如果你以前安装了 smail 或另外一个邮件发送代理人,你将可能想要(或重命名)从smail 移动所有的
文件使它安全。




--------------------------------------------------------------------------------

提取二进制的分区

首先,你必须打开在一些安全地点的档案文件:

如果你有“现代”的tar,例如来自最近的 Slackware 分区,你就可能只做tar- zxvf filename.tgz 并且
得到一样的结果。

打开档案创造一个被称为sendmail5.65b+IDA1.5+mailx5.3b 的目录。在这个目录中,你发现一个完全的
sendmail+IDA的安装插入一个mailx用户代理的二进制代码。在这个目录下面的所有的文件路径反映文件
应该被安装的地点,因此,它是安全的逐步建立一个tar命令到移动上:






--------------------------------------------------------------------------------

建造 sendmail.cf

建造一个 sendmail.cf文件定制给你的地点,你必须写一个 sendmail.m4 文件,并且用m4 处理它。在
/usr/local/lib/mail/CF中,你发现一个样品文件叫sample.m4 。拷贝它到 yourhostname.m4 ,并且编
辑它反映你的地点的状况。

样品文件被安装为一个UUCP仅仅有 domainized 头和到一台聪明主机的谈话的地点。象这一样的地点仅仅
需要编辑一些项目。

在当前的这节中,我将仅仅给出你必须改变的宏的简短概述。对于他们所做的事情的一个完全描述,请参
考 sendmail.m4 中更早的讨论。

创造 sendmail.cf 文件,执行命令

这个处理 yourhostname.m4 文件并且从它创造 yourhostname.cf 。

下一次,你应该测试你创造了的配置文件是否做你期望它做的事情。这在下列两节中被解释。

一旦你对它的行为很高兴,把它拷贝进有命令的地方:

在这一点上,你的 sendmail 系统准备好行动了。把下列行放在适当的开始文件中(通常 /etc/rc.inet2 ).
你能也手动执行它,让进程现在启动。




--------------------------------------------------------------------------------

测试 sendmail.cf 文件

把 sendmail 放进“测试”模式,你用-bt 旗帜调用它。缺省配置文件是在系统上被安装的 sendmail.cf 文件。
你能通过使用-Cfilename选择测试一个交替的文件。

在下列例子中,我们测试 vstout.cf ,配置文件,它产生于图--所显示出的 vstout.m4 文件。

下列测试保证 sendmail 能在你的系统上把所有的邮件发送到用户。在所有的情况中,测试的结果应该是一样的,
并且与本地的邮件发送程序指向本地的系统名字。

第一个测试到一个本地的用户的一个邮件将如何被发送。

输出显示出 sendmail 怎么处理内部地址。它被传递给分析它的各种各样的规则设置,接着调用另外的规则设置,
并且拆散它成它的部件。

在我们的例子中,我们递给了地址到规则设置 3 和 0 (这是3的意思,0 在地址前进入了)。当由规则et 0 返回时,
最后一行显示出分析的地址,包含邮件发送程序信息将被交付,并且被给到邮件发送程序的主机和用户名字。

下一次,用 UUCP 句法在你的系统上测试邮件到一个用户。

下一次,与因特网句法在你的系统上测试发送到一个用户的邮件到你的充分合格的主机名。

你应该重复上述有每个你指定在你的 sendmail.m4 文件中的PSEUDONYMS和 DEFAULT_NAME 参数的名字的两个测试。

最后,测试你能发送给你的继电器主机。




--------------------------------------------------------------------------------

把它们放在一起-综合测试 sendmail.cf 和表格

在这一点上,你证实了邮件将有需要的缺省行为,并且你能有效地发送和接收邮寄的邮件。完成安装,创造适当的
dbm 表格去得到需要的最终结果,它是必要的。

在创造为你的地点被要求的表格以后,你必须敲打在目录中包含的表格通过 dbm 处理他们。

如果你仅是UUCP,你不需要创造在 README.linux 文件被提及了的任何表格。你将必须触摸这个文件,以便
Makefile 工作。

如果你仅是UUCP,并且你与除了你的聪明主机的地点谈话,你将需要为每个地点增加 uucpxtable 入口(或到他们
的邮件将也通过聪明的主机)并且对修订的 uucpxtable 运行dbm 。

首先,你需要确保通过你的 RELAY_HOST 的邮件经由 RELAY_MAILER 被发送给他们。

如果你除你的 RELAY_HOST 以外,还有 UUCP 邻居,你需要保证到他们的邮件有合适的行为。到你谈论 UUCP的一
个主机的、具有UUCP风格句法的、被发送的邮件,应该直接地去他们那里(除非你明确地用一个 domaintable 入口
阻止它)。假设主机覆盖是你的一位直接的 UUCP 邻居。然后,输入swim!fred到 sendmail应该产生下列结果:

如果你有 uucpxtable 入口,迫使 UUCP发送到有因特网风格 domainized 头的UUCP 邻居,那也需要被测试。