Windows Server 2012 R2 SMTP服务器测试:EHLO命令未被识别报错求助
解决SMTP测试中EHLO命令报错的问题
问题原因
你看到的报错说明**EHLO命令是在PowerShell/命令提示符的主界面输入的,而非telnet的交互会话内**。Windows的Shell会把EHLO识别为系统命令,但这个命令并不存在,所以抛出错误。本质是你没有成功进入telnet连接SMTP服务器的交互环境。
解决步骤
1. 确保Telnet客户端已安装
Windows Server 2012 R2默认未安装Telnet客户端,先完成安装:
- 打开服务器管理器,点击添加角色和功能
- 一步步走到功能选项卡,找到Telnet客户端并勾选
- 完成安装后重启命令提示符
2. 正确进入Telnet交互会话测试SMTP
- 打开命令提示符(Cmd)(建议不用PowerShell,避免混淆)
- 输入命令:
telnet localhost 25- 如果连接成功,界面会切换到无提示符的空白窗口(这就是telnet的交互环境)
- 在这个空白窗口中输入:
EHLO localhost(或你的服务器主机名)- 正常情况下会收到SMTP服务器的响应,类似:
250-servername Hello [127.0.0.1], pleased to meet you
- 正常情况下会收到SMTP服务器的响应,类似:
3. 若Telnet连接失败的额外排查
- 检查SMTP服务状态:打开服务,找到
Simple Mail Transfer Protocol (SMTP),确保服务处于运行中 - 检查防火墙规则:在Windows防火墙的入站规则中,添加允许TCP 25端口的连接规则
- 核对SMTP配置:打开IIS 6.0管理器(SMTP服务器在IIS6里管理),确认服务器绑定的IP包含
127.0.0.1,且未限制特定IP访问
内容的提问来源于stack exchange,提问作者Justin
相关产品推荐
相关产品推荐

