SSL证书如何部署到tomcat

公司给了一个通配符证书,包含:两个 .cer 证书,一个pfx文件,和一个 .key 文件。
如何配置tomcat,才能正常访问https

一、使用java jdk将PFX格式证书转换为JKS格式证书

先切换到pfx证书目录下,执行命令:

keytool -importkeystore -srckeystorewww.dongnaoedu.com_ssl.pfx -destkeystoredomains.jks -srcstoretype PKCS12 -deststoretype JKS

这里要输入密码,就是上面www.dongnaoedu.com_pfx_password.txt文本文件中的密码,3个口令最好都输入这个密码。可以看到文件夹中生成了domains.jks证书

二、配置server.xml

先把domains.jks证书上传到Tomcat的conf文件夹下:

执行命令: cd /usr/tomcat/apache-tomcat-8.5.11/conf

vim server.xml

找到

去掉注释,修改为:(443为https默认访问端口)

maxThreads="150" scheme="https" secure="true"
keystoreFile="conf/domains.jks" //证书地址
keystorePass="582629" //证书密钥
clientAuth="false" sslProtocol="TLS" />

为了让http访问自动跳转为https访问这里顺便把这两个标签也改了,

找到

<Connector port="8080" protocol="HTTP/1.1"

           connectionTimeout="20000"

           redirectPort="8443" />

修改为:

<Connector port="8080" protocol="HTTP/1.1"

           connectionTimeout="20000"

           redirectPort="443" />

找到

修改为:

保存退出。

三、配置web.xml

执行命令: vim web.xml

在该文件标签(一般在文件最末尾)后面加上这样一段:



<!-- Authorization setting for SSL -->

CLIENT-CERT

Client Cert Users-only Area





<!-- Authorization setting for SSL -->



SSL

/*





CONFIDENTIAL



保存退出。所有配置完毕。重启Tomcat即可。证书生效,并且http访问会自动转为https访问。

  1. 配置SSL连接器,将www.domain.com.jks文件存放到conf目录下,然后配置同目录下的server.xml文件:

    maxThreads="150" scheme="https" secure="true"
    keystoreFile="conf\www.domain.com.jks"
    keystorePass="changeit"
    clientAuth="false" sslProtocol="TLS" />

    2.       到conf目录下的web.xml。在</welcome-file-list>后面,</web-app> 前面,也就是倒数第二段里,加上这样一段即可:
    



    <!-- Authorization setting for SSL -->

    CLIENT-CERT

    Client Cert Users-only Area





    <!-- Authorization setting for SSL -->



    SSL

    /*





    CONFIDENTIAL



    1. redirectPort改成ssl的connector的端口443,重启后便会生效。 所以还需要前往server.xml进行配置

http转https

参考:https://www.wosign.com/support/ssl-tomcat-2.htm