免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2613 | 回复: 2
打印 上一主题 下一主题

[Mail] Postfix 调用Maildrop的经验和个人理解。 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2006-08-31 11:01 |只看该作者 |倒序浏览
根据相关文档,安装了Postfix做MTA,使用Maildrop做为MDA,OpenLDAP存放数据,Courier-IMAP和Courier-Authlib。但是在实施的时候发现Postfix和Maildrop之间的配合还是需要注意一下问题的。

1、Postfix收到信,会检查to=<test@test.com>,这个Email地址就是参数recipient,然后根据这个是localuser还是Virtual User,还有main.cf中的mailbox_command,virtual_transport等设置,选择使用自带的local MDA还是maildrop来实现Mail Delievery。

2、如果是自带的virtual来投递localuser的email,也就是在maillog中可以看到的relay=local,那么会自动识别这个Email地址中的前面部分为localuser,进行投递。

3、如果是Virtual_mailbox,而且设置了Virtual_transport,会调用在master.cf中定义的transport具体的命令参数进行投递。我就是在这里出的问题,默认是${recipient},就是email地址。但是我的后台authlib是用uid进行认证,就是用户输入的是@前面的部分。这样Maildrop投递前会使用Email地址查询OpenLDAP,而authlib中把Email地址认为是UID进行查询,结果是出现最常见的“Invalid User Name:user unknown”。

这个问题有两种解决方法:
一是修改authlib的定义,使用email地址进行认证,这样,用户如果通过pop3或imap收取邮件,或是使用smtp认证,需要输入的是email地址,而不是uid用户名。
二是修改master.cf中的maildrop设置,命令行参数最后使用 ${user},而不是${recipient},这样maildrop会使用@前面的用户名进行用户的查询。

通常,如果只有一个虚拟域在使用,可以使用第二种方法,使用用户名认证。而如果一台Postfix提供多个虚拟域的Mail服务,因为存在不同域同样用户名的情况,就需要使用第一种方法了,这样,用户需要使用Email地址来进行登录认证了。

还有一些关于Postfix调用maildrop的方法。根据Postfix的文档,Maildrop 的调用分为“直接调用”和“间接调用”,
上面我们指定Virtual_transport的方法,就是直接调用,Postfix本身不参与邮件投递的工作,只负责Virtual_mailbox的查询工作,而完全由Maildrop来查询用户的Maildir信息,然后进行投递。这种方式无法使用系统的Aliases别名文件,使用于虚拟域。

还有一种“间接调用”,也就是通过指定main.cf中的mailbox_command = /yourpath/maildrop -d ${USER}来实现邮件的投递。这种方式的效率稍低,因为要进过本地的local transport再使用maildrop,但是好处是可以识别本地的Unix系统帐户等信息,也可以针对$mydestination中的域进行工作。

下面要研究一下Maildrop创建maildirsize的问题了

论坛徽章:
0
2 [报告]
发表于 2006-08-31 12:15 |只看该作者
原帖由 我家老婆最美丽 于 2006-8-31 11:01 发表
根据相关文档,安装了Postfix做MTA,使用Maildrop做为MDA,OpenLDAP存放数据,Courier-IMAP和Courier-Authlib。但是在实施的时候发现Postfix和Maildrop之间的配合还是需要注意一下问题的。

1、Postfix收到信 ...


2.中,local投敌应该是local,不是virtual 估计楼主笔误了。

顶1下LZ,写得不错

论坛徽章:
0
3 [报告]
发表于 2006-08-31 12:55 |只看该作者
确实是笔误,记忆中在Maillog显示的是relay=virtual,后来才确认是local,改了后面一个,前面的忘了改。

有人顶的感觉不错。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP