qmail/vpopmail 拒收不存在的账户邮件的方法(弹回邮件)

Posted by NosaLee in UNIX/Linux on 09-06-2012.

作者:牧山道人
原文地址:http://www.seeksunslowly.com/qmail-vpopmail-拒收不存在的账户邮件的方法-弹回邮件
转载请注明出处,谢谢。
_____________________________________

 

前段时间买了 Linode VPS,使用 Kloxo 套件配好了主机(可参见我也来分享一下最近耍Linode VPS + Kloxo 的经历文章)。

Kloxo 自带的邮件服务器是 qmail + vpopmail,几乎没有作额外配置,直接可用,挺好。

但是,有个问题很严重,一直困扰着本道:

自从用了 qmail + vpopmail,天天要接收数百封额外垃圾邮件,原因就是某些利用此漏洞的垃圾邮件发送者会发送大量邮件到并不存在的邮箱账户,而我又不想漏掉任何邮件(怕有自己的弹回邮件发到这里,或 mail 函数发送的弹回邮件),所以一直使用 postmaster 账户来接收这些邮件。

今天因为外出了 8 小时,一开电脑,肏,postmaster 账户接收了 200 多封垃圾邮件,比如我的域名是 tssi.com,这些不存在的邮箱通常为 info@tssi.comoffice@tssi.comfinancial@tssi.com 等等。

要是我休假,10 天不开电脑呢?那不是要折腾死个人。

所以,问题很严重,必须解决。

通过参考大量资料及尝试,以及阅读 qmail/vpopmail 源码,最终找到了解决方法(过程您不用知道了,没多大意思):

找到对应域名下 .qmail-default 文件(注意是隐藏文件,如果是用的 kloxo 套件,一般在 /home/lxadmin/mail/domains/tssi.com 目录下;如果没用 kloxo,一般在 /var/vpopmail/domains/tssi.com 目录下。注意 tssi.com 要换成你的域名。),vi 之,增加新行

| /home/lxadmin/mail/bin/vdelivermail ” bounce-no-mailbox

解释一下:| 是格式,您还是带着吧,/home/lxadmin/mail/bin/vdelivermail 是邮件投递程序,’’ 表示无主账号,即不存在的邮箱账户或称无效邮箱、无效邮址、无效用户,bounce-no-mailbox 表示对无主账户要采取的操作,如果你英语还行,应该知道就这是弹回邮件,具体表现形式为:发送者会收到类似如下格式的退信,我让你发,我让你发!

收件人邮件地址(info@tssi.com)不存在,邮件无法送达。
host mail.tssi.com[##.11#.#7.#9#] said: 511 sorry, no mailbox here by that name (#5.1.1 – chkuser) (in reply to RCPT TO command)

注意:

1、如果 .qmail-default 中已有对无主邮件 的处理,请删掉,换成上述内容。

2、如果在上述两个路径中都找不到 .qmail-default 文件,请用命令查找一下:

cd /

find . -name ".qmail-default"

3、/home/lxadmin/mail/bin/vdelivermail 要换成你的邮件投递程序所在正确路径,不用多说,聪明的你一定知道如何定位 vdelivermail 程序的。

4、也可以把 bounce-no-mailbox 换成 delete,直接删除这些邮件,但这样不太友好,不建议使用。

经过测试,该方法完全可行(上例的退信就是我测试的结果)。现在,世界终于清静了~~

Post a comment