1。封ip针对有些垃圾邮件发送方是固定的ip或者固定ip段,那我们可以限制他们的smtp连接
vitcp.smtp
218.61.128.61:deny
限制218.61.128.61的机器跟我的qmail服务器有任何smtp的连接
或者:
218.61.128.:deny
禁止218.61.128网段的机器跟我的qmail有任何的smtp连接。
然后
tcprulestcp.smtp.cdbtcp.smtp.tmp<tcp.smtp
生成新的tcp.smtp.cdb
当然你也可以通过iptables来限制smtp端口的连接。
2。封某个帐号主要针对某些比较正规的垃圾邮件发送者
vi/var/qmail/control/badmailfrom
编辑/var/qmail/control/badmailfrom文件(如果没有可以新建一个)将要拒收的邮件地址写入,每条记录为一行如:
[email protected]这样所有FROM来自
[email protected]的邮件都会被邮件服务器拒收。
同样也可以对一个域进行拒收,在badmailfrom文件中加入@test.com,这样所有来自test.com的任何地址的电子邮件都会被服务器拒收。
3。设置.qmail-default文件vi/var/qmail/alias/.qmail-default
/var/vpopmail/bin/vdelivermail''bounce-no-mailbox
这样垃圾邮件发过来,如果是一个不存在的邮箱,会自动弹回邮件,并告知nothismailbox
4。使用第三方的rbl服务,其实就是利用dns反查询,可以防止有些人自架mailserver发垃圾信的行为我用的是中国反垃圾邮件联盟的CDL+DNS反查询方式的实时黑名单技术,这个服务是免费的,但必须申请才能使用申请服务后,在你的SMTP启动脚本,加上/usr/local/bin/rblsmtpd,如下
#!/bin/sh
QMAILDUID=qmaild
NOFILESGID=nofiles
/usr/local/bin/tcpserver-H-R-l0-t1-v-p-x/var/vpopmail/etc/tcp.smtp.cdb-u
$QMAILDUID-g$NOFILESGID0smtp/usr/local/bin/rblsmtpd-
rcblplus.anti-spam.org.cn/var/qmail/bin/qmail-
smtpdhostname/var/vpopmail/bin/vchkpw/bin/true/bin/cmd5checkpw/bin/true2
>&1|/var/qmail/bin/sploggersmtpd3&