18.2. 安装 sendmail

sendmail 邮件传输代理预先打包在大多数 Linux 发行版中。在这种情况下,安装相对简单。尽管如此,从源代码安装 sendmail 还是有一些充分的理由的,特别是如果您注重安全。sendmail 程序非常复杂,多年来因包含允许安全漏洞的错误而闻名。最著名的例子之一是 RTM 互联网蠕虫,它利用了早期版本的 sendmail 中的缓冲区溢出问题。我们在第 9 章中简要地提到了这一点。大多数涉及缓冲区溢出的安全漏洞都依赖于不同机器上的所有 sendmail 副本都是相同的,因为漏洞利用依赖于存储在特定位置的数据。当然,这正是从 Linux 发行版安装的 sendmail 的情况。自己从源代码编译 sendmail 可以帮助降低这种风险。现代版本的 sendmail 不太容易受到攻击,因为随着安全已成为整个互联网社区更广泛关注的问题,它们受到了极其严格的审查。

sendmail 源代码可以通过匿名 FTP 从 ftp.sendmail.org 获取。

编译非常简单,因为 sendmail 源代码包直接支持 Linux。编译 sendmail 涉及的步骤是
# cd /usr/local/src
# tar xvfz sendmail.8.9.3.tar.gz
# cd src
# ./Build
您需要root权限才能完成使用以下命令安装生成的二进制文件
# cd obj.Linux.2.0.36.i586
# make install
您现在已将 sendmail 二进制文件安装到/usr/sbin目录。sendmail 二进制文件的几个符号链接将被安装到/usr/bin/目录。当我们讨论运行 sendmail 中的常见任务时,我们将讨论这些链接。