Chinaunix首页 | 论坛 | 博客
  • 博客访问: 103739209
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-04-24 21:48:00

作者: beasept     出自:
Postfix已经安装好了,Spamassassin也可以用了,现在的问题是怎么样把那些垃圾邮件移动到垃圾邮件箱,我准备用MAILDROP,我的POP软件以及SMTP认证都是用的Courier。

在ubuntu下安装maildrop非常简单。这里主要说说如何让Postfix\Courier\maildrop能相互工作起来。

第一步:配置Postfix的main.cf文件:
在main.cf文件里加入以下配置
maildrop_destination_recipient_limit=1
mailbox_command=maildrop
virtual_transport=maildrop(我用的是virtual mailbox)

第二步:配置Postfix的master.cf文件:
加入或替换原来的virtual
maildrop unix - n n - - pipe Flags=Fqhu user=vmail args=/usr/bin/maildrop -w 90 -d ${user}@${nexthop}${recipient}${user}${nexthop}${sender}

上面这段配置应在一行里,其中user=vmail(:groupname)是有权限读写Maildir的用户,args=/usr/bin/maildrop是maildrop程序位置,-w 90是做quota用的,也就是达到quota的90%,进入的邮件会被defer(延期处理),对于后面那些参数建议看postfix相关文档。

第三步: 配置Courier的authmysqlrc
因为原来已经基本配置好,我这里只改了一下SQL部分
MYSQL_SELECT_CLAUSE SELECT username,password,'','3000','3000',CONCAT('/media/maildisk/mail/',username),CONCAT('/media/maildisk/mail/',maildir),CONCAT(quota*1000000/1048576),' S'),name from mailbox where username='$(local_part)@$(domain)' and status='Acitve'

上面的SQL,其中两个3000表示虚拟用户的UID和GID,CONCAT('/media/maildisk/mail/',username)这个表示的是虚拟用户的HOME目录,CONCAT('/media/maildisk/mail/',maildir)表示的是Maildir,其实和前者是一样的,CONCAT(quota*1000000/1048576),' S')表示的QUOTA,因为我用的是postfixadmin创建邮箱的.在postfixadmin里1M=1024*1024=1048576,在maildrop里1M=1000*1000=1000000。

第四步:配置Maildrop的/etc/maildroprc文件
我最初没有加入maildrop规则,只是让他能工作,由于前面几个文件设置,我这里maildroprc文件看起来是这样的:

SHELL="/bin/sh"
DEFAULT=“/$HOME/”(如果使用 mbox格式,那你就不要加后面那个/,下同)
MAILDIR="/$HOME/"

现在所有的都配置好了,应该可以工作了

可以测试一下:authtest -s login

如果看到你想要的那些东西(比如HOME,MAILDIR,QUOTA等)那就说明正确了,发一封信测试一下,看看maillog里maildrop是否有报错或警告。
阅读(818) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~