必须先发出 STARTTLS 命令,但远程服务器上未启用 TLS

问题描述 投票:0回答:1

我在向某一特定电子邮件提供商发送电子邮件时遇到问题。我的邮件系统不断收到: #5.0.0 SMTP; 5.1.0 - 未知地址错误 530-'#5.7.0 必须首先发出 STARTTLS 命令'(传送尝试:0)> #SMTP#

当我尝试通过 telnet 连接到第一个 MX 记录时,我得到:

Connected to 46.255.225.8
Escape character is '^]'.
220 ***************************
EHLO testme
250-xxx.xxx.xx
250-8BITMIME
250-SIZE 52428800
250 XXXXXXXA
MAIL FROM "[email protected]"
530 #5.7.0 Must issue a STARTTLS command first
STARTTLS
500 #5.5.1 command not recognized

但是当我尝试时

openssl s_client -starttls smtp -ign_eof -crlf -connect 46.255.225.8:587

我超时(或者在没有连接的情况下无限等待),如果我尝试端口 25,它会失败,因为“不支持安全重新协商”。

但是,当我在线尝试 MXtoolbox 测试 smtp 服务器时,它可以从他们的部分开始工作: 连接到 46.255.225.8

220 antispam111.centrum.cz ESMTP [270 ms]
EHLO keeper-us-east-1d.mxtoolbox.com
250-antispam111.centrum.cz
250-8BITMIME
250-SIZE 52428800
250 STARTTLS [222 ms]
MAIL FROM:<[email protected]>
250 sender <[email protected]> ok [260 ms]
RCPT TO:<[email protected]>
550 #5.1.0 Address rejected. [220 ms]

最后,如果我使用

smtp.centrum.cz
代替上面的 MX ip,那么从我的机器上通过 telnet 一切都可以正常工作。我做错了什么以及如何解决它的任何提示?

email ssl smtp telnet starttls
1个回答
0
投票
250 XXXXXXXA

此行表明邮件服务器路径中间的某个人尝试通过从服务器对 EHLO 的响应中“删除”支持 STARTTLS 的指示来禁用 TLS。例如,这是 Cisco ASA 的已知行为。这样做是为了让客户端使用纯 TCP(无加密)来分析安全网关提交的任何邮件。

由于服务器不允许任何没有 TLS 的提交,这基本上使得从此类安全网关后面访问时该服务器无法使用。您在代码中对此无能为力。请咨询您的网络管理员这是否是预期的行为。

© www.soinside.com 2019 - 2024. All rights reserved.