Tomcat 8.5 配置 SSL 证书
申请的是阿里云的免费证书,下载tomcat版的证书文件 里面有4个文件分别是: xxxx.key、xxxx.pem、xxxx.pfx、password.txt
根具阿里云上提供的配置说明如下:
Tomcat支持JKS格式证书,从Tomcat7开始也支持PFX格式证书,两种证书格式任选其一。
文件说明:
证书文件xxxx.pem,包含两段内容,请不要删除任何一段内容。
如果是证书系统创建的CSR,还包含:证书私钥文件xxxx.key、PFX格式证书文件xxxx.pfx、PFX格式证书密码文件pfx-password.txt。
1、证书格式转换
在Tomcat的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,附件中只包含xxxx.pem文件,还需要将私钥文件拷贝到cert目录,命名为xxxx.key;如果是系统创建的CSR,请直接到第2步。
到cert目录下执行如下命令完成PFX格式转换命令,此处要设置PFX证书密码,请牢记:
openssl pkcs12 -export -out xxxx.pfx -inkey xxx.key -in xxxx.pem
2、PFX证书安装
找到安装Tomcat目录下该文件server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port="8443" 标签,增加如下属性:
keystoreFile="cert/xxxx.pfx"
keystoreType="PKCS12"
此处的证书密码,请参考附件中的密码文件或在第1步中设置的密码
keystorePass="证书密码"
完整的配置如下,其中port属性根据实际情况修改:
<Connector port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/xxxx.pfx"
keystoreType="PKCS12"
keystorePass="证书密码"
clientAuth="false"
ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
SSLCipherSuite="ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4"/>
3、JKS证书安装(帮助)
( 1 ) 使用java jdk将PFX格式证书转换为JKS格式证书(windows环境注意在%JAVA_HOME%/jdk/bin目录下执行)
keytool -importkeystore -srckeystore xxxx.pfx -destkeystore your-name.jks -srcstoretype PKCS12 -deststoretype JKS
回车后输入JKS证书密码和PFX证书密码,强烈推荐将JKS密码与PFX证书密码相同,否则可能会导致Tomcat启动失败。
( 2 ) 找到安装 Tomcat 目录下该文件Server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port="8443" 标签,增加如下属性:
keystoreFile="cert/your-name.jks"
keystorePass="证书密码"
完整的配置如下,其中port属性根据实际情况修改:
<Connector port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/your-name.jks"
keystorePass="证书密码"
clientAuth="false"
ciphers="TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
SSLCipherSuite="ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4"/>
( 注意:不要直接拷贝所有配置,只需添加 keystoreFile,keystorePass等参数即可,其它参数请根据自己的实际情况修改 )
4、 重启 Tomcat。
5、 通过 https 方式访问您的站点,测试站点证书的安装配置,如遇到证书不信任问题,请查看相关文档。
以上是阿里云上提供的文档。 我安装的是Tomcat8,和说明上的出入较大,费了一些功夫,因为我下载的是系统签名的证书,也就是只关注第1、2步就可以了。下面说一下我走过的坑:
(1)在Server.xml中可以找到有两个Connector 端口为8843的注释, 一种是使用Http11NioProtocol 另一种是Http11AprProtocol , 根据注释可我们使用第一种。
(2)keystoreFile文件路径的配置,如果按照说明里面的配置,会提示找不到文件。因此我配置了绝对地址:D:/apache-tomcat-8.5.15/cert/xxxx.pfx . 可以把证书放到config目录下,配置成conf/xxxx.pfx就行了。
(3)tomcat8 配置ssl的方式是有所改变的,多了SSLHostConfig、Certificate标签,因此百度上的配置大部分都是不适用的,tomcat启动是会报错。https://tomcat.apache.org/tom... 这个链接里面有配置ssl的一些属性。基本配置如下:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"maxThreads="150" SSLEnabled="true"><SSLHostConfig><Certificate certificateKeystoreFile="D:/apache-tomcat-8.5.15/cert/xxx.pfx"certificateKeystoreType="PKCS12" certificateKeystorePassword="xxx" /></SSLHostConfig></Connector>
tomcat配置java自签名证书:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol"maxThreads="150" SSLEnabled="true"><SSLHostConfig><Certificate certificateKeystoreFile="D:/apache-tomcat-8.5.15/cert/httpsTest.keystore"certificateKeystoreType="JKS" certificateKeystorePassword="123456" /></SSLHostConfig></Connector>
其中keystore的密码和证书的密码要一样
Tomcat 8.5 配置 SSL 证书相关推荐
- Tomcat 8.5 配置 SSL 证书 1
Tomcat 8.5 配置 SSL 证书 申请的是阿里云的免费证书,下载tomcat版的证书文件 里面有4个文件分别是: xxxx.key.xxxx.pem.xxxx.pfx.password.txt ...
- centos下tomcat通过keytool配置ssl服务器端证书及客户端证书
centos下tomcat通过keytool配置ssl证书 第一步切换目录 第二步执行命令生成服务端证书 第三步生成后复制证书文件到tomcat的conf目录下,命令如下 第四步配置conf下的ser ...
- tomcat配置SSL证书_tomcat配置https证书
现在很多网站都采用了https,因为https比http安全,所以我们公司也把内网系统改成https访问,但是这个要怎么配置和申请证书呢? 如果企业不缺钱的情况下申请购买SSL证书,当然也可以申请免费 ...
- asn1 pem pfx格式证书_Springboot中详细配置SSL证书
一.为什么要部署SSL证书: 目前互联网采取的是全网强制SSL,尤其是微信开发.APP开发.谷歌等都是强制的,为确保数据安全性,把http请求改成HTTPS(URL https://而不是http:/ ...
- play框架配置 拦截器_如何使用Play框架为https配置SSL证书
play框架配置 拦截器 我花了几个小时试图使它起作用,最后,问题是我自己没有使用keytool生成CSR(证书请求). 当我尝试通过https访问Play时,我一直收到此错误: javax.net. ...
- 如何使用Play框架为https配置SSL证书
我花了数小时试图使它起作用,最后,问题是我自己没有使用keytool生成CSR(证书请求). 尝试通过https访问Play时,我一直收到此错误: javax.net.ssl.SSLPeerUnver ...
- SpringBoot项目配置SSL证书微信小程序jar包
本文主要针对SpringBoot微信小程序jar包运行的项目如何配置SSL证书. 关于域名:请确定域名已经获得ICP备案,服务器对外端口开放. 根据⼩程序官⽅⽂档描述,微信⼩程序的wx.request ...
- 记录一次在linux上配置ssl证书
5分钟带你配置免费的ssl tomcat版 前言 区别 提前准备 开始 申请 配置 前言 由于最近项目的微信支付一块需要涉及到退款,这个需要https,所以先自己弄一个测试,在此记录这一次配置ssl证 ...
- JavaWeb项目部署服务器并配置ssl证书教程
JavaWeb项目部署服务器并配置ssl证书教程 相信大家学了1.2年的编程后可能已经学会了自己写web项目,但是也只能在自己本地玩耍,十分的打击学习热情(主要是没办法跟朋友装杯).本文是一篇较为详细 ...
最新文章
- Mapreduce编程1之WordCount
- Andriod的Http请求获取Cookie信息并同步保存,使第二次不用登录也可查看个人信息...
- WEB项目中的中文乱码问题
- Ubuntu 及其衍生版安装使用录屏工具【SimpleScreenRecoder】
- 翻译:SQL Server中的索引内部结构:到SQL Server索引级别10的阶梯。
- XCode 快捷键, MAC 快捷键
- I. Space Station(hash记忆化+dp)
- 3D Object Detection入门——PointRCNN代码学习
- Java学习:多线程
- 联想微型计算机扬天s711怎么拆,如何优雅的拆掉一体机电脑 Lenovo 联想 扬天S5250...
- 【清华大学】深入理解操作系统(陈渝) 第一章
- 计算机中常用的数学知识
- C语言实现机器猫绘制
- The package javax.swing is not accessible错误的三种解决办法,亲测有效
- word里如何在□里打√!框框里打勾
- SD-WAN,改善网络现状
- 社会责任·价值共创,中关村网络安全与信息化产业联盟对话网信企业家海泰方圆董事长姜海舟
- JAVA基础经典50题
- vue实现任务周期cron表达式选择组件
- 隐藏表白技能,python教你如何使用图片exif信息隐藏表白,教你如何修改,查询exif信息。
热门文章
- 雪花开发者中心地府云自适应1号模板 雪花xueidc插件
- zk4元年拆解_科比5 Protro开箱测评 zk5元年拆解赏析
- 媒体查询笔记、 @media
- thinkphp仿百度文库网站源码
- .net数据库连接池配置技巧(默认值)
- 你应该升级到SQL Server 2005还是SQL Server 2008?
- Moodl:集成密码,消除错误phpCAS error: phpCAS::client(): type mismatched for parameter $se
- Drupal 7 主题模板概述
- python——socket实现简单C/S交互开发
- double free or corruption 错误解决办法