Tomcat支持PFX格式和JKS两种格式的证书,您可根据您Tomcat的版本择其中一种格式的证书安装到Tomcat上。
一、安装PFX格式证书
1、准备好PFX格式的证书,不同证书的合并转换方法不同,请分别参考对应的文章操作:
2、在Tomcat安装目录下新建cert目录,将证书文件拷贝到cert目录下。
3、打开Tomcat > conf > server.xml文件,在server.xml文件中添加以下属性(其中port属性请根据您的实际情况修改,其中protocol建议为:
protocol=”org.apache.coyote.http11.Http11Protocol”):
<Connector port=”443″
protocol=”HTTP/1.1″
SSLEnabled=”true”
scheme=”https”
secure=”true”
keystoreFile=”domain name.pfx” #此处keystoreFile代表证书文件的路径,请用您证书的文件名替换domain name。
keystoreType=”PKCS12″
keystorePass=”证书密码” #请用您证书密码替换文件中的内容。
clientAuth=”false”
SSLProtocol=”TLSv1+TLSv1.1+TLSv1.2″
ciphers=”TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256″/>
4、保存server.xml文件配置。
5、(可选步骤)配置web.xml文件开启HTTP强制跳转HTTPS。
#在</welcome-file-list>后添加以下内容:
<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>
6、重启Tomcat。
二、安装JKS格式证书
1、转换证书格式为JKS:
1)方法一:输入以下java JDK命令将PFX格式的证书转换成JKS格式:
keytool -importkeystore -srckeystore domain name.pfx -destkeystore domain name.jks -srcstoretype PKCS12 -deststoretype JKS
说明: Windows系统中,需在 %JAVA_HOME%/jdk/bin目录下执行该命令。
2)方法二:参考下方文章转换好JKS格式的证书:
2、回车后输入PFX证书密码和JKS证书密码。
说明: JKS证书密码等同于PFX证书密码。两个密码不同的时候会导致Tomcat重启失败。
3、在Tomcat安装目录下新建cert目录,将证书和密码文件拷贝到cert目录下。
4、打开Tomcat安装目录 > conf文件夹 > server.xml文件,在server.xml文件中找到 <Connector port=”443”标签并添加以下参数:
keystoreFile=”cert/domain name.jks” #此处keystoreFile代表证书文件的路径,请用您证书的文件名替换cert/后面的内容。
keystoreType=”PKCS12″
keystorePass=”证书密码” #请输入您的证书密码。
参考以下完整配置(其中port属性请根据您的实际情况修改):
<Connector port=”443″
protocol=”HTTP/1.1″
SSLEnabled=”true”
scheme=”https”
secure=”true”
keystoreFile=”cert/domain name.jks”
keystoreType=”PKCS12″
keystorePass=”证书密码”
clientAuth=”false”
SSLProtocol=”TLSv1+TLSv1.1+TLSv1.2″
ciphers=”TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256″/>
5、保存server.xml文件配置。
6、重启Tomcat。
如需了解其他服务器上部署SSL证书的方法,请看下方教程: