HTTPS不能在Tomcat 8中使用Veri-sign证书,但可以使用自签名证书

时间:2015-10-17 07:24:36

标签: tomcat ssl axis2

我在Tomcat 8.0.26版本上托管了Axis2 API。我正在将Axis2应用程序从http://localhost1:8080/axis2/重新路由到https://localhost:8443/axis2/。出于测试目的,我使用了自签名证书,安全链接工作正常。但我需要使用Veri-sign证书。就在我用Veri-sign更改证书时,链接停止工作。 这是我的server.xml

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
SSLEnabled="true" maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="chap8.keystore"
keystorePass="rmi+ssl" />

我通过以下命令创建了此证书:

keytool -genkey -keystore chap8.keystore -storepass rmi+ssl -keypass rmi+ssl   -keyalg RSA -alias chapter8 -validity 3650 -dname "cn=http://brm.abc.net example,ou=admin book,dc=jboss,dc=org"

我在2个文件.crt和.key中获得了Veri-sign证书。我使用以下命令将其导入.jks格式:

keytool -import -alias primary -keystore sslkey -trustcacerts -file brm.abc.com.crt -storepass ssl123

我是Tomcat的新手,所以不确定如何解决这个问题! 提前谢谢!

1 个答案:

答案 0 :(得分:0)

找到答案!!谢谢大家!

请参阅帖子:importing an existing x509 certificate and private key in Java keystore to use in ssl

第一步:将x509 Cert和Key转换为pkcs12文件

openssl pkcs12 -export -in server.crt -inkey server.key \
           -out server.p12 -name [some-alias] \
           -CAfile ca.crt -caname root

注意:确保在p12文件上输入密码 - 否则,当您尝试导入时,您将获得空引用异常。 (如果其他人有这种头痛的话)。 (谢谢jocull!)

注意2:您可能希望添加-chainoption以保留完整的证书链。 (谢谢Mafuba)

第二步:将pkcs12文件转换为java密钥库

keytool -importkeystore \
    -deststorepass [changeit] -destkeypass [changeit] -destkeystore   server.keystore \
    -srckeystore server.p12 -srcstoretype PKCS12 -srcstorepass some-password  \
    -alias [some-alias]

成品