Windows 环境 Tomcat 的 HTTPS 单向认证和双向认证的配置
2019独角兽企业重金招聘Python工程师标准>>>
单向认证,说的是浏览器验证服务器的真实性,双向认证是服务器也验证浏览器用户的真实性。 1、使用keytool生成keystore,命令如下:
keytool -genkey -alias fengyunhe -keyalg RSA -keystore fengyunhe.keystore -validity 3650
需要注意,填写的证书信息中名字于姓氏应该填写你的域名。 2、导出cert证书命令,因为是自签名的证书,不是CA颁发的所以浏览器会有警告,需要人工的安装证书到受信任的根证书颁发机构:
keytool -exportcert -alias fengyunhe -keystore fengyunhe.keystore -f fengyunhe.cer -v
3、打开tomcat的配置文件conf/server.xml,找到Connector对于HTTPS的配置,加入keystoreFile 和keystorePass属性。
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"maxThreads="150" SSLEnabled="true" scheme="https" secure="true"clientAuth="false" sslProtocol="TLS" keystoreFile="conf/fengyunhe.keystore" keystorePass="123456" />
注意端口是8443,所以启动tomcat后,访问https://www.fengyunhe.com:8443/就可以发现出现浏览器对于没有认证证书的警告信息。我们安装cert证书到系统中,人工加入到可信任的根证书颁发机构中,就好了。 如果是双向的认证,则需要将浏览器端生成的证书导入到服务器端的密钥库中,也就是keystore文件中。并且在上面的xml配置中,需要开启对客户端的验证。clientAuth需要设置为true,另外增加truststoreFile="conf/test.keystore" 和truststorePass="123456"的密钥库到服务端的keysotre文件中。下面是具体的步骤: 1、生成p12密钥库
keytool -genkey -alias client -keyalg RSA -storetype PKCS12 -keystore client.key.p12
因为是客户端的证书,所以名字好与姓氏就不需要一定是域名了。 2、将生成的p12证书安装到浏览器中,windows下直接双击就可以了,保存的位置使用自己就可以了。会存在“个人”中。 3、从p12密钥库导出证书
keytool -export -keystore cleint.key.p12 -storetype PKCS12 -alias client -file client.key.cer
4、将证书导入到server端的密钥库信任链中
keytool -import -file client.key.cer -keystore fengyunhe.keystore
5、在tomcat的配置中开启客户端的认证,并设置信任库文件和密码。 clientAuth需要设置为true,另外增加truststoreFile="conf/test.keystore" 和truststorePass="123456" 重启tomcat,再次访问server 的https 地址后就可以看到效果了,在打开浏览器访问server的时候,就会弹出证书确认的窗口。
tips:
本文由wp2Blog导入,原文链接:http://devonios.com/windows-tomcat-https.html
转载于:https://my.oschina.net/yangyan/blog/859384
Windows 环境 Tomcat 的 HTTPS 单向认证和双向认证的配置相关推荐
- Tomcat SSL/HTTPS 单向认证
前言 jdk 1.8 tomcat 7 jks证书库 准备 1.已经生成名为localhost.jks的证书库,证书库的密码为localhost. 2.证书库中有别名为localhost的证书,证书的 ...
- 实现tomcat的https单向认证及双向认证
前言 单向认证只需站点部署了ssl证书就行,任何用户都可以去访问(IP被限制除外等),只是服务端提供了身份认证 一般web应用都是采用单向认证的,原因很简单,用户数目广泛,且无需做在通讯层做用户身份验 ...
- SSL证书配置(https访问接口, 单向认证和双向认证)
拿到SSL证书后, 如何才能解锁更多玩法? 一. SpringBoots项目配置https访问接口(直接配置) SSL协议 配置步骤 1. 获取证书/ 生成证书 2. 放置证书 3. 配置项目 pro ...
- https 单向认证和双向认证
转载自 https 单向认证和双向认证 一.Http HyperText Transfer Protocol,超文本传输协议,是互联网上使用最广泛的一种协议,所有WWW文件必须遵循的标准.HTTP ...
- https ssl单项认证和双向认证以及证书生成
HTTP(HyperText Transfer Protocol,超文本传输协议)被用于在Web浏览器和网站服务器之间传递信息,在TCP/IP中处于应用层.这里提一下TCP/IP的分层共分为四层:应用 ...
- SSL/TLS单向认证和双向认证介绍
为了便于理解SSL/TLS的单向认证和双向认证执行流程,这里先介绍一些术语. 1. 散列函数(Hash function):又称散列算法.哈希函数,是一种从任何一种数据中创建小的数字"指纹& ...
- 服务器双向认证 原理,什么叫SSL双向认证 SSL双向认证过程是怎样的
我们都知道SSL认证能够分成SSL双向认证和SSL单向认证.那么,什么是SSL双向认证?SSL双向认证过程又是怎样的?小编就在接下来的内容为各位详细讲述. 什么叫SSL双向认证 SSL双向认证则是需要 ...
- Https单向认证和双向认证介绍
一.Http HyperText Transfer Protocol,超文本传输协议,是互联网上使用最广泛的一种协议,所有WWW文件必须遵循的标准.HTTP协议传输的数据都是未加密的,也就是明文的,因 ...
- 干货 | 图解 https 单向认证和双向认证!
一.Http HyperText Transfer Protocol,超文本传输协议,是互联网上使用最广泛的一种协议,所有WWW文件必须遵循的标准.HTTP协议传输的数据都是未加密的,也就是明文的,因 ...
最新文章
- 单电源运算放大器全波整流电路_几种二极管整流电路原理图解。
- asp向不同的用户发送信息_ASP.NET Core 中的那些认证中间件及一些重要知识点
- 中断处理及系统调用的处理过程
- python中哪些词是敏感字词_python实现敏感词过滤的几种方法
- 【Python算法】遍历(Traversal)、深度优先(DFS)、广度优先(BFS)
- Python(28)-异常
- 闲鱼账号被封怎么办?解封看这里!
- 【英语学习】【English L06】U07 Jobs L1 A computer programmer
- java中一个分而治之的框架ForkJoin
- 财务金融类网页及app界面设计模板
- 制作可以 SSH 登录的 Docker 镜像
- JDRefresh 轻简下拉刷新框架
- Rust: 外部函数接口(FFI)
- LEACH路由协议MATLAB仿真代码
- 前端页面缓存系列之localStorage
- 用Jsoup爬取中国天气网的实时天气(空气质量、温度、相对湿度、降雨量、风力风向)
- /xiaolei.php|martin_经典开源PHP项目
- Retrofit的封装
- 如何用 Telemetry 测试移动 APP H5性能?
- jetbrains intellij idea从2021.2.3版本开始需要用户登录之后才能使用,2021.2.2版本以及之前的版本不用登录
热门文章
- java窗口绘图_JAVA-窗口中绘制图形
- mysql的数据现实在小程序_使用phpstudy将本地mysql数据显示在微信小程序前端
- springboot 搭建分布式_爱了!阿里巴巴内部出品“SpringBoot+微服务指南”,理论与实战...
- netstat获取本机监听的地址列表 —— *awk与splite命令实现*(sudo netstat -nl | grep tcp……)
- CentOS 7 上安装 redis3.2.3安装与配置
- swift开源项目精选
- 关于数据同步,窗口同步之类
- [置顶] 显示/隐藏登录密码
- struts2拦截器遇到的问题
- 从终端命令行运行 AppleScript 脚本