Java Firefox“;ssl“错误”无“密码重叠”;错误

Java Firefox“;ssl“错误”无“密码重叠”;错误,java,security,apache,firefox,ssl,Java,Security,Apache,Firefox,Ssl,我和我的同事在使用Firefox3.0.6访问我们正在开发的Java1.6.0\u11 web应用程序时遇到了问题。在会话开始的1-30分钟内,任何地方都可以正常工作……但最终,连接失败,出现以下错误: 安全连接失败 连接到10.x.x.x时出错。 无法与对等方安全通信:没有通用加密算法。 (错误代码:ssl\u错误\u无密码\u重叠) 他工作得很好。Firefox在Windows和Fedora中都会抛出错误,因此问题似乎与操作系统无关。JavaEE应用程序运行在Tomcat6.0.16服务器上

我和我的同事在使用Firefox3.0.6访问我们正在开发的Java1.6.0\u11 web应用程序时遇到了问题。在会话开始的1-30分钟内,任何地方都可以正常工作……但最终,连接失败,出现以下错误:

安全连接失败

连接到10.x.x.x时出错。

无法与对等方安全通信:没有通用加密算法。

(错误代码:ssl\u错误\u无密码\u重叠)

他工作得很好。Firefox在Windows和Fedora中都会抛出错误,因此问题似乎与操作系统无关。JavaEE应用程序运行在Tomcat6.0.16服务器上。所有页面都使用TLS 1.0通过带有mod_nss的Apache 2.2.8 HTTP服务器进行加密

我们的Apache服务器配置为拒绝SSL 3.0连接。我们的一个假设是Firefox可能正在尝试建立SSL 3.0连接……但为什么呢

基于一些谷歌搜索,我们尝试了以下方法,但没有成功:

  • 使用Firefox2.x(一些人报告了2.x可以工作,但3.x不能工作的实例):

  • 启用SSL2

  • 禁用SSL3

  • 禁用OCSP(工具>选项>高级>加密>验证)

  • 确保客户端计算机的防病毒/防火墙未阻止或扫描端口443(https端口)


有什么想法吗?

在firefox的高级设置下,您应该能够设置加密。默认情况下,应选中SSL3.0和TLS1.0,因此如果firefox尝试创建ssl 3.0连接,请尝试取消选中ssl 3.0设置

如果不起作用,请尝试在about:config页面中搜索“ssl2”
我的Firefox的ssl2设置默认设置为false

考虑到您的尝试和错误消息,我认为这更多地与使用的确切密码算法有关,而不是TLS/SSL版本。您是在使用非Sun JRE,还是使用其他供应商的安全实现?如果可以,请尝试使用其他JRE/OS来测试服务器。如果失败,您可能只能看到发生了什么(使用“tcp.port==443”的过滤器)。

我要检查的第一件事是mod\u nss的配置。这是一个奇怪的问题,因为它是你的,世界上没有一个像它一样:-)然而,如果Firefox或mod_nss本身存在一些巨大的bug,我想你现在应该已经在谷歌搜索中发现了。您篡改配置(例如禁用SSL3和其他各种随机调整)的事实也值得怀疑

我会回到一个非常普通的mod_nss配置,看看它是否有效。然后系统地更改当前配置,直到可以重现问题。从声音上看,错误的来源是mod_nss的密码规范配置和相关的协议协商内容。所以,当您试图关闭SSLv3时,可能无意中更改了某些内容(顺便提一下,为什么要禁用SSL3?通常人们禁用V2?)

另一件需要检查的事情是,您使用的是最新的mod_nss,这不是一个已知的bug。它成功地启动了会话,但后来失败了,这一事实很有趣——它表明,它可能正在尝试重新协商会话,但未能在此时协商密码。所以可能是对称密码。或者它可能只是您的mod_nss版本中的一个实现错误,不知何故破坏了协议

另一个想法是,这是一个猜测,浏览器正在尝试恢复一个会话,该会话是在您禁用它之前与SSLv3协商的,当V3关闭时,当尝试恢复该会话时,会出现故障,或者可能是mod_nss没有正确实现它


java/tomcat的东西看起来像是在转移视线,因为除非我误解了您的描述,否则SSL握手/协议中不涉及这些内容

如果您查看Wikipedia上的SSL协商过程,您将知道在开始时,ClientHello和ServerHello消息在浏览器和服务器之间发送

只有当ClientHello中提供的密码在服务器上有重叠项时,ServerHello消息才会包含双方都支持的密码。否则,SSL连接将不会启动,因为没有通用密码


要解决此问题,您需要安装密码(通常在操作系统级别),而不是在浏览器上尝试(通常浏览器依赖于操作系统)。我熟悉Windows和IE,但对Linux和Firefox知之甚少,因此我只能指出问题所在,但无法为您提供解决方案;要解决这个问题,就足以在“about:config”中启用所有SSL模式。我是通过ssl过滤找到它们的。首先,我分析了afret的所有选项,禁用了不必要的选项。

如果您在firefox上出现无密码重叠错误,并且您将其保留为默认设置,那么您正在使用一个非常不安全的站点,试图使用非常弱的“导出级”密码。这些天不鼓励使用这些密码,我个人会停止使用试图使用这种弱密码的网站。

登录后出现“错误代码:ssl\u Error\u no\u cypher\u overlap”错误消息,预计会出现欢迎屏幕——使用Firefox浏览器

解决方案

在Firefox浏览器中启用对40位RSA加密的支持: 1:在浏览器地址栏中输入“about:config” 2:查找/选择“security.ssl3.rsa\u rc4\u 40\u md5” 3:将布尔值设置为TRUE

“错误代码:ssl\u错误\u否\u密码\u重叠”登录后出现的错误消息,当需要欢迎屏幕时--使用Firefox浏览器 解决方案 1:在浏览器地址栏中输入“about:config” 2:查找/选择“security.ssl3.rsa\u rc4\u 40\u md5”
3:将布尔值设置为TRUE

我在www.tpsynergy.com上为服务器续订证书时遇到了相同的问题。导入新服务器证书和r后