Tomcat 配置 SSL 证书指南(HTTPS 部署完整教程)
在 Tomcat 服务器上部署 SSL/TLS 证书,是启用 HTTPS 加密访问的核心步骤。通过正确配置证书,可以实现浏览器与服务器之间的数据加密传输、身份验证以及完整性保护,从而避免数据泄露与中间人攻击。
Tomcat 配置 SSL 证书的核心步骤是:将 SSL 证书转换为 JKS 或 P12 格式,在 server.xml 中配置 HTTPS Connector(443端口),并重启 Tomcat 服务即可启用 HTTPS。
本文适用于 Tomcat 8 / 9 / 10 主流版本。
一、准备工作(部署前必须确认)
在配置之前,请确保你已经具备以下文件:

- SSL 证书文件(通常为
.crt或.pem) - 私钥文件(
.key) - CA 中间证书(ca-bundle 或 chain 文件)
- Java KeyStore(.jks)或 PKCS12(.p12)证书容器
如果证书是 PEM 格式,需要先转换为 Tomcat 可识别的 JKS 或 P12 格式。
二、将 SSL 证书转换为 JKS(Tomcat 标准格式)
1. 生成 PKCS12 文件
openssl pkcs12 -export \
-in certificate.crt \
-inkey private.key \
-out domain.p12 \
-name tomcat \
-CAfile ca-bundle.crt \
-caname root
2. 转换为 JKS 文件
keytool -importkeystore \
-srckeystore domain.p12 \
-srcstoretype PKCS12 \
-destkeystore domain.jks \
-deststoretype JKS \
-alias tomcat
3. 验证 keystore
keytool -list -v -keystore domain.jks
三、修改 Tomcat 配置文件 server.xml
1. 定位配置文件
$TOMCAT_HOME/conf/server.xml
2. 配置 HTTPS Connector(标准推荐配置)
在 server.xml 中添加或修改如下内容:
<Connector port="443"
protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="200"
SSLEnabled="true">
<SSLHostConfig>
<Certificate certificateKeystoreFile="/opt/tomcat/conf/domain.jks"
certificateKeystorePassword="your_password"
type="RSA" />
</SSLHostConfig>
</Connector>
3. 参数说明
| 参数 | 说明 |
|---|---|
| port | HTTPS 默认端口(443) |
| SSLEnabled | 启用 SSL |
| certificateKeystoreFile | JKS 文件绝对路径 |
| certificateKeystorePassword | Keystore 密码 |
| type | 加密类型(通常 RSA) |
四、重启 Tomcat 生效
systemctl restart tomcat
或:
sh shutdown.sh
sh startup.sh
五、HTTPS 访问验证方法
浏览器访问:
https://your-domain.com
验证是否成功:
- 地址栏出现 🔒 锁标志
- 无证书警告
- SSL Labs 测试评分正常(A/A+)
六、常见问题
Q1:访问 HTTPS 提示“连接不安全”?
一般的原因:
- 证书链不完整(缺少中间证书)
- 域名不匹配(CN/SAN 未包含当前域名)
- 使用了自签名证书
建议使用完整 CA 证书链重新打包 JKS。
Q2:JKS 文件为空或无法使用?
原因:
- 仅下载了 PEM 证书,没有生成 keystore
- keytool 导入过程 alias 错误
- 私钥与证书不匹配
解决方式:重新用 OpenSSL + keytool 生成完整 JKS。
Q3:Tomcat 启动失败(SSL error)?
检查:
- 端口 443 是否被占用
- keystore 密码是否正确
- Java 版本是否支持 TLS 1.2+
七、推荐 SSL 证书
| 证书 | 类型 | 适用场景 |
|---|---|---|
| DigiCert OV SSL | OV | 企业官网 / 金融系统 |
| Sectigo DV SSL | DV | 中小网站 / 博客 |
| 锐安信 eTrus OV SSL | OV | 国内政务 / 合规场景 |



京公网安备11010502031690号
网站经营企业工商营业执照
















