网络管理员指南 -15.Sendmail+IDA -2>sendmail.cf 文件 -2)标准使用sendmail.m4参数

/ns/wz/net/data/20020808040825.htm

网络管理员指南 -15.Sendmail+IDA -2>sendmail.cf 文件 -2)标准使用sendmail.m4参数


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


在 sendmail.m4 文件中的一些或项目总是被要求;如果你能成功地做缺省,其它能被忽略。下面的节
更详细的描述例子 sendmail.m4 文件的每个项目。




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

定义路径的项目

LIBDIR 定义 sendmail+IDA 期望发现配置文件,各种各样的 dbm 表格,和特殊的本地的定义的目录。
在典型的二进制的分区中,这被编进 sendmail 二进制代码并且不需要明确地在 sendmail.m4 文件中
被设定。

上面的例子有一个第一位的dnl,它意味着这行实质上是仅为信息的一个评价。

把支持文件的地点改变到一个不同的地点,把领先的 dnl 从上面的行移开,将路径放到需要的地点,
并且重建和重新安装 sendmail.cf 文件。




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

定义本地的邮件发送程序

大多数操作系统提供一个处理本地发送邮件的程序。为 Unix 的许多主要变体的典型程序已经被建造为
sendmail 二进制代码。

明确地定义适当的本地邮件发送程序是必要的,因为一个本地的发送程序在你安装了的分区中不必在场。
这通过在 sendmail.m4 文件中指定 LOCAL_MAILER_DEF 来完成。

例如,用通常使用的发送程序提供这种服务,你将设置LOCAL_MAILER_DEF 到 mailers.linux 。

然后,下列文件在被LIBDIR指向了的目录中作为 mailers.linux 被安装。它使用合适的参数明确地定义
在内部Mlocal邮件程序中的发送程序,导致 sendmail为本地的系统正确地发送邮件。除非你是一位
sendmail 专家,你可能不想要改变下列例子。

这里也有一个为发送的内建的缺省在Sendmail.mc文件中,它被包括在 sendmail.cf 文件中。指定它,你
将不使用 mailers.linux 文件并且在你的 sendmail.m4 文件中定义下列:

不幸地, Sendmail.mc 假定发送在 /bin 中被安装,它不是有 Slackware1.1.1 的情形(它在 /usr/bin中
安装它).在那种情况中,你将用一个连接或从来源中重新建立发送来伪装它, 以便它存在于 /bin中。




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

处理退回的邮件

许多地点发现保证邮件以接近100%的成功率被发送和接收,是重要的。同时,检验 syslogd 时( 8 )记录
文件是有用的,本地邮件管理器通常需要查看被退回邮件的信头,以便确定邮件是否因为用户错误或在其
中一个系统上的一个配置错误而不能发送。

定义 POSTMASTERBOUNCE 导致每个的被返回的信息一个拷贝被设置到为系统定义为 Postmaster 的人。
不幸地,设置这个参数也导致信息的文本被发送到 Postmaster ,它潜在地联系了在系统上使用邮件的人
的隐私。

通常,地点 postmasters通过阅读没有发送给他们的邮件来尝试约束自己(或通过技术的方法做到这一点,
通过删除他们收到的退回信息的文本来删除手迹)。






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

域名服务相关的项目

有几个众所周知的网络,通常为历史的原因,而不是为DNS目的的有效性,在通讯地址中被引用。定义
PSEUDODOMAINS 防止总是失败的不必要的DNS查找尝试 。




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

定义本地系统的名字由-知道

通常,系统希望隐藏他们的真实身份,作为邮件通路服务,或收到和处理发送到他们过去常知道的
“旧”名字的地址。

PSEUDONYMS指定本地的系统将为其接受邮件的所有的主机名的列表。

DEFAULT_HOST 指定起源在本地的主机之上的信息中出现的主机名。这个参数被设置到有效的价值或所
有归还的邮件无法投递,是很重要的。




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

UUCP 相关的项目

通常,系统被为 UUCP 目的的一个名字和另外一个为UUCP目的的一个名字知道。 UUCPNAME 允许你定义
出现在 UUCP 邮件头中的不同的主机名。

UUCPNODES 定义命令,这个命令返回一张我们经由UUCP连接直接被连接的系统的主机名的一张表。

BANGIMPLIESUUCP 和 BANGONLYUUCP 确保用UUCP句法发送的邮件被视为UUCP行为,而非为今天在因特网
上普遍流行的域名服务行为。




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

系统驿站和邮件处理器

许多系统管理者不希望被需要确认他们的系统在所有的世界网络上使用所有的网络(也可以是系统)。
相替代的,他们转送所有发出的邮件到另外一个系统,它是最为聪明的。

RELAY_HOST指定这样一个聪明的相邻系统的UUCP主机名。

RELAY_MAILER指定在那里转发信息的邮件处理器。

需要注意的是,设置这些参数会导致你的发出邮件被转发到这个远程系统,它将影响他们的系统的安装。
确定要在你配置你的系统来使用另外系统作为一个通常的驿站主机目标之前从远程邮件管理中得到清楚
的协议。


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

各种配置表格

使用这些宏,你可以改变位置,在那里sendmail+IDA查找设定系统的“真正”行动的各种dbm表格。通常
在LIBDIR中离开它们是明智的。


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

Master Sendmail.mc文件

sendmail+IDA的作者提供Sendmail.mc文件,它包含真正的成为sendmail.cf文件的``guts''。周期性的,
新发行的版本用来修改错误或者是添加功能但不要求一个完整的发行版本和从来源得到的重新编辑的
sendmail。

不编辑这个文件是重要的。


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

于是哪个路径是真正要求的?

当没有使用任何可以选择的dbm表格时候,sendmail+IDA通过DEFAULT_MAILER(或者可能是RELAY_HOST 和
RELAY_MAILER)在sendmail.m4文件中指定用来产生sendmail.cf递送邮件。很有可能通过在domaintable
或者 uucpxtable来跳过这个动作。

一个在Internet上的是一个普通的地址并说域名服务,或者那个只使用UUCP并通过UUCP传送一个聪明的
RELAY_HOST转发所有的邮件。有可能不需要任何特定的路径。

实际上所有的系统需要设置DEFAULT_HOST 和 PSEUDONYMS宏,它们指定所知道的真实的地址名和化名和
DEFAULT_MAILER。如果你只有驿站主机和驿站邮件递送器,你不需要设置这些默认,因为它是自动执行的。

UUCP主机可能还需要设置UUCPNAME到他们的官方UUCP名字。它们还将设置通过一个邮件驿站启动smart-host
路由的RELAY_MAILER和 RELAY_HOST。传输使用的邮件在RELAY_MAILER中指定并且对于UUCP站点通常必须是
UUCP-A。

如果你的站点是只使用SMTP并谈论“域名服务”,你将改变DEFAULT_MAILER到TCP-A正确删除RELAY_MAILER和
RELAY_HOST行。