设为首页
加入收藏
帮助中心
首页 | 红盾通告 | 信息中心 | ASP技术 | 数据库 | 网页设计 | 网管专栏 | OICQ攻略 | 墨客频道 | 网站运营 |
当前位置:首页 >> 网管专栏 >> 邮件服务 >> 正文
最新信息
·JMail(4.3)中文手册
·Foxmail密码丢了如何应急
·Merak 5.94完全上手
·用Foxmail Server搭建邮件…
·WebEasyMail 问题解答大全
·VisNetic MailServer 常见…
·James安装使用简易指南
·Winmail和垃圾邮件过滤
·Winmail和邮件监控
·用Windows 2003配置邮件服…
资料搜索
热点信息
·Winmail和垃圾邮件过滤
·James安装使用简易指南
·WebEasyMail 问题解答大全
·如何解决OUTLOOK2002无法访…
·用Windows 2003配置邮件服…
·Merak 5.94完全上手
·邮件乱码产生的原因与解决…
·Foxmail密码丢了如何应急
·Winmail和邮件监控
·VisNetic MailServer 常见…
推荐信息
·用Cdonts实现发送Email
·基于QMail的完整WEBMAIL解…
·Sendmail的安全解决方案
·Foxmail密码丢了如何应急
·James安装使用简易指南
·Exchange2000系统建设及规…
·sendmail大全
·神奇梦"邮"-DreamMail技巧…
·自己电脑做SMTP服务器不求…
·Jmail的主要参数列表


Google
 
如何防止邮件服务器被滥用
〖编辑:Cloudy | 浏览:人次〗
邮件服务器在Internet上扮演着一个非常重要的角色。SMTP(简单邮件传输协议)是Internet上计算机之间传送电子邮件所普遍采用的协议,Sendmail是构成邮件服务器的Unix系统中使用极为广泛的一种邮件传输代理程序,它遵循SMTP协议,提供了很强大的邮件服务功能,可以承载高达数万个用户的电子邮件通信服务。

美中不足的是,Sendmail在为用户发送邮件时,并不对用户进行身份认证,这就给一些广告邮件或垃圾邮件的制造者提供了机会──任何人只要想发信,就可以利用任何一台没有带认证功能而又对其“open relay”的Sendmail邮件服务器,为其发送大量的垃圾或广告信件。虽然Sendmail 8.9.3以上的版本提供了一些限制邮件转发的功能,可以在某种程度上限制这种情况的发生,但它只能根据静态的IP地址、邮件地址或域名来进行限制,这使得合法用户只能在固定的IP地址范围内使用邮件服务器,否则将会被拒绝。这样就给用户带来了使用上的不方便,例如用户下班回家或是出差在外,都无法使用工作单位的邮件服务器发信,学生放假离开学校也不能使用学校的邮件服务器发出信件。但是如果设定邮件服务器为open relay模式,又怕造成服务器转发功能被滥用。这是个很矛盾的问题,长期困扰着邮件服务器的管理员。

为了不让自己的邮件成为垃圾邮件的中转站而被外面的邮件服务器拒绝,以往许多邮件服务器的管理员大都只能选择限制mail relay的模式。现在好了,随着Sendmail软件版本的不断更新,新的功能也随之出现。使用新版本的Sendmail 8.12.5邮件服务器软件,再搭配Cyrus-SASL(Simple Authentication and Security Layer)身份认证程序库,就可以解决对邮件用户进行身份认证的问题。服务器有了认证功能后,任何人想通过邮件服务器发送信件时都得先输入用户名和密码进行身份认证。

下面就给大家详尽解释一下如何编译、安装Cyrus-SASL程序库和Sendmail 8.12.5软件使邮件系统支持SASL的SMTP认证功能。

一.环境

操作系统平台:Solaris 2.7 或 Linux 6.2

使用软件:Cyrus-SASL 1.5.27和Sendmail 8.12.5

二.编译、安装Cyrus-SASL程序库:

1.下载:ftp://ftp.andrew.cmu.edu/pub/cyrus-mai/cyrus-sasl-1.5.27.tar.gz

2.解包:

tar xvfz cyrus-sasl-1.5.27.tar.gz


3.编译、安装:

进入cyrus-sasl-1.5.27目录:

#cd  cyrus-sasl-1.5.27


编译配置:

#./configure --enable-login --enable-plain


这里由于SASL库缺省状态下并不支持某些客户端软件的使用方式,所以要在生成配置文件时特别加入一些功能选项。具体要加什么可以用命令查看:

#./configure -help

如加“--enable-login”是因为Outlook Expresss使用LOGIN的认证方法,SASL库缺省并不支持这种方式,所以要在生成配置文件时特别加入。

另外,缺省情况下,所有的库函数是安装到“/usr/local/lib”目录下,但Sendmail使用的库函数是在目录“/usr/lib”中的,所以需要做一些修改。在运行configure脚本前,修改其中的缺省路径就可以了。方法是打开configure文件找到下面这一行:

ac_default_prefix=/usr/local


改为:

ac_default_prefix=/usr


编译:

#make


安装:
#make install


到这里SASL库就安装好了(注意在整个编译安装的过程中都不能有任何错误警告显示才行)。

接着必须设置Sendmail的使用者身份验证方式,因为这里要使用的是系统账号与密码来进行验证,所以要在“/usr/lib/Sendmail.conf”文件中指明:

#cd /usr/lib/sasl/
#cat > Sendmail.conf
pwcheck_method: shadow
^d

 



三.编译、安装及配置Sendmail

1.下载:

可以从http://www.Sendmail.org下载最新的Sendmail.8.12.5.tar.gz

2.解包:

tar xvfz Sendmail.8.12.5.tar.gz


3.编译、安装 (在进行如下操作之前要注意对“/usr/lib/Sendmail”和“/etc/mail/Sendmail.cf”文件进行备份):

进入Sendmail-8.12.5目录:

#cd Sendmail-8.12.5


在“devtools/Site/”目录下创建“config.site.m4”文件,加入如下四行文字,把SMTP认证功能编译到Sendmail中。

APPENDDEF(‘conf_Sendmail_ENVDEF’,‘-DSASL’)
APPENDDEF(‘conf_Sendmail_LIBS’,‘-lsasl’)
APPENDDEF(‘confLIBDIRS’,‘-L/usr/lib’)
APPENDDEF(‘confINCDIRS’,‘-I/usr/include’)


回到Sendmail-8.12.5目录,再进入Sendmail目录,开始编译Sendmail:

#sh Build -c -f ../devtools/Site/site.config.m4


编译成功后,先要增加一个用户smmsp和组。然后运行“./Build install”安装Sendmail。

4.配置:

接着需要修改Sendmail的配置文件。回到Sendmail-8.12.5目录,再进入cf/cf目录,找到相应的后缀为“.mc”的文件,如“generic-solaris.mc”或“generic-linux.mc”,然后编辑相应的“.mc”文件,加入下列内容:

TRUST_AUTH_MECH(‘PLAIN LOGIN’)dnl
define(‘confAUTH_MECHANISMS’,‘PLAIN LOGIN’)dnl
FEATURE(‘no_default_msa’)dnl turn off default entry for MSA


或按照需要适当修改,具体要加什么可参考相应的README文件。

接着就可以编译生成“/etc/mail/Sendmail.cf”文件:

#m4 ../m4/cf.m4 ./generic-solaris.mc > Sendmail.cf
#cp ./Sendmail.cf /etc/mail
#chmod g-w /etc/mail/Sendmail.cf
#vi /etc/mail/local-host-names
#(编辑该邮件服务器的全域名及别名)


最后启动Sendmail,再测试一下认证功能有没有启动就可以了。这样基于Sendmail邮件传输代理下的SMTP认证就做成了。有了认证功能的邮件服务器就能有效地避免被当成垃圾邮件的发送站。

录入时间:2006-05-08 21:43:27 [打印本页] [关闭窗口] [返回顶部]
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

Copyright © 2006-2014 0733168.Com Inc All Rights Reserved
关于我们 | 广告合作 | 联系我们 | 法律声明 | 友情链接 | 意见反馈
本站所收录信息、社区话题、及本站所做之广告均属其个人行为,与本站立场无关
湘ICP备06008436号