Sendmail 作为免费的邮件服务器软件,已被广泛应用于Internet各种操作系统的服务器中。如:Solaris,HPUX,AIX,IRIX,Linux等等。随着互连网的普及,邮件服务器受攻击的机会也大大增加。现在互连网上的邮件服务器所受攻击有两类:一类就是中继利用(Relay),即远程机器通过您的服务器来发信,这样任何人都能够利用您的服务器向任何地址发邮件,久而久之,您的机器不但成为发送垃圾邮件的帮凶,也会使您的网络国际流量激增,同时将可能被网上的很多邮件服务器所拒绝。另一类攻击称为垃圾邮件(Spam),即人们常说的邮件炸弹,是指在很短时间内服务器可能接收大量无用的邮件,从而使邮件服务器不堪负载而出现瘫痪。这两种攻击都可能使邮件服务器无法正常工作。因此作为一个校园网邮件服务器防止邮件攻击将不可缺少。

现在对于sendmail邮件服务器,阻止邮件攻击的方法有两种。一种是升级高版本的服务器软件,利用软件自身的安全功能。第二种就是采用第三方软件利用其诸如动态中继验证控制功能来实现。下面就以sendmail V8.9.3为例,介绍这些方法。

1.服务器自身安全功能

(1)编译sendmail时的安全考虑

要利用sendmail 8.9.3的阻止邮件攻击功能,就必须在系统编译时对相关参数进行配置,并借助相关的软件包。现在主要就是利用Berkeley DB数据库的功能,Berkeley DB包能够从相关站点上下载,并需要预先编译好。然后将Berkeley DB的相关参数写进sendmail的有关文档中。

a.修改site.config.m4文档

将编译好的Berkeley DB有关库文档路径加入到site.config.m4文档中,使sendmail编译后能够使用Berkeley DB数据库。例如:


            

#cd $/sendmail-8.9.3/BuidTools/Site

修改site.config.m4文档

define (confINCDIRS, -I/usr/local/BerkeleyDB/include)

define (confLIBDIRS, L/usr/local/BerkeleyDB/lib)

b.修改sendmail.mc文档

sendmail.mc是生成sendmail.cf的模板文档之一,

要使sendmail具备抗邮件攻击功能还需在该文档中进行相关定义。主要包括以下几项:

......

FEATURE(relay_entire_domain)

FEATURE(ACCESS_DB)dn1

FEATURE(blacklist_recipients)

......