![spamass-milter[1403]: 无法检索 sendmail 宏“i”!请将其添加到 confMILTER_MACROS_ENVFROM 以获得更好的 spamassassin 结果](https://linux22.com/image/778034/spamass-milter%5B1403%5D%3A%20%E6%97%A0%E6%B3%95%E6%A3%80%E7%B4%A2%20sendmail%20%E5%AE%8F%E2%80%9Ci%E2%80%9D%EF%BC%81%E8%AF%B7%E5%B0%86%E5%85%B6%E6%B7%BB%E5%8A%A0%E5%88%B0%20confMILTER_MACROS_ENVFROM%20%E4%BB%A5%E8%8E%B7%E5%BE%97%E6%9B%B4%E5%A5%BD%E7%9A%84%20spamassassin%20%E7%BB%93%E6%9E%9C.png)
我在 Raspberry Pi 上运行基于 Ubuntu 20.04 的 LEMP 服务器。它上面安装了 postfix/dovecot/amavis/spamassassin。当我通过运行以下命令查看我的 mail.err 日志时:
cat /var/log/mail.err
它返回以下错误:
spamass-milter[1606]: Could not retrieve sendmail macro "i"!. Please add it to confMILTER_MACROS_ENVFROM for better spamassassin results
spamass-milter[1420]: Could not retrieve sendmail macro "i"!. Please add it to confMILTER_MACROS_ENVFROM for better spamassassin results
spamass-milter[1595]: spamass-milter 0.4.0 starting
spamass-milter[1595]: Could not retrieve sendmail macro "i"!. Please add it to confMILTER_MACROS_ENVFROM for better spamassassin results
这些错误是什么意思?我该如何修复它们?
答案1
您的邮件过滤器需要 Sendmail 的一个属性,但是对于 Postfix 来说这并不正确。
正如记录在案的Postfix milter 自述文件的宏部分,milter 宏i
提供队列标识符,该标识符不会立即分配(参见smtpd_delay_open_until_valid_rcpt
配置),因此直到 SMTP 交换中的后续步骤之前,您的 spamass-milter 程序才可以使用它。
除了详细日志记录的目的之外,垃圾邮件过滤器根本不需要知道(任意分配的)QUEUE ID,因此如果它不会使您的监控复杂化,您可以放心地忽略此警告。
按照Debian 错误 #696856Debian(及其可能的衍生产品)现在发布了修补这消除了 spamass-milter 中的过早访问和伴随的警告。