Chrome 内部站点错误 "Server has a weak ephemeral Diffie-Hellman public key"

Chrome error "Server has a weak ephemeral Diffie-Hellman public key" for internal sites

Chrome 似乎在过去一周发布了更新。这导致我们至少有 50 个内部应用程序抛出如下所示的异常。我在 Internet 上研究过的解决方案是关于用更强的密码更新应用程序服务器。但是,我们的应用程序分布在 IIS、tomcat、jboss、weblogic 和 websphere 上。期望所有这些应用程序服务器都得到更新是不切实际的。没有办法让 Chrome 允许这些网站使用 "exception" 吗?由于这些站点都是内部站点,因此安全性并不是真正的问题。

显然,Firefox 会抛出相同的异常,但有针对该问题的记录修复(通过更改 Firefox 中的某些设置)。有没有人知道 Chrome.

中的类似修复

错误

Server has a weak ephemeral Diffie-Hellman public key

ERR_SSL_WEAK_SERVER_EPHEMERAL_DH_KEY

我找到了一个临时解决方法,应该禁用导致该错误的 Chrome 中的安全检查。不用说,您不想在浏览开放网络时使用它。

启动时尝试将以下命令参数添加到 Chrome:

--cipher-suite-blacklist=0x0088,0x0087,0x0039,0x0038,0x0044,0x0045,0x0066,0x0032,0x0033,0x0016,0x0013

我在 this google forum post 找到了这个解决方案。希望对您有所帮助!

虽然 Maximillian 的解决方法目前可能对您有用,但没有支持的方法来添加例外。 唯一安全的解决方案是升级服务器,一个不太脆弱的解决方法可能是在某些服务器前面放置更好的代理。

我发现这个问题是因为 App Server 上的 JDK 版本 运行。

如果您的 weblogic/apache 服务器 运行 在 java JRockit 版本“1.6.0_33”和“1.6.0_45”或更低版本上,您将面临这个问题。

解决方案是将 java 升级到更高版本,例如“1.6.0_101”及更高版本,然后重新启动应用服务器。

我没有升级 jrockit 但像这样配置 ssl 部分就解决了这个问题

<ssl>
    <enabled>true</enabled>
    <hostname-verifier xsi:nil="true"></hostname-verifier>
    <hostname-verification-ignored>false</hostname-verification-ignored>
    <export-key-lifespan>500</export-key-lifespan>
    <client-certificate-enforced>false</client-certificate-enforced>
    <two-way-ssl-enabled>false</two-way-ssl-enabled>
    <ssl-rejection-logging-enabled>true</ssl-rejection-logging-enabled>
    <inbound-certificate-validation>BuiltinSSLValidationOnly</inbound-certificate-validation>
    <outbound-certificate-validation>BuiltinSSLValidationOnly</outbound-certificate-validation>
    <allow-unencrypted-null-cipher>false</allow-unencrypted-null-cipher>
    <use-server-certs>false</use-server-certs>
    <jsse-enabled>true</jsse-enabled>
</ssl>

无法准确告诉您有什么不同,但它通过 chrome

解决了 SSL 上的许多不同问题