“SSL23_GET_SERVER_HELLO:unknown protocol” Error Tr

2019-02-23 14:33发布

问题:

I'm trying to send emails from an Outlook account in my iOS application. I'm using Mailcore2 and Outlook's Live-SDK. I am able to receive emails, but get an error when I try to send emails: "a stable connection to the server could not be established".

To investigate the issue, I went into the terminal and tried to connect via SSL:

openssl s_client -crlf -connect smtp-mail.outlook.com:587

The response I got back was:

error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown  protocol:/SourceCache/OpenSSL098/OpenSSL098-50/src/ssl/s23_clnt.c:607

I don't know exactly what this error means, after a bit of searching I found that a common response to this issue was that the server I am trying to reach may not support a necessary SSL protocol. This site: http://foundeo.com/products/iis-weak-ssl-ciphers/test.cfm allows you to test which SSL protocols are enabled for a particular domain. Using this I found that SSLV2 is disabled and SSLV3 is also disabled.

I not clear on what all this means or what I might need to do to connect to this server. Any help is appreciated.

回答1:

SMTP connections to port 587 starts unencrypted. Encryption may be turned out later using STARTTLS command in SMTP session if server supports it.

openssl supports STARTTLS for some protocols including SMTP. It requires -starttls smtp command line options as described in https://stackoverflow.com/a/14645854/2139766


Outlook.com does not seem to support smtps: http://windows.microsoft.com/en-us/windows/outlook/send-receive-from-app