如何利用qmail防止垃圾邮件[3]

[入库:2005年9月21日] [更新:2007年3月24日]

本文简介:

使用标记的邮件和特殊专有的电子邮件地址,你可以使用多种方法来标记邮件。



Tagged messages can mean several different things.
标记邮件意味着几件需要注意的事情。



  一种比较有争议的作法是,用户在使用邮件投递服务器之前,必须先发送一份邮件到服务器,经过服务器的地址认证之后,该用户就可以使用这台服务器继续发送他的邮件了。这种方法在用户的发送地址有效期内是比较方便的,特别对于一些漫游用户,既能保障安全又不会太过麻烦。



  如果是在黑名单上的地址发送邮件,就需要通过特殊的密码段,确保服务器不会将你的邮件当作垃圾邮件丢弃。如果代发邮件来自一些新闻组站点,那就在你的代发邮件中使用过期属性,以保证邮件投递能够正常执行。




以下是一些资源链接:



SpamBouncer has a mechanism for tagged messenging
Thomas Erskine wrote tms (Tagged Message Sender), which also does this.
Jason R. Mastaler has taken tms and extended the project into Tagged Message Delivery Agent.
Brett Randall has developed an avoidance technique especially for users participating in usenet and mailing list discussions.



VIII. qmail系统管理员的选择



  这个部分的章节主要讨论系统管理员如何在系统范围内有效的阻止垃圾邮件现象。首先必须注意的是,你先要考虑前面提出的几类问题,并且心里有数,有把握解决。因为你的任何一个改动系统的行为,都有可能导致正常用户的收发邮件失效。



拒绝来自非法DNS服务器的SMTP请求



  在诸如FreeBSD或者Linux这样的类UNIX系统中,都包含了某些公用标准以阻止那些不符合网络协议的数据通过主机。典型的就是“基于主机名字访问控制”了。而这个机制主要是通过著名的tcp_wrapper包实现的。在某些情况下,DNS没有正确地配置,导致主机名被不正确的绑定在ip地址上,而这样的主机名在系统中却被认为是非法的。如果你是不幸的用户,使用了这样的主机发送邮件,就会被误认为是垃圾邮件而丢弃。



  假如你是用inetd服务进程在freebsd里进行操作,并且你的 /etc/hosts.allow 含有这样的东东:



  ALL : PARANOID : RFC931 20 : deny



  你也可以使用ucspi-tcp软件包中的的tcpserver(推荐使用这种方法代替inetd处理邮件发送),如下:



  tcpserver -p -v -x/etc/tcp.smtp.cdb -u1007 -g1007 0 25 \
  qmail-smtpd 2>&1



使用你的SMTP守护进程拒绝已知的垃圾邮件
Using your SMTP daemon to reject "known" spammers



  在 ucspi-tcp 包中有一个tblsmtpd工具,可以和包括qmail-smtpd这样的标准SMTP服务器一同使用。
package there is the rblsmtpd package, an alternative to the usual qmail-smtpd, and works with any SMTP server that runs under tcpserver.



  如果你使用了 Life With Qmail这篇著名的文章来指导你的安装的话,你会有类似下面的教本代码。脚本位于:
  /var/qmail/supervise/qmail-smtpd/run
  内容:



#!/bin/sh
QMAILDUID=`id -u qmaild`
NOFILESGID=`id -g qmaild`
MAXSMTPD=`cat /var/qmail/control/concurrencyincoming`



exec /usr/local/bin/softlimit -m 2000000 \
/usr/local/bin/tcpserver -v -p -x /etc/tcp.smtp.cdb -c "$MAXSMTPD" \
-u "$QMAILDUID" -g "$NOFILESGID" 0 smtp \
/usr/local/bin/rblsmtpd /var/qmail/bin/qmail-smtpd 2>&1



  需要注意的是,上面的脚本是用了更新版本的rblsmtpd,如果使用的是早期的qmail就必须也采用匹配版本的服务工具包。当然,升级你的软件包是值得的。



  如果你仍在使用inetd守护进程,你也可以使用qmail在这样的环境下有效的进行垃圾邮件控制;或者你需要用SmallWorks的RBL软件来升级tcp_wrappers 。



  如果你想在RBL里面使用ORBS数据库(或者其他可通过DNS访问的数据库),你可以打开 "-r" 开关来加入新的数据库



rblsmtpd -rrelays.orbs.org -rrbl.maps.vix.com



  Mike Silbersack 说 "如果你想要使用 *.mail-abuse.org 的漏洞列表, 你需要升级你的rblsmtpd,使他运行在具有A记录的域名上。"



使用qmail-smtpd拒绝带有非法信封和"From"头部的邮件

本文关键:如何利用qmail防止垃圾邮件
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top