本文档介绍了CentOS系统下Tomcat 8.5或9部署SSL证书的操作说明。

环境准备

操作系统:CentOS 7.6 64位

Web服务器:Tomcat 8.5或9

前提条件

  • 已从阿里云SSL证书服务控制台下载Tomcat服务器证书(包含PFX格式证书文件和TXT格式密码文件)。
  • 您申请SSL证书时绑定的域名已完成DNS解析、实现了该域名指向您Tomcat服务器的IP地址。

    域名解析设置完成后执行ping www.yourdomain.com命令,如果返回了您所设置解析的主机IP地址,说明解析成功。

操作步骤

  1. 解压Tomcat证书。

    说明 每次下载证书都会产生新的密码,该密码仅匹配本次下载的证书。如果需要更新证书文件,同时也要更新匹配的密码。
  2. 将下载的证书和密码文件拷贝到Tomcat的conf目录下。
    说明 如果需要安装JKS格式证书,可使用以下命令将PFX格式证书转化成JKS格式。
    keytool -importkeystore -srckeystore domain name.pfx -destkeystore domain name.jks -srcstoretype PKCS12 -deststoretype JKS
  3. 打开Tomcat/conf/server.xml,在server.xml文件中找到以下参数并进行修改。
    1 <Connector port="8080" protocol="HTTP/1.1"
    2 connectionTimeout="20000"
    3 redirectPort="8443" />
    4
    5 #找到以上参数,去掉<!- - 和 - ->这对注释符并修改为如下参数,对HTTPS默认端口进行配置:
    6 <Connector port="80" protocol="HTTP/1.1" #将Connector port修改为80。
    7 connectionTimeout="20000"
    8 redirectPort="443" /> #将redirectPort修改为SSL默认端口443,让HTTPS请求转发到443端口。
     1 <Connector port="8443"
    2 protocol="org.apache.coyote.http11.Http11NioProtocol"
    3 maxThreads="150"
    4 SSLEnabled="true">
    5 <SSLHostConfig>
    6 <Certificate certificateKeystoreFile="cert/keystore.pfx"
    7 certificateKeystorePassword="XXXXXXX"
    8 certificateKeystoreType="PKCS12" />
    9
    10 #找到以上参数,去掉<!- - 和 - ->这对注释符并修改为如下参数:
    11 <Connector port="443" #将Tomcat中默认的HTTPS端口Connector port 8443修改为443。8443端口不可通过域名直接访问、需要在域名后加上端口号;443端口是HTTPS的默认端口,可通过域名直接访问,无需在域名后加端口号。
    12 protocol="org.apache.coyote.http11.Http11NioProtocol" #server.xml文件中Connector port有两种运行模式(NIO和APR),请选择NIO模式(也就是protocol="org.apache.coyote.http11.Http11NioProtocol")这一段进行配置。
    13 maxThreads="150"
    14 SSLEnabled="true">
    15 <SSLHostConfig>
    16 <Certificate certificateKeystoreFile="/usr/local/tomcat/cert/证书域名.pfx" #此处certificateKeystoreFile代表证书文件的路径,请用您证书的路径+文件名替换证书域名.pfx,例如:certificateKeystoreFile="/usr/local/tomcat/cert/abc.com.pfx"
    17 certificateKeystorePassword="证书密码" #此处certificateKeystorePassword为SSL证书的密码,请用您证书密码文件pfx-password.txt中的密码替换,例如:certificateKeystorePassword="bMNML1Df"
    18 certificateKeystoreType="PKCS12" /> #证书类型为PFX格式时,certificateKeystoreType修改为PKCS12。
    19 </SSLHostConfig>
    20 </Connector>
    1 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
    2 #找到以上参数,去掉<!- - 和 - ->这对注释符并修改为如下参数:
    3 <Connector port="8009" protocol="AJP/1.3" redirectPort="443" /> #将redirectPort修改为443,让HTTPS请求转发到443端口。
  4. 保存server.xml文件配置。
  5. (可选步骤)在web.xml文件最底部添加以下内容,实现HTTP自动跳转为HTTPS。
    1 <security-constraint>
    2 <web-resource-collection >
    3 <web-resource-name >SSL</web-resource-name>
    4 <url-pattern>/*</url-pattern>
    5 </web-resource-collection>
    6 <user-data-constraint>
    7 <transport-guarantee>CONFIDENTIAL</transport-guarantee>
    8 </user-data-constraint>
    9 </security-constraint>
  6. 重启Tomcat服务。
    1. 在Tomcat下的bin目录中执行./shutdown.sh关闭Tomcat服务。
    2. 在Tomcat下的bin目录中执行./startup.sh开启Tomcat服务。

后续操作

   Tomcat服务重启成功后,您可在浏览器中输入您SSL证书绑定的域名https://www.YourDomainName.com验证证书安装结果。浏览器地址栏显示绿色的小锁标识说明证书安装成功。

CentOS系统Tomcat 8.5或9部署SSL证书的更多相关文章

  1. Tomcat部署SSL证书过程中遇到的问题

    在CentOS7中Tomcat部署SSL证书时遇到的问题 1.配置servlet.xml 配置tomcat/conf/server.xml 加入以下代码 <Connector port=&quo ...

  2. 在IIS下部署SSL证书实现HTTPS

    在IIS下部署SSL证书实现HTTPS   HTTPS是以安全为目标的HTTP通道,简单讲是HTTP的安全版.谷歌已经制定了一项长远的计划,它的最终目标是将所有通过HTTP协议呈现的网页标为“不安全” ...

  3. Resin 4.0 部署SSL证书

    前言 Resin目前最新的版本还是4.0 (4.0.49),使用Java EE6,在Resin上部署证书,一般有两种方式,首先我们推荐采用Openssl方式,不仅因为Openssl模式下的速度更快,而 ...

  4. IIS部署SSL证书后提示不可信的解决方案

    IIS部署SSL证书后提示不可信的解决方案   本帖最后由 wosign-support3 于 2015-7-17 17:18 编辑 第一步:打开mmc——点击文件——添加删除管理单元——证书——计算 ...

  5. 5-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(配置MQTT的SSL证书,验证安全通信)

    4-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(为域名申请SSl证书) 前面的准备工作终于完了 复制这两个证书 放到云端MQTT的这个位置,其实放哪里都可以 ...

  6. Ubuntu系统Apache 2部署SSL证书

    几天前用Apache 2部署了一个静态网页,但通过域名访问时Google提示“不安全”,经了解,原来是缺少证书. 什么是SSL证书? SSL 是指安全套接字层,简而言之,它是一项标准技术,可确保互联网 ...

  7. Tomcat 服务器轻松部署 SSL 证书

    Tomcat 服务器 SSL 证书安装部署 1准备服务器 购买网上各个产家的云服务器 或者在自己的电脑上装虚拟机 二者皆可,建议选择第一种,因为操作起来相对方便 2安装JDK 2.1上传JDK到Lin ...

  8. 阿里云部署SSL证书详解

    http://mp.weixin.qq.com/s/NV7Zad4DVEgzG2GCHYJVLw 查找中间证书 为了确保兼容到所有浏览器,我们必须在阿里云上部署中间证书,如果不部署证书,虽然安装过程可 ...

  9. IBM LOTUS DOMINO 9 部署SSL证书

    前言 随着SHA1算法在2016年12月31日以后,将被强制淘汰,所有新的SSL证书都必须支持SHA256算法,所以我们必须将IBM Domino Server升级到9.0以上才可以支持SHA256算 ...

随机推荐

  1. HelloWorld:通过demo,构建黑盒模型

    在<源码阅读四步走,这才是阅读源码的正确姿势>一文中,给出了源码阅读的完整步骤. 本篇是<如何高效阅读源码>专题的第四篇,正式开始讲解阅读源码的具体方法! 程序界有个老传统,学 ...

  2. MATLAB菜鸟入门笔记【作图章】

    1.函数标签[legend]         http://blog.csdn.net/wangcj625/article/details/6287735/

  3. php7废弃mcrypt加密,使用openssl替换

    概要: php从7.0升级到7.1废弃了一个扩展,即mcrypt扩展,虽然安装上扩展也能正常使用,但是会发出警告,告诉我们mcrypt相关方法已经被废弃,到了7.2,已经被移除,因此不建议继续使用. ...

  4. 『现学现忘』Docker基础 — 30、Docker中数据卷相关命令

    目录 1.Volume命令说明 2.Volume命令的使用 (1)创建数据卷 (2)查看本地数据卷列表 (3)打印myVolume数据卷的详细信息 (4)删除数据卷 (5)删除所有未使用的数据卷 3. ...

  5. MySQL&SQL server&Oracle&Access&PostgreSQL数据库sql注入详解

    判断数据库的类型 当我们通过一些测试,发现存在SQL注入之后,首先要做的就是判断数据库的类型. 常用的数据库有MySQL.Access.SQLServer.Oracle.PostgreSQL.虽然绝大 ...

  6. 下面这条语句一共创建了多少个对象:String s="a"+"b"+"c"+"d"?

    对于如下代码: String s1 = "a"; String s2 = s1 + "b"; String s3 = "a" + " ...

  7. 一个tomcat部署两个springboot服务时启动JMX报错

    一.问题来源 今天在部署开发好的组件的时候,发现无法启动,检查启动日志,报如下错误: 2022-03-17T10:39:41.823+08:00 ERROR vediomanage.vediomana ...

  8. vue Cannot read property ‘tapPromise‘ of undefined

    https://blog.csdn.net/qq379682421/article/details/111574290 https://github.com/SimenB/add-asset-html ...

  9. css添加全部省略号的方式

    https://css-tricks.com/line-clampin/ 框架Clamp:https://github.com/josephschmitt/Clamp.js

  10. JDBC的全称是什么?

    Java DataBase Connectivity,java数据库连接