我正在尝试配置 IIS 6 SMTP 服务器以发送出站邮件。我根据 Wikipedia 执行了以下 telnet 测试,并得到了以下以粗体突出显示的错误。
220 smtp.example.com Microsoft ESMTP MAIL 服务,版本:6.0。。准备好了
我:HELO smtp.example.com
Telnet:250 Hello smtp.example.com [127.0.0.1]
我:MAIL FROM:[电子邮件保护]
远程登录:250 2.1.0[电子邮件保护]好的
我:RCPT TO:[电子邮件保护]
远程登录:550 5.7.1 无法中继[电子邮件保护]
我正在使用默认的 SMTP 虚拟服务器配置。我需要进行任何配置更改来解决此错误吗?
谢谢阅读!
更新:该问题已通过使用机器的 IP 地址(而不是本地主机或 127.0.0.1)得到解决,感谢大家的回复。
答案1
如果您要直接从 IIS SMTP 服务器发送电子邮件,则无需配置任何中继设置。从自身发送出站电子邮件的服务器不是中继。您正在运行的测试正是您在尝试通过服务器从另一台主机发送电子邮件时所期望的(因为未启用中继)。IIS SMTP 是一个功能齐全的 SMTP 服务器,因此不需要中继配置,除非其他主机将通过它向外部域(非 IIS SMTP 服务器本地的域)发送电子邮件。同样,如果 IIS SMTP 服务器将从自身向外部域发送电子邮件,则不需要中继配置。
答案2
这不是错误。您的服务器告诉您,它已配置为不“中继”(即发送到另一台服务器)邮件。这通常很好。您不想将可以将邮件中继到任何地方的 SMTP 服务器连接到 Internet,因为垃圾邮件发送者会在很短的时间内找到它并开始使用它来代表他们发送电子邮件。
查看 SMTP 服务器属性的“访问”选项卡上的“中继...”设置。您可以指定允许中继的客户端的 IP 地址,并允许经过身份验证的用户进行中继(默认情况下已勾选)。
如果您绝对无法配置客户端进行身份验证,则允许它们通过 IP 地址或 IP 地址范围进行中继是可以接受的。允许全世界在连接到 Internet 的机器上进行中继是不可接受的,而且在我看来,在 LAN 上这样做也是不可接受的(尽管其他人的意见无疑会与我不同)。