2016-07-23 60 views
2

我正在WSO2数据分析服务器,我有以下的DAS日志文件SSL错误

javax.net.ssl.SSLException: hostname in certificate didn't match: <192.168.3.27> != localhost 

像网上有些错误,当我进入我的仪表盘创建我没有看到任何数据和仪表板是空的,直到我做了this link说什么,并且问题没有再次发生在DAS仪表板上但是当我想连接API管理器到DAS时我在Configure Analytics菜单中的admin-dashboard上出现了一些错误。我无法保存配置和我API Manager得到了这样的错误:发生

错误,同时部署工件(原因:org.apache.axis2.AxisFault:连接已关闭:javax.net.ssl中。出现SSLHandshakeException:sun.security.validator.ValidatorException:PKIX路径建设失败:sun.security.provider.certpath.SunCertPathBuilderException:无法找到有效的认证路径要求的目标

我有DAS仪表盘,但我没有错误无法连接AMDAS。任何想法?

+0

发生此错误是因为您没有CA签名证书。你必须要做的是将你的证书添加到wso2carbon服务器的client-truststore.jks和wso2carbon.jks中。并检查您的默认Java密钥库是否具有您正在使用的证书导入。我能知道你是否在使用LB?因为您还必须将此证书添加到LB。 –

回答

0

您当前存储在wso2carbon.jks中的证书指向localhost,但是如果您将解决方案部署在不同的服务器上,则需要为每个服务器使用CN = server IP或full server hostname创建一个.jks。 在client-truststore.jks中,您需要存储您需要连接的每台服务器的证书。

+0

我理解了吗?我必须像这样将我的IP添加到wso2carbon.jks中:'keytool -genkeypair -alias 10.10.60.100 -keyalg RSA -keystore wso2carbon.jks'以及我应该如何处理client-truststore.jks? –

+0

当您在命令行中运行该命令时,keytool会要求您介绍一些信息。第一个是CN,必须是服务器IP或完整的服务器名称。该错误表明您使用192.168.3.27作为服务器IP。在client-truststore.jks中,您需要存储其他服务器的证书。 –

+0

我有大约15台虚拟机连接到我的DAS。他们都正确地向DAS发布数据,没有任何问题,我没有将他们的CA添加到DAS client-truststore.jks,他们正在工作,我应该添加他们,因为我的新CN? @ jorge-infante-osorio –

0

您正在收到主机名验证错误,因为公用证书中的URL和CN名称中的域名不匹配。正确的解决方案是使CN名称与url的域名匹配。

,如果你想跳过主机名验证,然后 ,修改axis2.xml(HTTPS - transportSender)把主机名验证关闭如下。

<parameter name="HostnameVerifier">AllowAll</parameter> 
+0

它仍然有和以前一样的错误。 –