若是申请证书时有填写私钥密码,下载可得到Tomcat文件夹,其中有密钥库 www.domain.com.jks;
若是没有填写私钥密码,证书下载包的Tomcat文件夹中包括密钥库文件www.domain.com.jks 与密钥库密码文件keystorePass.txt
当用户选择粘贴CSR时,不提供Tomcat证书文件的下载,须要用户手动转换格式生成,操做方法以下:web
能够经过 Nginx 文件夹内证书文件和私钥文件生成jks格式证书
转换工具:https://www.trustasia.com/tools/cert-converter.htm
使用工具时注意填写 密钥库密码 ,安装证书时配置文件中须要填写。安全
配置SSL链接器,将www.domain.com.jks
文件存放到conf目录下,而后配置同目录下的server.xml
文件:app
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" keystoreFile="conf/www.domain.com.jks" keystorePass="changeit" clientAuth="false" sslProtocol="TLS" />
注:dom
配置文件参数 | 说明 |
---|---|
clientAuth | 若是设为true,表示Tomcat要求全部的SSL客户出示安全证书,对SSL客户进行身份验证 |
keystoreFile | 指定keystore文件的存放位置,能够指定绝对路径,也能够指定相对于 (Tomcat安装目录)环境变量的相对路径。若是此项没有设定,默认状况下,Tomcat将从当前操做系统用户的用户目录下读取名为 “.keystore”的文件。 |
keystorePass | 密钥库密码,指定keystore的密码。(若是申请证书时有填写私钥密码,密钥库密码即私钥密码,不然填写密钥库密码文件中的密码) |
sslProtocol | 指定套接字(Socket)使用的加密/解密协议,默认值为TLS |
到conf目录下的web.xml。在</welcome-file-list>
后面,</web-app>
,也就是倒数第二段里,加上这样一段工具
<login-config> <!-- Authorization setting for SSL --> <auth-method>CLIENT-CERT</auth-method> <realm-name>Client Cert Users-only Area</realm-name> </login-config> <security-constraint> <!-- Authorization setting for SSL --> <web-resource-collection> <web-resource-name>SSL</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint>
这步目的是让非ssl的connector跳转到ssl的connector去。因此还须要前往server.xml进行配置:加密
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="443" />
redirectPort改为ssl的connector的端口443,重启后便会生效。url