在我们的服务器上,我们将policyd 1.x和Postfix 2.1.5一起用于灰名单,并从未经授权的用户(即我们的域名的邮件)强制实施传入配额。 为此,我build立了像这样的Postfix main.cf :
smtpd_restriction_classes = greylisting greylisting = check_policy_service inet:127.0.0.1:10031 ... smtpd_recipient_restrictions = permit_mynetworks, ... permit_sasl_authenticated, ... check_client_access pcre:/etc/postfix/checks/greylist.pcre,
并build立一个select性的灰名单configuration:
# greylist.pcre /^unknown$/ greylisting # TLDs with high spam rate /\.(ni|ru|hu|us|si|sk|cn|jp|ro|hn|mx|br|ar|cc|ae|ee|my|tr|pt|cz)$/ greylisting ... etc
即SASLauthentication覆盖了policyd。 到目前为止,这个工作很好。 不过,现在我想使用policyd来validation用户身份,并为这些用户设置完全不同的规则集:
对于一些未经授权的用户,基于远程主机名,
对于授权(SASL)用户,
到目前为止,我认为我必须运行不同的SQL数据库和configuration文件的另一个policyd实例。
这是真的还是有办法configuration单个policyd实例使用基于远程主机名和SASL身份validation状态的不同规则集?
在policyd v2(cluebringer)中是可能的。 您可以为每个策略定义规则(1个传入电子邮件策略,另一个传出策略,SASL另一个策略)。 然后,您可以为每个策略分配不同的policyd组件(grelist,SPF,配额)。