如何强制 Windows Server 2008 R2 的 SMTP 服务器为不存在的本地用户生成 NDR?

如何强制 Windows Server 2008 R2 的 SMTP 服务器为不存在的本地用户生成 NDR?

我有一台启用了 SMTP 服务的 Windows Server 2008 R2 服务器,它为某些应用程序提供到另一台服务器的邮件中继服务。

有时,收到的邮件会带有错误的“收件人:”地址,该地址仅由一个没有 SMTP 后缀的单词组成,即 而someone不是[email protected]

发生这种情况时,服务器会将该消息视为发往其自己的虚假本地域(即)的邮件,[email protected]并将其放入其“Drop”文件夹中。

当然,someone服务器上没有用户,并且该地址显然无效;但是,服务器仍然会丢弃该消息,而不是发送 NDR,因为someone没有任何域后缀就不是有效的 SMTP 地址。

当收到这样的消息时,我如何强制该服务器发送 NDR?

答案1

看起来您描述的行为是 IIS 中 SMTP 服务的默认行为,并且无法更改:

http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/6bb0d71f-d3d7-4f59-aa01-4d5c022274a4.mspx?mfr=true

答案2

您无需在 SMTP 配置中添加额外的 somedomain.com 域,只需编辑默认域并将其更改为 somedomain.com 即可。您没有理由保留默认域。您甚至可以删除它,只保留您创建的域。

答案3

如果 SMTP 服务接受没有域部分的收件人地址,则违反了RFC 2822 第 3.4.1 节。在这种情况下,服务器不应该发送 NDR,而应该由于收件人地址格式不正确而立即拒绝 RCPT TO: 命令。

您可以考虑向 Microsoft PSS 提交一个支持案例来修复此问题。

相关内容