我希望 Postfix 记录“发件人”标头,以及电子邮件内容中的其他标头(而不是信封标头),以便评估传出电子邮件中的 DMARC 域对齐。
我知道使用header_checks
操作WARN
,但是我有其他 header_checks 规则,而且很难通过这种方式避免冲突。
还有什么其他选择?
答案1
您可以用您选择的语言编写邮件过滤器,并通过它传递您的邮件以获取该信息。
答案2
如果你需要 Postfix 的日志头信息,那么你可以访问 postfix 文档内容检查概述。该页面指出有四种选项可以进行内容检查
内置内容检查(队列前、内置、轻量级)
此选项包括 header_checks 和 body_checks。只需声明简单的正则表达式即可。不幸的是,正如您上面所说,这个选项有缺点,因为它们可能会干扰其他 header_checks。
队列后内容过滤器(队列之后,外部,重量级)
此选项可能会迫使您学习一些编程语言来完成这项工作。您可以通过 SMTP 或管道从 postfix 获取电子邮件。请参阅文档以获取一些示例。这一项可以与其他检查一起独立调用。
-
此选项可能会迫使您学习一些编程语言来完成这项工作。Postfix 使用 SMTP 与此内容过滤器通信。如果您不这样做,您可以使用 Bennett Todd 的 SMTP 代理,它实现了一个很好的 PERL/SMTP 内容过滤框架。请参阅:http://bent.latency.net/smtpprox/。这个可以与另一个检查独立调用。
队列前 Milter 应用程序(队列前、外部、中等权重)
此选项与 NickW 的建议相同。您需要了解 milter 协议并用某种编程语言实现它。这个可以与其他检查一起独立调用。