Tomcat的Https设置及Http自动跳转Https
Https相关介绍
Https是由NetScape公司设计的一个基于Http的加密传输协议,可以这样理解Https = Http +SSL(安全套接层),Https的端口为443,而且还需要申请CA数字证书认证。
3.Https的设置
①申明CA数字证书
这里推荐一个免费的阿里平台的CA数字证书,点击申请 点击Symantec>选择证书类型增强型OV SSL,然后就会出现免费DV SSL。
进入证书控制台>点击申请签发证书>填写申请信息,证书绑定你自己的域名:www.f8xn.top,等待申核。SSL证书:几分钟-几小时左右可签发。
域名授权验证
RAM访问控制,同意授权
授权系统自动添加TXT解析记录,自动完成域名授权验证(会在域名解析中自动增加一条txt记录)。
数字证书有效期是在审核通过之后的1年内有效。免费证书只参绑定一个域名。
tomcat也可配置手动生成的SSL证书,这里不再介绍。
SSL证书安装/配置
Tomcat6之前支持JKS格式证书,从Tomcat7之后开始支持PFX格式证书。
审核通过后到证书控制台下载SSL证收, 包含PFX格式证书和密码文件。
阿里云的服务器,只支持端口443!,所以我们配置<Connector port="8443 />"节点时,填端口改成443。
并在阿里云上面添加开放443端口,才可以用https访问Tomcat的网站(重点)。开放端口时选择协议类型https443。
在你的tomcat目录下,新建目录/apache-tomcat-8/conf/cert,把你的证书_www..com.pfx拷贝进来。
修改server.xml
vim /apache-tomcat-8/conf/cert/server.xml
HTTP证书路径keystoreFile建议使用绝对路径/apache-tomcat-8/conf/cert/_www.com.pfx
证书密码填写刚才pfx-password.txt里的密码keystorePass="yKmbolin"。
在protocol中建议使用“org.apache.coyote.http11.Http11Protocol”,这样对性能有最大的优化。(但是这样会不支持中文URIEncoding="UTF-8"。)
<Connector port=""
protocol="org.apache.coyote.http11.Http11Protocol"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="/apache-tomcat-8/conf/cert/***_www.***.com.pfx"
keystoreType="PKCS12"
keystorePass="yKmbolin"
clientAuth="false"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>
tomcat6 JKS格式证书
<Connector port="" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="" scheme="https" secure="true"
clientAuth="false"
keystoreFile="/apache-tomcat-8/ssl/server.jks" keystorePass="" truststoreFile="/apache-tomcat-8/ssl/server.jks" truststorePass="" sslProtocol="TLS" />
clientAuth=”true”,则开启双向认证,客户端访问需要有客户端证书;
keystoreFile 和 trustStroreFile 传入您制作好的 JKS 文件的路径,示例中以 server.jks 为例;
keystorePass 和 trustStrorePass 传入您的 JKS 的密码,示例中以 jks 的密码 123456 为例。
Http自动跳转Https
①编辑conf/web.xml文件
②在web.xml 文中上行</web-app>加上如下配置:
<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> 然后 :wq保存并退出。 ③重启Tomcat服务 输入 ./startup.sh
保存退出。重启tomcat即可。
/apache-tomcat-85/bin/shutdown.sh
/apache-tomcat-8/bin/startup.sh
打开测试 https://www.***.com
查看网站的安全证书,在开发者工具上
按F12>Security>View certificate。
注意tomcat和jdk版本要各自支持
来自:https://www.cnblogs.com/f8xn/articles/10217768.html
https://blog.csdn.net/gary_yan/article/details/77981303
Tomcat的Https设置及Http自动跳转Https的更多相关文章
- nginx证书制作以及配置https并设置访问http自动跳转https(反向代理转发jboss)
nginx证书制作以及配置https并设置访问http自动跳转https 默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译时指定–with-http_ssl_module参数,安装模块依赖 ...
- 设置HTTP请求自动跳转HTTPS
第一种方式,分两种情况: 第一种情况:修改Nginx安装目录/conf/nginx.conf文件 server { listen 80; server_name localhost; #将localh ...
- Tomcat 服务器安装 SSL证书,实现 HTTP 自动跳转 HTTPS
本文以阿里云为例: 一.下载证书 1.1.登录阿里云:https://www.aliyun.com/ 1.2.控制台搜索:SSL证书 1.3.进入 SSL证书控制台 1.4.申请免费 SSL证书,已有 ...
- IIS服务器设置http自动跳转https方法
很多站长在部署SSL证书后,网站实现https加密访问,但考虑到用户习惯了http访问,很多外链也是http访问形式,所以需要在IIS服务器配置http自动跳转https,避免用户通过http访问不到 ...
- 【转载】网站配置Https证书系列(三):IIS网站设置Http链接直接跳转Https安全连接
Http链接请求是以明文的方式传输,在传输的过程中很容易被篡改数据,一个典型的例子就是运营商的网络劫持注入广告信息等,而Https请求则是安全加密的请求,报文数据以密文的形式进行传输.当IIS网站配置 ...
- chrome解决http自动跳转https问题
1.地址栏输入: chrome://net-internals/#hsts 2.找到底部Delete domain security policies一栏,输入想处理的域名,点击delete. 3.搞 ...
- Charles 抓包发现自动跳转为https 问题梳理
今天遇到个有点意思的问题.特此记录. 业务场景: 做了一个页面,但是对外是挂载在京东主站上.如:www.jd.com/yifu/123456.html. 现场情况: 在本地/测试环境/预发环境中,每次 ...
- iis7 https配置方法并且http跳转https
操作场景 本文档指导您如何在 IIS 中安装 SSL 证书. 说明: 本文档以证书名称 www.domain.com 为例. 本文档以操作系统 Windows10 为例.由于操作系统的版本不同,详细操 ...
- tomcat设置http自动跳转为https访问
一.生成服务器端证书文件 可以使用Windows系统或者Linux系统 (1)Windows环境 条件:已经安装JDK 步骤: 1.在运行里输入cmd进入命令窗口 2.进入JDK安装目录 如D:/P ...
随机推荐
- 了解AOP
Spring AOP的实现是基于JAVA的代理机制, 从JDK1.3开始就支持代理功能, 但是性能成为一个很大问题, 为了解决JDK代理性能问题, 出现了CGLIB代理机制.它可以生成字节码, 所以它 ...
- Senparc.Weixin.MP SDK 微信公众平台开发教程(十九):MessageHandler 的未知类型消息处理
这是<微信开发深度解析:微信公众号.小程序高效开发秘籍>出版之后写的第一篇微信相关的文章.从这一篇开始,将介绍第一版出版之后添加或修改的功能,或者对书上内容需要做的补充. MP v14.8 ...
- 从NoSQL到NewSQL,谈交易型分布式数据库建设要点
在上一篇文章<从架构特点到功能缺陷,重新认识分析型分布式数据库>中,我们完成了对不同"分布式数据库"的横向分析,本文Ivan将讲述拆解的第二部分,会结合NoSQL与Ne ...
- 解析Java分布式系统中的缓存架构(上)
作者 陈彩华 文章转载交流请联系 caison@aliyun.com 本文主要介绍大型分布式系统中缓存的相关理论,常见的缓存组件以及应用场景. 1 缓存概述 2 缓存的分类 缓存主要分为以下四类 2. ...
- Windows下Tomcat内存占用过高问题跟踪(ProcessExplorer+jstack)
一.问题描述 Tomcat下面部署很多个java项目的war包,tomcat启动一段时间后,发现cpu占用过高,整个界面卡死! 二.通过process explorer查看java进程下的线程 pro ...
- Java 判断两个对象是否相等
一.使用 == 与 equals == : 它的作用是判断两个对象的地址是不是相等.即,判断两个对象是不是同一个对象.(基本数据类型==比较的是值,引用数据类型==比较的是内存地址) equals() ...
- 【app】自动化环境搭建(Appium)for java
Appium来做app自动化相信大家都很熟悉了吧,就不再赘述他的概念和作用了,我们接下来着重介绍怎么来搭建整个app自动化环境,整个环境包括如下几个步骤: 1.安装jdk和eclipse及配置jdk的 ...
- PHP之ThinkPHP框架(数据库)
PHP是网站后台开发语言,其重要的操作对象莫过于数据库,之前有了解过mysqli和pdo,但ThinkPHP的数据库交互必须使用其特定的封装方法,或者可以认为其是对PHP数据库操作的进一步封装,以达到 ...
- 分布式事务之深入理解什么是2PC、3PC及TCC协议?
导读 在上一篇文章<[分布式事务]基于RocketMQ搭建生产级消息集群?>中给大家介绍了基于RocketMQ如何搭建生产级消息集群.因为本系列文章最终的目的是介绍基于RocketMQ的事 ...
- ASP .NET CORE 根据环境变量支持多个 appsettings.json
0.背景 在开发项目的过程当中,生产环境与调试环境的配置肯定是不一样的.拿个最简单的例子来说,比如连接字符串这种东西,调试环境肯定是不能连接生产数据库的.在之前的话,这种情况只能说是你 COPY 两个 ...