在通过sendmail和procmail处理入站电子邮件时,我无法将procmail日志条目与sendmail的maillog条目匹配。 Sendmail将队列ID发布到日志中。
是否有sendmail方法将邮件队列的“ Message-queue-id”添加到自定义标头,然后将其捕获到procmailrc中以用于将其发布到procmail的日志输出条目中?
例如,我们只是删除spamassassin标识为垃圾邮件的邮件,但由于缺少通用标识符,因此无法将其追溯到sendmail日志条目。
答案 0 :(得分:2)
我还想学习如何使Sendmail添加仅包含消息队列ID的自定义标头。在此之前,我将通过解析添加的Received:
标头来帮助自己,该标头在“ id”之后显示ID。这是Procmail食谱提取ID的模板:
:0
* ^Received: .*by myserver.example.net \(.*\) with [a-z]+ id \/[0-9a-z]+
{
QID="$MATCH"
LOG="Message queue ID = $QID ..."
}
您可能需要调整服务器(= myserver.example.net)添加的Received
标头的实际格式。 \/
特定于Procmail的正则表达式解析器。它不匹配任何内容,它只是分割模式并将匹配的任何内容分配给变量MATCH
。