我在Apache 7上有一个web应用程序,并且我的web应用程序上有不受信任的证书。我的web应用程序必须与另一个使用https的web应用程序通信。然而,我总是得到这样的例外:
未能连接: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX路径构建失败:javax.net.ssl.SSLHandshakeException无法找到指向请求目标的有效证书路径
我从另一个应用程序中从浏览器下载crt文件,并在我的tomcat服务器的jks keystore中导入。
下面是来自server.xml文件的配置:
<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLSv1.2" keystoreFile="/opt/apache/apache-tomcat-7.0.55-test/conf/portalnew.jks" keystorePass="changeit" keyAlias="portalnew"/>当我打字时
keytool -list -v -keystore portalnew.jks我可以看到我添加的crt文件。
我还在cacerts.jks中添加了crt文件。
发布于 2017-01-04 12:08:38
您需要配置tomcat来信任此证书。这可以通过以下方式实现:
truststoreFile="conf/store/tomcat.truststore" truststorePass="TruststorePassword"-Djavax.net.ssl.trustStore=/opt/tomcat/conf/store/tomcat.truststore -Djavax.net.ssl.trustStorePassword=TruststorePassword
将您的密码调整到上面的命令中
https://stackoverflow.com/questions/41460313
复制相似问题