我在Apache服务器的配置中使用了这些协议。
SSLProtocol -ALL -SSLv3 +TLSv1.2我已经配置了以下SSLCipherSuite:
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCMSHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCMSHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSAAES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSAAES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSAAES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK我使用这里描述的脚本https://superuser.com/questions/109213/how-do-i-list-the-ssl-tls-cipher-suites-a-particular-website-offers来获取实际密码的列表:
Testing ECDHE-RSA-AES256-SHA384...YES
Testing ECDHE-RSA-AES256-SHA...YES
Testing DHE-RSA-AES256-GCM-SHA384...YES
Testing DHE-RSA-AES256-SHA256...YES
Testing ECDHE-RSA-AES128-GCM-SHA256...YES
Testing ECDHE-RSA-AES128-SHA256...YES
Testing DHE-RSA-AES128-GCM-SHA256...YES
Testing DHE-RSA-AES128-SHA256...YES服务器端可以使用CipherSuite中没有列出的密码进行通信吗?例如,服务器端可以使用此DES-CBC3-SHA密码进行通信吗?
我问不同的问题。一位使用我们客户的人声称我们使用了DE-CBC3-SHA。我相信这是不可能的,但我会很高兴得到确认。
发布于 2017-02-20 15:21:02
简而言之:客户端提供了它喜欢在TLS握手的ClientHello消息中使用的密码。服务器根据服务器端配置的内容选择其中一个密码。这意味着当服务器端没有配置密码时,服务器将不会从列出的客户端选择密码。
因此,从理论上讲,你所描述的事情不可能发生。在实践中,如果您查看一台服务器的配置,但客户端实际上连接到另一台服务器,则可能发生这种情况。例如,这可以是一个SSL终端负载均衡器,它可能再次用SSL将客户端流量转发给您,但其中SSL握手是在负载平衡器和客户端之间完成的,而不是您的服务器和客户端之间的。在这种情况下,您的配置并不重要,但是从客户端的角度来看,负载平衡器配置是相关的配置。
https://security.stackexchange.com/questions/151796
复制相似问题