22.1. Linux Sendmail 服务器

在我们的配置和安装中,我们将为您提供两种不同的 Sendmail 配置方案,您可以根据需要设置:

中央邮件 Hub 中继,

中央邮件 Hub 中继服务器配置将用于您的服务器,其指定任务是为您的网络上所有本地或邻近的客户端和服务器邮件机器发送、接收和中继所有邮件。

本地或邻近的客户端和服务器。

本地或邻近的客户端和服务器指的是您网络上所有其他的本地服务器或客户端机器,它们运行 Sendmail 并将所有外发邮件发送到中央邮件 Hub 以便进一步投递。这种内部客户端永远不会直接通过互联网接收邮件;相反,来自互联网的、发往这些计算机的所有邮件都保存在邮件 Hub 服务器上。

为网络上的所有计算机运行一个中央邮件 Hub 服务器是一个好主意;这种架构将限制服务器和客户端机器上的任务管理,并提高您站点的安全性。

您可以配置邻近的 Sendmail,使其仅接受本地生成的邮件,从而隔离邻近机器以提高安全性。防火墙外部或作为防火墙一部分的网关服务器充当代理,并通过其防火墙规则文件接受来自外部的、发往内部交付的外部邮件,并将其转发到中央邮件 Hub 服务器。另请注意,网关服务器配置得像邻近的 Sendmail 服务器一样,永远不接受来自外部的传入邮件互联网.

这是一个本书中使用的 Sendmail 配置的图形化表示,具有不同的设置

存在许多可能性,具体取决于您的需求和网络架构。


           Sendmail configuration examples

这些安装说明假设

这些是您需要下载的软件包,它们在这里可用

Sendmail 首页: http://www.sendmail.org/
Sendmail FTP 站点: 204.152.184.34
您必须确保下载:sendmail.8.10.1.tar.gz

在解压缩 tarball 之前,最好在安装 Sendmail 之前和之后分别列出系统上的文件列表,然后使用 diff 命令比较它们,找出它将文件放在了哪里。只需运行 find/* > Sendmail1之前和 find/* > Sendmail2在安装软件之后,并使用 diffSendmail1 Sendmail2 > Sendmail-Installed来获取更改列表。

您需要编译,所以解压缩您已下载的 tarball (tar.gz):
         [root@deep] /# cp sendmail.version.tar.gz /var/tmp
         [root@deep] /# cd /var/tmp
         [root@deep ]/tmp# tar xzpf sendmail.version.tar.gz
         

在编译之前,最好先根据您的需要进行配置,移动到新的 Sendmail 目录并编辑smrsh.c文件 vi +77smrsh/smrsh.c并更改行
         # define CMDDIR         "/usr/adm/sm.bin"
         
修改为
         # define CMDDIR        "/etc/smrsh"
         
此修改指定了 smrsh 程序运行的命令的默认搜索路径。它允许我们限制这些程序可能驻留的位置。