Tomcat配置SSL证书教程:快速部署PFX和JKS证书
Tomcat支持pfx(p12)格式部署和keystore (kjs)方式部署SSL证书,本文主要为大家介绍Tomcat配置SSL证书教程。
1、PFX/P12格式证书部署
直接将带有私钥的pfx/p12证书放置在服务器指定路径,如下列代码中的/usr/local/ssl/server.pfx。(根据个人证书存放的位置)
Tomcat中的server.xml配置代码如下:
<Connector port=”8443″ protocol=”HTTP/1.1″ maxThreads=”150″ SSLEnabled=”true” scheme=”https” secure=”true”
keystoreFile=”/usr/local/ssl/server.pfx”
keystoreType=”PKCS12″
keystorePass=”mypassword”
clientAuth=”false”
sslProtocol=”TLSv1+TLSv1.1+TLSv1.2″ />
报错分析:
如果部署jar包时出现报错信息:Alias name [tomcat] does not identify a key entry at org.apache.tomcat.util.net.AbstratJsseEndpoint.createSSLContent 则务必检查使用keystore存储证书还是使用服务器绝对路径证书
2、Keystore密钥库部署
使用JDK自带的keytool工具进行证书导入x.509格式证书,命令行工具进入JDK的keytool目录,执行下述命令:
keytool -import -alias server -trustcacerts
-file server.crt -trustcacerts
-keystore %JAVA_HOME%/jre/lib/security/cacerts
-storepass changeit
%JAVA_HOME% 是指操作系统中的环境变量JAVA的环境目录,storepass指输入密码,java中cacerts证书库默认密码为changeit
将导入的jks证书复制服务器指定目录下:
<Connector port=”8443″ protocol=”HTTP/1.1″ maxThreads=”150″ SSLEnabled=”true” scheme=”https” secure=”true”
keystoreFile=”/jks证书路径/名称.jks”
keystorePass=”证书密码”
clientAuth=”false”
slProtocol=”TLSv1+TLSv1.1+TLSv1.2″ />
注意事项:
1)2018年6月30日起PCI DSS安全标准要求移除TLS1.0
2)-alias server的 server名称是制作CSR时生成的私钥文件名。
3)如果报错“java.lang.Exception: Input not an X.509 certificate”,请检查证书是否为x.509标准的证书(不含私钥、和中级证书)