TLS协议协商

时间:2018-07-24 07:30:37

标签: ssl openssl tls1.2

我正在尝试使用某些特定的TLS版本配置来建立从客户端到服务器的SSL连接。服务器仅支持TLS 1.2。使用命令

从客户端连接时
openssl s_client -connect hostname:port -starttls smtp -no_tls1_1

连接未通过以下错误:

CONNECTED(00000003)
2166223176:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:815:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 121 bytes and written 193 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID: 
    Session-ID-ctx: 
    Master-Key: 
    Key-Arg   : None
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1532412081
    Timeout   : 300 (sec)
    Verify return code: 0 (ok)
---

在这里,即使客户端告诉您不要使用TLS 1.1,双方是否也不应该同意TLS 1.2?服务器端的数据包捕获表明客户端问候广告TLS 1.0。这是否意味着由于给出了no_tls1_1,服务器会认为客户端不支持TLS 1.1及更高版本(TLS 1.2)协议?

仅在客户端启用TLS 1.0和TLS 1.2而不启用TLS 1.1,并希望客户端成功连接到仅支持TLS 1.2的服务器是否正确?

是否有文档说明在这种情况下SSL握手实际上是如何发生的?

使用openssl版本1.0.2k。任何帮助表示赞赏。

0 个答案:

没有答案