Qmail系统下防止滥用mail relay方案(3)
发表于:2007-06-08来源:作者:点击数:
标签:
若希望支持漫游用户通过邮件 服务器 的转发邮件(mail relay),则需要在安装vpopmail时使用如下配置选项: [root@aidmail vpopmail-4.9.4]# ./configure --enable-roaming-users=y 其支持漫游用户的原理是:当某个漫游用户通过pop3取信以后,则在某段时间内允
若希望支持漫游用户通过邮件
服务器的转发邮件(mail relay),则需要在安装vpopmail时使用如下配置选项:
[root@aidmail vpopmail-4.9.4]# ./configure --enable-roaming-users=y
其支持漫游用户的原理是:当某个漫游用户通过pop3取信以后,则在某段时间内允许该地址通过邮件服务器的转发信件。vpopmail安装完成以后,通过cron来定时运行程序如下:
40 * * * * /home/vpopmail/bin/clearopensmtp 2>&1 > /dev/null
也就是每40分钟清除允许relay的IP地址的列表,则当某个用户首先通过pop3取信件(因为通过pop3收取信件是需要认证的,则可以保证这是合法的用户)结束以后,则用户在后来的40分钟以内可以通过该邮件系统转发邮件,之后就不允许通过该系统转发邮件。
四.防止mail relay被滥用的方法三 对于有漫游用户的邮件系统来说,防止其relay功能被滥用的另外一个方法就是在发送邮件时要求用户认证,就象用户收信是需要认证一样。这里假设系统已经安装成功qmail-1.03和vpopmail,并且原有系统运行正常。
1.
下载程序:
qmail-smtp补丁:http://members.elysium.pl/brush/qmail-smtpd-auth/
密码检验补丁:http://members.elysium.pl/brush/cmd5checkpw/
从这两个地址下载得到qmail-smtpd-auth-0.26.tar.gz及cmd5checkpw-0.22.tar.gz。
2.编译安装qmail-smtpd
将qmail-smtpd-auth-0.26.tar.gz解压缩:
[root@www src]# tar xvfz qmail-smtpd-auth-0.26.tar.gz
[root@www src]# cd qmail-smtpd-auth-0.26
[root@www qmail-smtpd-auth-0.26]# ls
CHANGES Makefile README TODO
.netd.conf qmail-smtpd.c
qmail-smtpd.patch
将安装成功的qmail目录下的qmail-smtp.c拷贝到qmail-smtpd-auth-0.26目录下:
[root@www qmail-smtpd-auth-0.26]# cp ../qmail-1.03/qmail-smtpd.c ./
然后对该文件进行补丁处理:
[root@www qmail-smtpd-auth-0.26]# patch -p1 < qmail-smtpd.patch
将qmail-smtpd.c 拷贝到qmail 的源文件目录里:
[root@www qmail-smtpd-auth-0.26]# cp qmail-smtpd.c ../qmail-1.03
最好先将原文件备份。单独编译 qmail-smtpd :
[root@aidmail qmail-smtpd]# make qmail-smtpd
./load qmail-smtpd rcpthosts.o commands.o timeoutread.o
timeoutwrite.o ip.o ipme.o ipalloc.o control.o constmap.o
received.o date822fmt.o now.o qmail.o cdb.a fd.a wait.a
datetime.a getln.a open.a sig.a case.a env.a stralloc.a
alloc.a subs
tdio.a error.a str.a fs.a auto_qmail.o `cat
socket.lib`
将新生成的qmail-smtpd 拷贝到/var/qmail/bin 目录下。在之前应该对原来的执行文件进行备份。
3.编译安装kpw-0.22.tar.gz
解压缩,编译安装:
[root@www src]# tar xvfz cmd5checkpw-0.22.tar.gz
[root@www src]# cd cmd5checkpw-0.22
[root@www cmd5checkpw-0.22]# make ;make instll
原文转自:http://www.ltesting.net