服务器 频道

qmail的防垃圾邮件处理

  【IT168 服务器学院】最近发现公司的邮件服务器进来很多垃圾邮件,有色情的,广告的,特别是那些有颜色的,一发就是好多封,真是讨厌,没办法,马上在自己的qmail服务器上加上防止垃圾邮件的措施。

  1。封ip

  针对有些垃圾邮件发送方是固定的ip或者固定ip段,那我们可以限制他们的smtp连接

  vi tcp.smtp

  218.61.128.61:deny

  限制218.61.128.61的机器跟我的qmail服务器有任何smtp的连接
  或者:

  218.61.128.:deny

  禁止218.61.128网段的机器跟我的qmail有任何的smtp连接。

  然后

  tcprules tcp.smtp.cdb tcp.smtp.tmp < tcp.smtp

  生成新的tcp.smtp.cdb

  当然你也可以通过iptables来限制smtp端口的连接。

  2。封某个帐号

  主要针对某些比较正规的垃圾邮件发送者

  vi /var/qmail/control/badmailfrom

  编辑/var/qmail/control/badmailfrom文件(如果没有可以新建一个)将要拒收的邮件地址写入,每条记录为一行如:
      

  123@123.com

  这样所有FROM来自123@123.com的邮件都会被邮件服务器拒收。

    同样也可以对一个域进行拒收,在badmailfrom文件中加入
      

  @test.com

  这样所有来自test.com的任何地址的电子邮件都会被服务器拒收。

  3。设置.qmail-default文件

  vi /var/qmail/alias/.qmail-default

  /var/vpopmail/bin/vdelivermail '''' bounce-no-mailbox

  这样垃圾邮件发过来,如果是一个不存在的邮箱,会自动弹回邮件,并告知no this mailbox

  4。使用第三方的rbl服务,其实就是利用dns反查询,可以防止有些人自架mail server发垃圾信的行为。

  我用的是中国反垃圾邮件联盟的CDL+DNS反查询方式的实时黑名单技术,这个服务是免费的,但必须申请才能使用

  申请服务后,在你的SMTP启动脚本,加上/usr/local/bin/rblsmtpd,如下

  #!/bin/sh

  QMAILDUID=qmaild
  NOFILESGID=nofiles

  /usr/local/bin/tcpserver -H -R -l 0 -t 1 -v -p -x /var/vpopmail/etc/tcp.smtp.cdb -u $QMAILDUID -g $NOFILESGID 0
  smtp /usr/local/bin/rblsmtpd -r cblplus.anti-spam.org.cn/var/qmail/bin/qmail-smtpd hostname /var/vpopmail/bin
  /vchkpw /bin/true /bin/cmd5checkpw /bin/true 2>&1 | /var/qmail/bin/splogger smtpd 3 &

  继续补充中,将防垃圾邮件进行到底。。。。。
  

0
相关文章