我的per user transport配置小howto
在postfix没有release 2.0.0之前这个per user transport的功能只出现在snapshot里,现在好了可以在正式版里使用了。本文所描述的方法适合在:postfix stable > 2.0.0.0或snapshot version > 1.1.11-200205xx 的。
1.描述
什么是per user transport?有什么用?简单来说就是可以为每个用户设置单独的transport,类似原来1.1.x里的domain transport一样,只不过现在的key可以是user+extension@domain.tld了。好处是什么?好处就是可针对不同用户设置特定的transport,例如有些用户使用默认的local transport,而有些则可以使用病毒过滤或maildrop功能,甚至将用户送到nexthop继续进行处理等。可能的应用:病毒过滤、关键字过滤、垃圾邮件过滤、邮件的物理分布或转发等。
自己的感觉:这个功能就类似qmail里的qmqp(中央队列服务器<-->qmtpd/qmqpd机器)或者类似qmail-ldap里的cluster功能。而且要强大得多!!qmail的qmqp/qmtp协议设计得很好,思路也很不错,不过具体的implemenation就不够好。使用postfix可享受最大的灵活性。
心理暗自想:如果postfix能考虑完整的实现一下qmail的qmqp/qmtp等不错的东西,以及吸取qmail的一些优点的话,那么qmail真的就该die了:))西西。。
2.配置思路#
# +-------+
# local | |
# handling | MTA1 |
# layer | |
# +-------+
# ^ foo-lvs.hzqbbc.com
# |
# +--------+ +------+
# +------+ | | | |
# inbound | mail | ----> | switch |-----> | MTA2 | bar-lvs.hzqbbc.com
# email +------+ | | | |
# +--------+ +------+
# 邮件交换 local handling layer 将不同用户的邮件switch到不同的机器,达到分布的目的。配置方法见下文。 |