内网Https 自签Https证书 配合Tomcat 实现内网Https详细图文
内网项目启用Https配置手册
软件需求:
- OpenSSL https://www.openssl.org/
- 已经安装了Java Jdk环境
制作前的需求:
- 已经配置了Jdk环境变量
- 安装好OpenSSL后配置了环境变量

开始制作CA根证书
在任意盘符(我这里选择G盘)下新建一个文件夹 这里我建立一个ca的文件夹用来存储生成的CA证书

创建私钥
生成私钥命令:openssl genrsa -out ca/ca-key.pem 1024

创建证书请求
命令:openssl req -new -out ca/ca-req.csr -key ca/ca-key.pem

生成CA自签证书
命令:openssl x509 -req -in ca/ca-req.csr -out ca/ca-cert.pem -signkey ca/ca-key.pem -days 3650(10年有效期)

制作服务器证书
用 java 自带的 keytool工具生成密钥(密码123456)
命令:keytool -genkey -alias example -validity 365 -keyalg RSA -keysize 1024 -keypass 123456 -storepass 123456 -keystore example.jks

用keytool工具生成证书请求(涉及到的证书名字是 example)
命令:keytool -certreq -alias example -sigalg MD5withRSA -file example.csr -keypass 123456 -keystore example.jks -storepass 123456

根据证书请求,用CA签证,生成服务器证书
命令:openssl x509 -req -in example.csr -out example.pem -CA ca/ca-cert.pem -CAkey ca/ca-key.pem -days 365 -set_serial 1

向 本地keystore 密钥库中导入证书
命令:keytool -import -v -trustcacerts -keypass 123456 -storepass 123456 -alias root -file ca/ca-cert.pem -keystore example.jks

导入服务器证书
命令:keytool -import -v -trustcacerts -storepass 123456 -alias example -file example.pem -keystore example.jks

单独导出 CA 作为信任证书
命令:keytool -import -alias example-ca -trustcacerts -file ca/ca-cert.pem -keystore exampletrust.jks

这里输入的密码是:123456 证书的密码
查看生成的文件:

客户端安装证书:
命令:openssl pkcs12 -export -clcerts -in ca/ca-cert.pem -inkey ca/ca-key.pem -out ca/ca.p12

这里输入的密码是 123456(证书密码)
查看生成证书:ca文件夹下面

ca.p12文件就是生成的证书
双击打开导入——》当前用户——》下一步——》输入密码(123456)——》
打开ie浏览器,在 internet 选项``内容中清除ssl状态,重启浏览器再重新访问,就不会再有不信任的提示。

点击下一步完成即可!
Tomcat 服务器导入证书
首先复制刚才生成的那两个文件:
复制到tomcate 目录下面:例如放到conf文件夹下

打开server.xml文件 复制下面内容到指定位置:
复制内容:
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="250" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" keystoreFile="conf/example.jks"
keystorePass = "123456" truststoreFile="conf/exampletrust.jks"
truststorePass="123456"/>

放置位置:(注意放置位置一定要对!!!!!)
说明:123456表示的是证书密码 443是https默认端口
修改默认的http端口和https端口
默认Tomcat HTTP端口8080 HTTPS默认端口8443
修改下列位置8080——》80 8443——》443

=-------------------------------------------

强制使用Https
打开conf文件夹下面的web.xml(文件尾部!!!!) 添加以下代码到指定位置

<security-constraint>
<web-resource-collection>
<web-resource-name>SSL</web-resource-name>
<url-pattern>/*</url-pattern>
</web-resource-collection>
<user-data-constraint>
<transport-guarantee>CONFIDENTIAL</transport-guarantee>
</user-data-constraint>
</security-constraint>
最终效果

谷歌:

IE

参考博客:https://blog.csdn.net/byg184244735/article/details/85071877
内网Https 自签Https证书 配合Tomcat 实现内网Https详细图文的更多相关文章
- spring boot / cloud (五) 自签SSL证书以及HTTPS
spring boot / cloud (五) 自签SSL证书以及HTTPS 前言 什么是HTTPS? HTTPS(全称:Hyper Text Transfer Protocol over Secur ...
- 【HTTPS】自签CA证书 && nginx配置https服务
首先,搭建https服务肯定需要一个https证书.这个证书可以看做是一个应用层面的证书.之所以这么说是因为https证书是基于CA证书生成的.对于正式的网站,CA证书需要到有资质的第三方证书颁发机构 ...
- 让网站永久拥有HTTPS - 申请免费SSL证书并自动续期 Let’s Encrypt
让网站永久拥有HTTPS - 申请免费SSL证书并自动续期 Let’s Encrypt 为什么要用HTTPS 网站没有使用HTTPS的时候,浏览器一般会报不安全,而且在别人访问这个网站的时候,很有可 ...
- 谈HTTPS中间人攻击与证书校验(一)
一.前言 随着安全的普及,https通信应用越发广泛,但是由于对https不熟悉导致开发人员频繁错误的使用https,例如最常见的是未校验https证书从而导致“中间人攻击”,并且由于修复方案也一直是 ...
- Windows下Nginx配置SSL实现Https访问(包含证书生成)
Vincent.李 Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...
- Https握手协议以及证书认证
1. 什么是https Https = http + 加密 + 认证 https是对http的安全强化,在http的基础上引入了加密和认证过程.通过加密和认证构建一条安全的传输通道.所以https可以 ...
- 又拍云SSL证书全新上线,提供一站式HTTPS安全解决方案
互联网快速发展,云服务早已融入每一个人的日常生活,而互联网安全与互联网的发展息息相关,这其中涉及到信息的保密性.完整性.可用性.真实性和可控性.又拍云上线了与多家国际顶级 CA 机构合作的数款OV & ...
- HTTPS原理和CA证书申请(转)
原文地址:http://blog.51cto.com/11883699/2160032 众所周知,WEB服务存在http和https两种通信方式,http默认采用80作为通讯端口,对于传输采用不加密的 ...
- http跳转https方法:百度云如何让http自动跳转到https【免费SSL证书使用FAQ】
之前的一篇文章已经给大家提供了免费SSL证书的申请方法,这一篇文章是告诉大家在使用免费的SSL证书时可能会遇到的问题[怎么让http自动跳转到https以及http与https同时使用]的解决方法. ...
随机推荐
- 「ZJOI2019」Minmax搜索
传送门 Solution 叶子节点的变化区间是连续的,可得知非叶子节点的权值变化区间也是连续的 由此可知,\(W\)的变化值的可行域也是连续的,所以只需要看它能否变为\(W+1\)或\(W-1\) 对 ...
- httpd.exe你的电脑中缺失msvcr110.dll怎么办(WIN2008服务器环境装WAMP2.5出现的问题)
httpd.exe你的电脑中缺失msvcr110.dll怎么办 去微软官方下载相应的文件 1 打开上面说的网址 Download and install, if you not have it alr ...
- JSP的工作原理
jsp的本质就是一个servlet,jsp在第一次被访问时会被Web容器翻译成servlet index.jsp -> index_jsp.java -> 编译成index_jsp.cla ...
- 第05组Alpha冲刺(1/4)
队名:天码行空 组长博客连接 作业博客连接 团队燃尽图(共享): GitHub当日代码/文档签入记录展示(共享): 组员情况: 组员1:卢欢(组长) 过去两天完成了哪些任务:SVN管理工具搭建 展示G ...
- 【软工实践】Beta冲刺(5/5)
链接部分 队名:女生都队 组长博客: 博客链接 作业博客:博客链接 小组内容 恩泽(组长) 过去两天完成了哪些任务 描述 将数据分析以可视化形式展示出来 新增数据分析展示等功能API 服务器后端部署, ...
- PhpStorm 头部注释、类注释和函数注释的设置(稍微完善点)
首先,PhpStorm中文件.类.函数等注释的设置在:setting->Editor->FIle and Code Template->Includes下设置即可,其中方法的默认是这 ...
- N以内的素数计算(Java代码)
列出小于N的所有素数 普通计算方式, 校验每个数字 优化的几处: 判断是否整除时, 除数使用小于自身的平方根的素数 大于3的素数, 都在6的整数倍两侧, 即 6m - 1 和 6m + 1 publi ...
- [转]JRebel 热部署激活教程
原文地址:https://cloud.tencent.com/developer/news/303750 JRebel的官方地址(https://zeroturnaround.com/software ...
- docker安装并运行redis
拉取镜像: [mall@VM_0_7_centos ~]$ sudo docker pull redis:3.2 [sudo] password for mall: 3.2: Pulling from ...
- 淡sqlserver对like '%关键词%' 处理时的索引利用问题
说法一:百分号%通配符前置会让SQL查询不走索引,改走全表扫描.这种说法很流行 结论是错误的 事实上这种说法不太准确 通配符%前置会让SQL查找索引时效率极速下降,但在大多数情况下还是会走索引(不需要 ...