[转] 用maildrop实现域过滤规则

2009-05-13 05:16:52来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


用maildrop实现域过滤规则
[入库:2005年9月21日]  [
来源
]

本文简介:
时候整个域的管理都要用到过滤规则.琢磨了一下,把我的实现方法整理出来,请大家指正.
先安装maildrop,不重复了
进入域所在目录
cd /home/vpopmail/domains/xxx.com
编辑.qmail-default
文件

vi .qmail-default
内容为:
|/usr/local/bin/maildrop ./.mailfilter
| /home/vpopmail/bin/vdelivermail ' bounce-no-mailbox
建立过滤规则
文件
.mailfilter
vi .mailfilter
内容请参考
http://www.chinaunix.net/jh/14/192282.html
但有点注意,此时内容最后不能加to "./Maildir/"(在单用户中是为了把不符合过滤规则的信件发到用户目录里,而现在不符合过滤规则的信件是要去执行.qmail-default的| /home/vpopmail/bin/vdelivermail ' bounce-no-mailbox这句话)
同样注意.mailfilter的属性
chmod 600 .mailfilter
chown vpopmail:vchkpw .mailfilter
这样通常情况下,就会对整个域做过滤了.但这里有个小问题.假如某个用户做了转发或者别名的话,域目录下会生成.qmail-user
文件
,这样该用户邮件到达时,就会去执行.qmail-user
文件
的内容,导致无法进行过滤.
所以需要注意的就是,在设置别名或转发的时候,要在生成的.qmail-user
文件
里也加上这一句
|/usr/local/bin/maildrop ./.mailfilter
保证邮件先进行过滤再分发到用户目录,这样就可以实现了.
假设qmail虚拟域为wangxu.com,现要整个域针对主题包含test的邮件进行过滤拦截,被过滤拦截的邮件均保存在/home/vpopmail/domains/wangxu.com/spammail目录下,以msg.* 命名的
文件
中,具体实现过程如下:
1、cd /home/vpopmail/domains/wangxu.com/
touch .procmailrc
chown vpopmail:vchkpw .procmailrc
mkdir spammail #被过滤
文件
的存放处
chown vpopmail:vchkpw spammail
touch /var/log/procmail.log
chown vpopmail:vchkpw /var/log/procmail.log
建立.procmailrc
文件

vi .procmailrc
[code:1:31f83bb3df]MAILDIR=./
VERBOSE=off
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
LOGFILE=/var/log/procmail.log
:0:
* ^Subject:.*test
./spammail/ [/code:1:31f83bb3df]
注意这里.和
http://www.chinaunix.net/jh/14/194261.html
相比较,会发现域过滤的.procmailrc少了
[code:1:31f83bb3df]:0
*
./Maildir/[/code:1:31f83bb3df]
这一段代码
2.
修改.qmail-default
文件

joe .qmail-default
| preline /usr/local/bin/procmail -t ./.procmailrc
| /home/vpopmail/bin/vdelivermail ' bounce-no-mailbox
针对以上信息,
系统
可以对wangxu.com整个域所接收的邮件进行主题含有test的邮件过滤和拦截.
可以和
http://www.chinaunix.net/jh/14/195027.html

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:gnome分辨率

下一篇:FreeBSD下Mount总结