当前位置: 首页 > 图文教程 > 服务器 > Linux服务器 > SENDMAIL邮件服务器的安装与设置

Linux服务器
Linux上双网卡绑定方法(Suse9SP3)
Linux操作系统调优参数的意义
Linux下使用SSH客户端及其Sftp文件传送
教你恢复被误删除的Linux文件
SQL Server注入大全及防御
Linux无法解析域名的解决办法
Linux系统下安装和配置MyEclipse的方法
Ubuntu下VirtualBox 1.4.0设置文件共享
Windows与Linux系统共享StarDict字典文件
修改Linux下相关的登陆信息
Windows通过SecureCRT远程登录Linux主机
Linux操作系统如何修改SWAP交换区的大小
Linux操作系统下为Apache目录添加密码
Linux时间设置与同步(NTP)
Linux内核补丁AMD旁路转换缓冲(TLB)错误
Linux架设DHCP服务器的方法
Fedora 8下Apache配置与管理
Linux操作系统下用单网卡捆绑双IP的方法
Ubuntu Linux系统环境变量配置文件
SUSE Linux中将Tomcat作为Service运行

Linux服务器 中的 SENDMAIL邮件服务器的安装与设置


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-18   浏览: 44 ::
收藏到网摘: n/a

Sendmail对一般的系统管理者而言,往往是个不敢手的「禁区」,因为绝大多数系统的使用者对E-Mail的需求与依赖的程度之高,可说是稍有分毫差错,系统管理者就要准备接受如雪片般飞来的抗议与抱怨!而Sendmail这个东东的「内函」,似乎又有点不太容易理解:与设定有关的sendmail.cf档,如果不是下过一番死功夫,则读起来如同读天书一样,只知道里面有英文字与数字!所以一般人总是能不动则不动,只要能用就好。不过,很不幸的,一般跟著机器而来的sendmail总是有著令人心惊胆跳的「附加功能」,就是常常都有一些可以让无聊人士作为侵入路径的BUG或後门,某些BUG还可以让侵入者经由Sendmail而取得最高权限的root!一旦root权限被人拿走了,那麽这机器就可被人任意屠宰,最恶劣的,还可能破坏系统!

Sun在国内的使用人口相当的多,笔者对Sun也稍微比较熟悉一点。不过,Sun的Sendmail却是令人颇不敢恭维的,几乎可以说:只要还在使用Sun的Sendmail而没有「常常」patch的话,那甚麽系统安全都不必谈了,谈了也是白谈;如果还在使用Sun的Sendmail,那就如果系统抱著一颗不定时炸弹,随时一个不注意,都可能引爆:(。这一点,大家可以翻一翻CERT或8lgm看一看,几乎是只要有sendmail的问题,Sun大多跑了....。其他系统的Sendmail也不要偷笑,虽然大家的出场率没有Sun高,可是也常会问题的。另一方面,Sendmail8.6.9与之前的版本最近刚发现有个ident方面的Bug。如果方便的话,请大家务必换成最新版。如果不方便的
话,在v8.6.5之後的版本有个克难式的补救法,即在sendmail.cf加入这麽一行:

Orident=0

表示不作ident的检查。
v8.6.5之前的版本就一定要换成最新版。

本软体在系统安全方面,是目前评价最高的,目前已知的BUG都已经改好了,最主要的原因,当然是要感谢作者EricAllman,他(或他们)能作到一发现重大的Bug(如系统安装)就立刻出新版。本软体是一publicdomain,可以在网路上各ftpserver上找到其sourcecode。由於该软体的发展者把一些必要的设定步骤自动化了,所以,其实安装这个软体并不是想像中那麽样的困难。如果连compile的时间也算下去,顺利的话,不用半个小时就可以安装完毕!

3.1下载Sendmail最新版本

最新版本的Sendmail可以从ftp://ftp.sendmail.org/pub/sendmail/得到!
如sendmail.8.9.3.tar.gz这是截止到文章发布的最新版本,size:1068290byte

有关最新版本的发布,请浏览Sendmail的主页http://www.sendmail.org

3.2安装Sendmail

用root登陆或su成root后,先把tar.gz的包解开tarfvxzsendmail.8.9.3.tar.gz,用make-f开始编译

编译完成后系统会产生系统设定文件,也就是sendmail.cf(一般这个文件都存放在/etc下)

接下来,这按几步继续安装:(注:~/sendmail为解开后的sendmail目录)

1.请切换至设定档目录~/sendmail/cf/cf之下。找一个合适自己系统的XXXX.mc档。笔者一般上是使用tcpproto.mc

这一个不用uucp的档。如果是用tcpproto.mc这个档,笔者在solaris2.3试了,得记得在档中要加上一行:

OSTYPE(solaris2)

Sun4.1.3不必,其他系统就不晓得了。在目录~/sendmail/cf/ostype下有几个OSTYPE()可以的档,

只有这个目录有资料的才可能能够OSTYPE()。还有,如果是systemV的/bin/mail,似乎就得要加OSTYPE()。

一句老话,详情请看DOCUMENT:~/sendmail/cf/README。这希望有经验的朋友能够补充:)

如果不小心忘了加上OSTYPE()会怎样?也不会怎样,只会有"unknowmailererror"的错误,然後信收不到。

有一点要提醒大家的,就是:在~/sendmail/cf/cf所看到的各种系统的.mc档,都是Sendmail8.6.x的作者

EricAllman「演示」给大家看的,所以,可以看到档名都有个"cs",要是没有修改就用这些档的话,那一定会发生错误的。而要修改,有相当多地方要改,所以,如笔者一般懒的人,用tcpproto.mc还是比较简单又不会出错:)