为什么 iredmail 中的 restrict_null_sender 会拒绝有效的退回?

为什么 iredmail 中的 restrict_null_sender 会拒绝有效的退回?

iRedMail 中的插件reject_null_sender表明了它的用途:

拒绝由 sasl 认证用户提交但在“发件人:”标头中指定空发件人(Postfix 日志中的 from=<>)的消息。

但代码实际上表示拒绝任何一个发件人或者SASL 用户为空。这实际上会拒绝一些有效的退回邮件。

根据 RFC 5321:

如果 SMTP 服务器接受了中继邮件的任务,后来发现目的地不正确或由于其他原因邮件无法送达,则它必须构建“无法送达的邮件”通知消息并将其发送给无法送达邮件的发件人。

(...)

当传输这样的消息时,反向路径必须设置为空(有关更多讨论,请参阅第 4.5.5 节)。具有空反向路径的 MAIL 命令如下所示:

  MAIL FROM:<>

这是 iRedMail 的一个错误吗?是否还有其他关于没有 SASL 认证用户的空发件人的问题?

答案1

在与插件作者的私人电子邮件中reject_null_sender,他确认这是一个错误并提供了一种解决方法。

该补丁(将在后续版本中引入)可见于:https://bitbucket.org/zhb/iredapd/commits/255a7ad5daaa6b0d87890e1d4826737fcc6bbad7

相关内容