Chrome 41 ERR_SSL_VERSION_OR_CIPHER_MISMATCH Tomcat 7

Chrome 41 ERR_SSL_VERSION_OR_CIPHER_MISMATCH Tomcat 7

由于我已将 Chrome 从版本 40 更新到版本 41,我无法再在本地 tomcat 7 实例中访问我的 ssl 站点 运行。我有一个自签名证书。

Chrome 只打印 This webpage is not availableERR_SSL_VERSION_OR_CIPHER_MISMATCH.

我已经尝试过 chrome://flagsMinimum SSL/TLS version supported 切换为 SSLv3,但没有用。

我怀疑是 SSL/TLS 协议版本问题。大多数情况下,此错误意味着服务器和客户端无法就使用哪种密码达成一致。查看此博客 post:https://blog.eveoh.nl/2014/02/tls-ssl-ciphers-pfs-tomcat/,了解如何在 Tomcat.

中启用安全且兼容的密码套件

我的 Java EE Web 应用程序 运行 Wildfly 8.1 上的自签名证书也有同样的问题。

您可能将 1024 位 DSA public 密钥与您的自签名证书一起使用,并且 Chrome stops/stopped 支持 DSA(DSS)。

创建 RSA 2048 证书并将其用于您的 Web 应用程序应该可以解决您的问题。

在 Tomcat server.xml 文件中,您可以在 SSL/TLS <connector/> 元素中设置 ciphers 属性。

ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, 
         TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
         TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,
         TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
         TLS_ECDHE_RSA_WITH_RC4_128_SHA,
         TLS_RSA_WITH_AES_128_CBC_SHA256,
         TLS_RSA_WITH_AES_128_CBC_SHA,
         TLS_RSA_WITH_AES_256_CBC_SHA256,
         TLS_RSA_WITH_AES_256_CBC_SHA,
         SSL_RSA_WITH_RC4_128_SHA"

这解决了我在 Chromium 中的 ERR_SSL_VERSION_OR_CIPHER_MISMATCH / Chrome 和 Firefox 中的 ssl_error_no_cypher_overlap 的问题。

如果您是从 Google 来到这里并且因为这是排名最高的 'ERR_SSL_VERSION_OR_CIPHER_MISMATCH' 条目:

另一种解释是您使用无效或空凭据启动了 nodejs https 或 express 服务器。令人恼火的一点是,服务器启动时没有任何抱怨,而且 ssl 似乎可以正常工作,但浏览器和服务器之间的协商失败并出现此错误。