安装Verisign证书后,我们收到了BAD证书错误, 相同的服务器在自签名证书上正常工作.. 请帮我解决这个错误。
6/17/15 23:56:29:493 PDT] 0000001c SystemErr R javax.net.ssl.SSLHandshakeException:错误证书 在com.ibm.jsse.bv.a(未知来源) 在com.ibm.jsse.bv.startHandshake(未知来源) 在com.ibm.net.ssl.www2.protocol.https.b.o(b.java:136) 在com.ibm.net.ssl.www2.protocol.https.i.connect(i.java:28) 在com.ibm.net.ssl.www2.protocol.http.bc.getOutputStream(bc.java:44) 在com.ibm.net.ssl.www2.protocol.https.l.getOutputStream(l.java:23) 在com.corio.tsr.webservices.SRAutomationWebServiceClient.getJsonObject(SRAutomationWebServiceClient.java:174) at com.corio.tsr.jms.receiver.SRAutomationMessageBean.onMessage(Unknown Source) at com.ibm.ejs.container.MessageEndpointHandler.invokeMdbMethod(MessageEndpointHandler.java:1013) 在com.ibm.ejs.container.MessageEndpointHandler.invoke(MessageEndpointHandler.java:746) 在$ Proxy1.onMessage(未知来源)
以上是SSL握手期间生成的错误日志。
已尝试以下步骤来解决此问题。 1)将证书导入服务器端(cacertsfile)
答案 0 :(得分:0)
导入时cacerts文件是否损坏?
导入完成后可以粘贴控制台日志吗?也许你可以备份当前的cacerts文件,并从使用pristine jdk cacerts文件开始。
另外,检查证书存储文件中的证书
/usr/java/jdk1.8.0_45/bin/keytool -v -list -keystore <cert-file-full-path>
答案 1 :(得分:0)
错误的证书错误通常是由于缺少签名者证书。握手时,服务器将显示其个人证书。必须信任此证书,以便为签名者检查信任库。在自签名证书的情况下,自签名证书是它自己的签名者。因此,个人证书应该在信托存储中。对于Verisign证书(或任何CA),个人证书通常由一个或多个中间证书和根签名。这些签名者需要在信任存储区中,以避免错误的证书错误。