postfix header_checks忽略一些规则

postfix忽略了header_checks上的一些规则。

此行可以拒绝来自给定.tld域的任何电子邮件:

/\.tld$/ REJECT TLD not accepted 

但是这个不起作用:

 /^From:.*\.tld$/ REJECT TLD not accepted 

如果通过邮差testing,两个规则都是一样的:

 postmap -q "From: [email protected]" pcre:/etc/postfix/header_checks 

拒绝TLD不被接受

如果我使用尖括号testing曾经失败:

 postmap -q "From: Test <[email protected]>" pcre:/etc/postfix/header_checks 

如果我使用以下电子邮件客户端发送testing:

 Some Name <[email protected]> 

对我的服务器的用户,第一条规则是拒绝电子邮件传递,但第二个不是。

我猜在使用尖括号时会失败,因为postfix在分析expression式时会忽略它们,但是我不明白为什么第一条规则会拒绝邮件,而第二条规则不会。

当然,我可以使用第一条规则,但是会拒绝包含该tld的任何电子邮件,而不仅仅是当它来自:

有人build议?