我正在运行Windows Server 2008 R2,但我从一些域名中删除了smtp邮件。
为了测试它,我将文本文件放入C:\ inetpub \ mailroot \ Pickup目录,如下所示:
From: my@emailaddress.com
To: someone@somewhere.com
Subject: testing
This is a test
它会发送到某些域名,但有些域名正在返回:
Reporting-MTA: dns;DEDICAT-93I3U5A
Received-From-MTA: dns;DEDICAT-93I3U5A
Arrival-Date: Wed, 8 Aug 2012 12:50:58 +0100
Final-Recipient: rfc822;someone@somewhere.com
Action: failed
Status: 5.5.0
Diagnostic-Code: smtp;550 Access denied - Invalid HELO name (See RFC2821 4.1.1.1)
我知道这可能与服务器上的smtp设置(IIS 7.5)有关。 有人可以给我一些建议吗?
谢谢,
安迪。
答案 0 :(得分:9)
某些SMTP服务器要求您使用HELO命令发送有效的主机名,该命令也与请求所源自的IP地址的反向DNS相同。
您可以通过旧的IIS6管理控制台配置IIS SMTP服务器使用的主机名。为此,请选择SMTP服务器,右键单击并选择Properties
,转到选项卡Delivery
,然后单击按钮Advanced
。
您的IP地址的反向DNS通常由您的ISP控制。
答案 1 :(得分:0)
FWIW,我在使用hMailServer时遇到了同样的问题,并找到了配置说明here。为了其他hMailServer用户的利益,这里是您需要设置的字段:
答案 2 :(得分:0)
请尝试使用 TLS 启用 SMTP 身份验证
spring.mail.properties.mail.smtp.starttls.enable=true
spring.mail.properties.mail.smtp.starttls.required=true
spring.mail.properties.mail.smtp.auth=true
答案 3 :(得分:-1)
这是解决问题的方法。
在创建会话之前设置Authorization property
,如下所示。
properties.put("mail.smtp.auth", "true");