tomcat配置https–采用JDK自带的keytool工具生成证书
转自:http://blog.csdn.net/huangxinyu_it/article/details/41693633
有关http与https的区别请看《浅谈http与https的区别(转)》
目前我们看到的很多网站采用的都是http协议,信息是明文传输的,很容易被黑客或是有恶意行为的人截获,所以对于安全系数比较高的系统(如:银行等)不能直接采用http协议,需要采用https协议。使用https协议需要购买ca认证,本示例我们采用jdk自带的keytool工具生成证书,但是实际项目中需要从证书提供商购买。
一、生成证书
1、从命令行窗口进入到jdk安装目录下的bin中,如我本机:C:/Program Files/Java/jdk1.7.0_45/bin,使用如下命令:
keytool -genkey -alias tomcat -keyalg RSA -keystore d:/mykey/tomcat.keystore
说明:-alias tomcat 是表示生成的这个证书的别名叫tomcat;-keyalg RSA 指的是采用的RSA算法;-keystore d:/mykey/tomcat.keystore是指证书生成后保存到d:/mykey/tomcat.keystore
2、将.store文件导入到证书中
keytool -export -file d:/mykey/tomcat.crt -alias tomcat -keystore d:/mykey/tomcat.keystore
将d:/mykey/tomcat.keystore导入到d:/mykey/tomcat.crt证书中
3、将证书tomcat.crt导入到JVM中
keytool -import -keystore ../jre/lib/security/cacerts -file D:/mykey/tomcat.crt -alias tomcat
将tomcat.crt导入到C:/Program Files/Java/jdk1.7.0_45/jre/lib/security/cacerts
二、tomcat配置https
在tomcat下找到/conf/server.xml,默认tomcat是没有打开https的,找到如下代码:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />
打开注释,修改成:
<Connector SSLEnabled="true" clientAuth="false" keystoreFile="d:/mykey/tomcat.keystore" keystorePass="changeit" maxThreads="150" port="443" protocol="HTTP/1.1" scheme="https" secure="true" sslProtocol="TLS"/>
端口号改成https的默认端口号:443,keystoreFile证书所在位置,keystorePass证书密码
三、配置域名
http://www.luoshengsha.com本来就是可以访问的域名,但是此例中我们用它测试证书,所以不能让他访问真实的服务器,我们应该让他访问到本机,只有这样我们安装到本地JVM的证书才有效,方法如下:
打开C:WindowsSystem32driversetchosts,拉到最下面添加:
127.0.0.1 www.luoshengsha.com
四、启动tomcat
所有的配置都已完成,现在就让我们来启动tomcat吧。
输入:https://www.luoshengsha.com,会提示你该网站的安全证书不受信任,没错,这就是为什么让你到证书提供商购买的原因。
不用管它,点击仍然继续,出现如下信息:
至此,tomcat配置https就已完工!!!!
删除证书的命令:
keytool -delete -alias tomcat -keystore ../jre/lib/security/cacerts -storepass changeit
本文出自 luoshengsha.com,欢迎转载,转载时请注明出处及相应链接。
本文永久链接: http://www.luoshengsha.com/416.html
tomcat配置https–采用JDK自带的keytool工具生成证书的更多相关文章
- 使用JDK自带的keytool工具生成证书
一.keytool 简介 keytool 是java用于管理密钥和证书的工具,它使用户能够管理自己的公钥/私钥对及相关证书,用于(通过数字签名)自我认证(用户向别的用户/服务认证自己)或数据完整性以及 ...
- Tomcat配置https之 JDK SSL证书生成与验证
关于证书 SSL证书通过在客户端浏览器和Web服务器之间建立一条SSL安全通道(Secure socket layer(SSL),安全协议是由Netscape Communication公司设计开发. ...
- 用keytool制作证书并在tomcat配置https服务(一)
https分为单项认证和双向认证. 一般https页面上的访问都是单项认证,服务端发送数字证书给客户端,客户单方面验证.而服务端不做验证. 而双向认证,需要双方都有证书,然后发送给对方进行验证.一般用 ...
- 用keytool制作证书并在tomcat配置https服务(三)
用keytool制作证书并在tomcat配置https服务(一) 用keytool制作证书并在tomcat配置https服务(二) 用keytool制作证书并在tomcat配置https服务(四) 模 ...
- tomcat配置https方法
利用tomcat服务器配置https双向认证 步骤 1.为服务器生成证书进入控制台,切换到%JAVA_HOME%/bin目录,具体操作略. 使用keytool为Tomcat生成证书,假定目标机器的域名 ...
- 用keytool制作证书并在tomcat配置https服务(二 )
用keytool制作证书并在tomcat配置https服务(一) 双向认证: 我们上边生成了服务端证书,并发送给客户端进行了验证. 双向认证是双向的,因此还差客户端证书. 1.为方便导入浏览器,生成p ...
- 用keytool制作证书并在tomcat配置https服务(四)
用keytool制作证书并在tomcat配置https服务(一) 用keytool制作证书并在tomcat配置https服务(二) 用keytool制作证书并在tomcat配置https服务(三) 上 ...
- Tomcat8配置Https协议,Tomcat配置Https安全访问,Tomcat Https配置
Tomcat8配置Https协议,Tomcat配置Https安全访问,Tomcat Https配置 ============================== ©Copyright 蕃薯耀 2017 ...
- Tomcat 配置 HTTPS双向认证
Tomcat 配置 HTTPS 双向认证指引说明: � 本文档仅提供 Linux 操作系统下的指引 � 在阅读本指引前请您在 Linux 部署 JDK 和 Tomcatserver为了 Tomcat ...
随机推荐
- JS--理解参数,argument,重载
ECMAScript函数的参数与大多数其他语言函数的参数不同.ECMAScript函数不介意传递进来多少个参数,也不在乎传递进来的参数是什么数据类型. 原由在于,ECMAScript中的参数在内部是用 ...
- Notes on Large-scale Video Classification with Convolutional Neural Networks
Use bigger datasets for CNN in hope of better performance. A new data set for sports video classific ...
- OPENWRT安装配置指南之 17.01.4 LEDE
简介 这个东西,需要看简介的就不要看下去了. 下面已刚刷进去,路由IP地址为192.168.1.1为例开始配置. 浏览器访问192.168.1.1,无密码. 一:配置上网 不管你是什么方式上网,请根据 ...
- PC/FORTH 编辑程序
body, table{font-family: 微软雅黑} table{border-collapse: collapse; border: solid gray; border-width: 2p ...
- 某些material英文翻译
chrome 铬,铬合金, 镀铬 matte 无光泽的,不光滑的 Decal 陶瓷的 duo color 双色 livery (这个没找到什么吊意思,我看像是一个类似打logo的材质)
- Docker(1):初体验之应用挂载到容器
需在安装docker的机器上运行,本文机器环境为Win10,目录可根据实际自行修改. 1.首先创建一个目录:D:\docker\ROOT\WEB-INF 2.在D:\docker\ROOT\WEB-I ...
- sptring boot 修改默认Banner
一.自定义banner 启动Spring Boot项目时,在控制台或日志中会默认显示一个Banner,如图所示: 在我们的项目中更希望使用自己的Banner,这样看起来更帅写,但是这对于程序员来说并不 ...
- jmeter中操作数据库
jmeter是如何操作数据库的? 步骤一:导入jdbc的jar包,jmeter本身不能直接连接mysql,所以需要导入第三方的jar包来连接mysql 点击测试计划,添加classpath,选择mys ...
- C#窗体换肤
Form1.cs using System;using System.Collections.Generic;using System.ComponentModel;using System.Data ...
- VC下CString类型与int 、float等数据类型的相互转换
一.常用转换 1. CString --> int转换 CString str("1234"); int i= _ttoi(str); 2. CString --> ...