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