特网科技为您提供高速、稳定、安全、弹性的云计算服务计算、存储、监控、安全,完善的云产品满足您的一切所需,深耕云计算领域10余年;我们拥有前沿的核心技术,始终致力于为政府机构、企业组织和个人开发者提供稳定、安全、可靠、高性价比的云计算产品与服务。

当前位置:首页 > 行业资讯 > SSL证书 > 正文内容

Tomcat9安装SSL证书的详细步骤与配置指南

2025-09-29SSL证书1244

海外云服务器 40个地区可选            亚太云服务器 香港 日本 韩国

云虚拟主机 个人和企业网站的理想选择            俄罗斯电商外贸虚拟主机 赠送SSL证书

美国云虚拟主机 助力出海企业低成本上云             拨号云主机


在当今互联网安全日益受到重视的背景下,为Web服务器部署SSL(Secure Sockets Layer)证书已成为保障数据传输安全的基本要求,对于使用 Apache Tomcat 9 作为 Java Web 应用服务器的开发者与运维人员而言,正确配置 SSL 证书不仅能有效防止数据被窃听或篡改,还能显著提升网站的专业形象和用户信任度。

本文将系统地介绍如何在 Tomcat 9 中安装并配置 SSL 证书,涵盖从环境准备、密钥库生成到服务部署及安全优化的完整流程,帮助您快速实现 HTTPS 加密访问,构建安全可靠的 Web 服务环境。


🔧 准备工作

在开始配置之前,请确保以下几项准备工作已全部完成:

  1. 已成功安装并运行 Tomcat 9
    确认您的服务器上已经部署了 Apache Tomcat 9,并能正常启动,可通过浏览器访问 http://your-domain:8080 或 http://localhost:8080 来验证 Tomcat 是否正常运行。

  2. 获取有效的 SSL 证书
    可从权威 CA 机构(如 Let's Encrypt、DigiCert、阿里云、腾讯云等)申请免费或付费的 SSL 证书,通常会收到以下文件:

    • 服务器证书文件:your_domain.crt
    • 私钥文件(Private Key):private.key
    • 中间证书(Intermediate Certificate):可能是单个 ca-bundle.crt 文件,或多个 .crt 文件组成的链式证书
  3. Java 运行环境配置正确
    确保 JDK 已正确安装,且环境变量 JAVA_HOME 指向正确的 JDK 安装路径,Tomcat 依赖 JVM 运行,因此必须保证 Java 版本兼容(推荐使用 JDK 8 或以上版本)。

  4. 域名解析已完成
    确保您的域名已通过 DNS 正确解析至服务器 IP 地址,并能够在公网访问。


🔐 生成密钥库(Keystore)或使用现有证书

Tomcat 使用 Java 的密钥库机制(Keystore)来管理 SSL 证书,默认支持 JKS(Java KeyStore)或 PKCS#12 格式(.jks 或 .pfx/.p12),若您的证书是以 PEM 格式提供(常见于 Nginx/Apache 配置),则需要将其转换为 Tomcat 支持的格式。

将 PEM 证书合并并导入为 JKS 密钥库

第一步:使用 OpenSSL 将 PEM 合并为 PKCS12 格式

openssl pkcs12 -export \
    -in your_domain.crt \
    -inkey private.key \
    -out tomcat.p12 \
    -name tomcat \
    -CAfile ca-bundle.crt \
    -caname root \
    -chain

⚠️ 提示:执行过程中会提示设置导出密码(即 .p12 文件的保护密码),请务必牢记该密码。

第二步:使用 keytool 将 PKCS12 转换为 JKS 格式

keytool -importkeystore \
    -deststorepass changeit \
    -destkeypass changeit \
    -destkeystore keystore.jks \
    -srckeystore tomcat.p12 \
    -srcstoretype PKCS12 \
    -srcstorepass your_password \
    -alias tomcat

📝 说明:

  • -deststorepass 和 -destkeypass 是目标 JKS 文件的密码,changeit 是 Tomcat 默认使用的密钥库密码,建议根据安全策略修改。
  • 若未设置源 .p12 密码,请替换 your_password 为实际值。

完成后,将生成的 keystore.jks 文件复制到 Tomcat 的 conf/ 目录下,
/usr/local/tomcat/conf/keystore.jks


直接使用 PFX/PKCS12 证书(更简洁)

若您已有 .pfx 或 .p12 格式的证书(如从云服务商下载的一键式证书包),可跳过上述转换步骤,直接将其上传至 Tomcat 的 conf 目录,并在配置中引用即可。


🛠️ 配置 Tomcat 的 server.xml 文件

进入 Tomcat 安装目录下的 conf 子目录,编辑 server.xml 文件,找到默认被注释掉的 HTTPS Connector 配置段:

<!--
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="150" SSLEnabled="true">
    <SSLHostConfig>
        <Certificate certificateKeystoreFile="conf/keystore.jks"
                     type="RSA" />
    </SSLHostConfig>
</Connector>
-->

取消注释,并根据实际情况进行修改和完善:

✅ 使用 JKS 密钥库的配置示例:

<Connector port="8443" 
           protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="200" 
           SSLEnabled="true"
           sslProtocol="TLS">
    <SSLHostConfig>
        <Certificate 
            certificateKeystoreFile="conf/keystore.jks"
            certificateKeystorePassword="your_jks_password"
            type="RSA" />
    </SSLHostConfig>
</Connector>

✅ 使用 PFX 证书的配置示例:

<Connector port="8443" 
           protocol="org.apache.coyote.http11.Http11NioProtocol"
           maxThreads="200" 
           SSLEnabled="true"
           sslProtocol="TLS">
    <SSLHostConfig>
        <Certificate 
            certificateKeystoreFile="conf/cert.pfx"
            certificateKeystorePassword="your_pfx_password"
            certificateKeystoreType="PKCS12"
            type="RSA" />
    </SSLHostConfig>
</Connector>

🔍 参数说明:

  • port:HTTPS 服务端口,常用为 8443;如需监听标准端口 443,需以 root 权限运行 Tomcat 或配置端口转发。
  • certificateKeystoreFile:密钥库文件路径,相对 Tomcat 安装根目录。
  • certificateKeystorePassword:密钥库的访问密码。
  • certificateKeystoreType:指定密钥库类型,JKS 可省略,PFX 必须设为 PKCS12。
  • sslProtocol="TLS":明确启用 TLS 协议,禁用老旧不安全的 SSLv3 等协议。

🔄 重启 Tomcat 并测试 HTTPS 访问

保存 server.xml 后,重启 Tomcat 服务以应用更改:


# 启动服务
./bin/startup.sh

打开浏览器访问:
👉 https://your-domain:8443

如果页面加载正常,地址栏显示绿色锁形图标,且无任何安全警告,则表示 SSL 配置成功。

💡 建议使用 SSL Labs 的 SSL Test 工具 对站点进行评分检测,确保配置符合现代安全标准。


🔒 强制 HTTP 自动跳转 HTTPS(可选但推荐)

为了进一步提升安全性,建议强制所有请求通过 HTTPS 访问,可通过以下两种方式实现:

在 web.xml 中添加安全约束

编辑项目的 WEB-INF/web.xml 文件,加入如下配置:

<security-constraint>
    <web-resource-collection>
        <web-resource-name>Entire Application</web-resource-name>
        <url-pattern>/*</url-pattern>
    </web-resource-collection>
    <user-data-constraint>
        <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    </user-data-constraint>
</security-constraint>

在 server.xml 中确保 HTTP Connector 的 redirectPort 指向 HTTPS 端口:

<Connector port="8080" 
           protocol="HTTP/1.1"
           connectionTimeout="20000"
           redirectPort="8443" />

当用户访问 http://your-domain:8080/app 时,会被自动重定向至 https://your-domain:8443/app。

结合反向代理(如 Nginx)实现统一 HTTPS 入口

在生产环境中,常采用 Nginx 或 Apache 作为前端反向代理,集中处理 SSL 加解密,再将请求转发给后端 Tomcat,这种方式性能更高、管理更灵活

扫描二维码推送至手机访问。

版权声明:本文由特网科技发布,如需转载请注明出处。

本文链接:https://www.56dr.com/mation/79187.html

标签: Tomcat9配置
分享给朋友:

“Tomcat9安装SSL证书的详细步骤与配置指南” 的相关文章

搭建跨国服务器网络,跨越全球距离的便捷链接

搭建外国服务器网络,通过互联网实现跨地域的数据传输和资源共享。在当今数字化时代,互联网的普及使得全球各地的人们可以轻松地进行信息交流和业务合作,在某些情况下,直接访问国外的服务可能受到网络限制或政策限制,这时,搭建外国服务器网络就成为了许多人的选择。什么是外国服务器?外国服务器是指位于其他国家和地区...

云服务器租用价格表

在云计算时代,随着科技的发展和市场的需求,云服务器的租用价格也不断变化。以下是一份简要的云服务器租用价格表,涵盖不同大小规格、网络带宽和操作系统等参数。,,| 云服务提供商 | 标准型实例 | 高性能实例 | 数据库实例 |,| :--: | :--: | :--: | :--: |,| AWS |...

全球超大规模云计算服务提供商,亚马逊、微软和谷歌的较量

全球领先的超大规模云计算服务提供商包括亚马逊AWS、微软Azure、谷歌GCP和IBM云等。这些公司拥有庞大的数据中心网络和强大的计算能力,能够为用户提供广泛的服务范围,从基础架构设计到应用开发、数据分析等,满足用户在各种场景下的需求。随着科技的发展和全球化进程的加快,越来越多的企业和个人选择在全球...

学习编程的快速入门

快速入门Python编程,从基础语法到高级概念,涵盖变量、数据结构、函数、模块等核心内容。亚马逊服务器购买教程:从入门到精通在当今数字化时代,越来越多的企业和个人开始依赖于互联网来获取信息、进行业务和生活,为了更好地利用互联网资源,许多企业选择在亚马逊上开设自己的服务器,如何在亚马逊上购买服务器呢?...

TikTok节点服务器搭建攻略,全面解析

TikTok节点服务器搭建指南:从安装环境、配置防火墙到优化性能,全面解析。一、前言TikTok作为全球知名的短视频平台,其强大的用户基础和庞大的流量来源,吸引了大量开发者和技术人员,为了在TikTok上实现高效的数据传输和处理,建立一个高性能的节点服务器成为了一个关键任务,本文将详细介绍如何在Li...

云数据中心扩展,您的企业需求与创新解决方案

我的私人数据中心正在向云服务扩展,利用云计算资源来提高效率和可靠性。在当今数字化时代,企业对数据的安全性和可用性有着越来越高的要求,为了满足这些需求,越来越多的企业开始转向使用云服务提供商提供的虚拟服务器来托管其应用程序和数据,除了云服务,还有一些企业选择通过购买或租赁物理服务器来实现他们的业务目标...