无法在tomcat中使用SSL证书

时间:2018-11-27 14:52:07

标签: ssl tomcat server

所以我买了一个SSL证书,他们给了我这样的代码:

  

-----开始证书-----

     

编码字符串

     

-----结束证书-----

我之前已经保存了我的私钥,就像这样

  

-----开始私钥-----

     

编码字符串

     

-----结束私钥-----

我将这两个文件放在了两个单独的文件中(cert.txt和pk.txt)。

我已经使用这些Linux命令来安装我的证书。

1)openssl pkcs12 -export -in [cert.txt的路径] -inkey [pk.txt的路径] -certfile [cert.txt的路径] -out keystore.p12

2)keytool -importkeystore -srckeystore keystore.p12 -srcstoretype pkcs12 -destkeystore finalkeystore.jks -deststoretype JKS

3)keytool -changealias -keystore [finalkeystore.jks的路径] -alias 1

这3个命令成功运行!我在tomcat conf的server.xml文件中放置了以下代码。

    <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
              SSLEnabled="true"
              connectionTimeout="20000"
              maxThreads="250"
              scheme="https" secure="true" clientAuth="false"
              sslProtocol="TLS" keystoreFile="/home/finalkeystore.jks"
              keyAlias="whatisetinthirdcommand"
              keystorePass="mypass" />

此外,我在项目中的web.xml文件中设置了下面的代码行!

 <security-constraint>
    <web-resource-collection>
        <web-resource-name>MyApplication</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

安装证书没有发现任何问题!但是当我启动tomcat并搜索我的网站时,它重定向到https://localhost! 我将transport-guarantee编辑为NONE,然后又回到了以前的状态(没有https的精细应用程序)!我的程序有什么问题吗?我做错了什么吗?

PS:我使用的是tomcat 8和JDK8

0 个答案:

没有答案