带SMTP认证功能的qmail配置

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

一、操作系统

RatHatLinux6.2

二、必需的软件

1、qmail-1.03(www.qmail.org)

2、checkpassword(cr.yp.to/checkpwd.html)或vpopmail(www.inter7.com/vpopmail)

3、qmail-smtpd.c(www.nimh.org/hacks/qmail-smtpd.c)关键文件

其实,qmail和checkpassword都可以是编译好的,并正在使用中的。这样只需一个文件就可以搞定,

而且不影响正常使用。

三、软件的安装

1、正常安装qmail,checkpassword或vpopmail。

2、设置relay规则。

relay的意思是:服务器接受客户端的smtp请求,将客户端发往第三方的邮件进行转发。

relay必须是可控制的。qmail下控制relay很简单,只要客户端接入的smtp进程的环境变量里

包含(RELAYCLIENT="")就允许relay,否则拒收。实现方法是在/etc/tcp.smtp里对需要relay

的IP逐条设置(RELAYCLIENT=""),然后用tcprules生成规则表。因为本文要实现SMTP认证后的

relay,不需要对任何IP进行预先设定,所以默认规则设置成“只对本服务器relay”。

echo'127.0.0.1:allow,RELAYCLIENT=""'/etc/tcp.smtp

/usr/local/bin/tcprules/etc/tcp.smtp.cdb/etc/tcp.smtp.tmp

+OK,〈"18789.978689240@localhost

userrealuser〈回车

+OK

passpassword〈回车

如果结果显示的是用户目录,说明成功了;如果显示"-ERRauthorizationfailed",除检查

密码外,还要检查用户上级的各个目录是否可读,还有密码验证程序的权限是否设置正确。

7、修改smtpd启动命令行,原来是:

/usr/local/bin/tcpserver-H-R-l0-t1-c100-x/etc/tcp.smtp.cdb-u604-g601

0smtp/var/qmail/bin/qmail-smtpd2%26amp;1|/var/qmail/bin/sploggersmtpd3%26amp;

(其中604是qmaild的UID,601是qmaild的GID),改为:

/usr/local/bin/tcpserver-H-R-l0-t1-c100-x/etc/tcp.smtp.cdb-u604-g601

0smtp/var/qmail/bin/qmail-smtpd.auth/bin/checkpassword/bin/true2%26amp;1

|/var/qmail/bin/sploggersmtpd3%26amp;

如果使用的是vpopmail,要把上面的/bin/checkpassword换成/home/vpopmail/bin/vchkpw。

8、KILL掉原来的smtpd进程,启动新的smtpd进程。

9、在客户端上使用OutlookExpress和Netscape4.6以上版本的邮件软件进行检验。

四、以上设置在checkpassword和vpopmail两种验证方式下均已实践通过。

,

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航