“SSL23_GET_SERVER_HELLO:未知协议”尝试访问 Outlook smtp 服务器时出错

jac*_*300 5 outlook openssl smtp sslv3 live-sdk

我正在尝试从 iOS 应用程序中的 Outlook 帐户发送电子邮件。我正在使用 Mailcore2 和 Outlook 的 Live-SDK。我能够接收电子邮件,但在尝试发送电子邮件时出现错误:“无法建立与服务器的稳定连接”。

为了调查这个问题,我进入终端并尝试通过 SSL 连接:

openssl s_client -crlf -connect smtp-mail.outlook.com:587
Run Code Online (Sandbox Code Playgroud)

我得到的回复是:

error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown  protocol:/SourceCache/OpenSSL098/OpenSSL098-50/src/ssl/s23_clnt.c:607
Run Code Online (Sandbox Code Playgroud)

我不知道这个错误究竟意味着什么,经过一番搜索,我发现对这个问题的一个常见反应是我试图访问的服务器可能不支持必要的 SSL 协议。此站点:http : //foundeo.com/products/iis-weak-ssl-ciphers/test.cfm允许您测试为特定域启用了哪些 SSL 协议。使用这个我发现 SSLV2 被禁用,SSLV3 也被禁用。

我不清楚这一切意味着什么,或者我可能需要做什么才能连接到该服务器。任何帮助表示赞赏。

AnF*_*nFi 5

到端口 587 的 SMTP 连接开始时未加密。STARTTLS如果服务器支持,可以稍后在 SMTP 会话中使用命令进行加密。

openssl支持STARTTLS某些协议,包括 SMTP。它需要-starttls smtp命令行选项,如 /sf/answers/1025209811/ 中所述


Outlook.com 似乎不支持 smtps:http : //windows.microsoft.com/en-us/windows/outlook/send-receive-from-app

  • 我能够使用 startTLS 从命令行进入: openssl s_client -starttls smtp -crlf -connect smtp-mail.outlook.com:587 谢谢! (2认同)