我最近将多台服务器从 Windows 2008 R2 升级到了 Windows Server 2019。其中 2 台服务器需要 SMTP,我在两台服务器上都安装了该功能,但是,1 台服务器运行正常,而第 2 台服务器上的电子邮件却卡在队列中,从未被发送/发布。
我找到了这篇文章(我希望它能解决我的问题,但它仍然存在): Windows Server 2019 内置 SMTP 服务器:电子邮件卡在队列中,事件日志中显示“远程服务器未响应连接尝试”
查看事件日志后,我发现了 SMTPSVC 的以下警告消息: 由于以下原因,将消息传送到主机“xxx.xxx.xxx.xxx”时失败,而将消息传送到远程域“domainname.com”时失败:发生 SMTP 协议错误。
我可以使用以下 PowerShell 脚本发送邮件,但通过 .NET 应用程序和网站发送的电子邮件未被发布。
发送邮件消息-SMTP服务器本地主机-至[电子邮件保护]-从[电子邮件保护]-主题“SMTP 测试”-正文“通过 PowerShell 进行电子邮件测试”
还有其他人处理过 Windows Server 2019 上的 SMTP 问题吗?任何想法或其他资源都将不胜感激。
更新
通过 PowerShell 发送邮件继续有效,但是通过 ASP.NET webforms/apps 发送邮件似乎无法连接。运行 Wireshark 跟踪,当通过 .NET 应用发送邮件时没有 SMTP 活动。我的 SMTP 日志如下:
18:24:14 127.0.0.1 邮件-250
18:24:14 127.0.0.1 RCPT-250
18:24:14 127.0.0.1 数据 - 250
18:25:48 127.0.0.1 退出 - 240
邮件已生成,但它只是留在队列文件夹中,并且从未被发送。
目前,.NET 应用程序设置为连接到本地主机,我也尝试将其更新为 127.0.0.1。
答案1
就我的情况而言,结果是 AWS 阻止电子邮件离开服务器。
“重要提示:Amazon Elastic Compute Cloud (Amazon EC2) 默认限制所有 EC2 实例在端口 25 上的 Amazon Virtual Private Cloud (Amazon VPC) 出站流量。如果您的应用程序需要 SMTP 端口 25 上的流量,您可以请求删除此限制。”