HTTPS配置中分为单向连接和双向连接,单向连接只需要服务器安装证书,客户端不需要,双向连接需要服务器和客户端都安装证书;

一、Keytool命令:

1、生成密钥对:

keytool -genkey -alias tomcat -keyalg RSA -keystore d:\.keystore

别名为tomcat,密钥算法名称为RSA,这个命令会在d:\目录下生成一个.keystore的文件;

2、查看命令:

keytool -list -keystore d:\.keystore

输入密码后就可以查看证书中的信息;

3、Keytool帮助信息:

Keytool –help

Keytool –genkey -help

二、配置文件:

1、把.keystore文件拷贝到tomcat的conf目录下;

2、修改server.xml配置文件,增加下面的连接:

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="conf/.keystore" keystorePass="12345678"/>

3、启动tomcat,然后在浏览器中打开:https://localhost:8443,如果浏览器提示证书不受信任,点继续浏览即可。单向连接配置完成。

三、双向连接配置:

1、创建服务器密钥:

keytool -genkey -v -alias tomcat -keyalg RSA -storetype JKS -validity 3650  -keystore server.keystore -dname "CN=localhost,OU=Unknown,O=Unknown,L=Unknown,ST=Unknown,c=Unknown" -storepass 12345678 -keypass 12341234

密钥库类型为JKS,生成的文件为server.keystore,同时创建第一个条目,别名为tomcat;

2、创建客户端密钥:

keytool
-genkey -v -alias client1 -keyalg RSA -storetype PKCS12   -validity 3650  -keystore client.p12 -dname
"CN=client1,OU=Unknown,O=Unknown,L=Unknown,ST=Unknown,c=Unknown"
-storepass 12345678

密钥库类型为PKCS12,生成的文件名称为client.p12,同时创建第一个条目,别名为client1,有效期为3650天;

3、将客户端导出为cer证书:

keytool
-export -alias client1 -keystore client.p12 -storetype PKCS12 -storepass
12345678 -rfc -file client1.cer

将客户端的KeyStore文件中的条目client1导出为证书文件client.cer;

4、将客户端的证书cer文件导入到服务器的密钥库中:

keytool
-import -v -alias sclient1 -file client1.cer -keystore server.keystore
-storepass 12345678

将客户端证书文件client1.cer导入到服务器密钥文件server.keystore中,并且导入后的别名为sclient1;

此时可以使用keytool –list查看服务器证书文件server.keystore,发现里面已经有两个条目了;

5、配置服务器的xml文件:

首先将server.keystore文件拷贝到tomcat的conf目录下,然后修改server.xml文件,添加如下配置:

<Connector
port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="150" SSLEnabled="true" scheme="https"
secure="true" clientAuth="true" sslProtocol="TLS"
keystoreFile="conf/server.keystore" keystorePass="12345678"
keyAlias="tomcat" keyPass="12341234"
truststoreFile="conf/server.keystore" truststorePass="12345678"/>

6、浏览器导入证书:

比如IE中导入证书文件:

工具-->Internet选项-->内容-->证书-->个人-->导入-->下一步-->浏览中找到client.p12即可;

tomcat中配置https的更多相关文章

  1. tomcat中配置https请求

    一.  创建tomcat证书 这里使用JDK自带的keytool工具来生成证书: 1. 在jdk的安装目录\bin\keytool.exe下打开keytool.exe 2. 在命令行中输入以下命令: ...

  2. 在 Tomcat 中配置 SSL/TLS 以支持 HTTPS

    本件详细介绍了如何通过几个简单步骤在 Tomcat 中配置 SSL/TLS .使用 JDK 生成自签名的证书,最终实现在应用中支持 HTTPS 协议. 生产密钥和证书 Tomcat 目前只能操作 JK ...

  3. [转载]JavaEE学习篇之——网络传输数据中的密码学知识以及Tomcat中配置数字证书EE

    原文链接:http://blog.csdn.net/jiangwei0910410003/article/details/21716557 今天是学习JavaWeb的第二天,我们来了解什么呢?就了解一 ...

  4. RSA原理、ssl认证、Tomcat中配置数字证书以及网络传输数据中的密码学知识

      情形一:接口的加.解密与加.验签 rsa不是只有加密解密,除此外还有加签和验签.之前一直误以为加密就是加签,解密就是验签.这是错误的! 正确的理解是: 数据传输的机密性:公钥加密私钥解密是密送,保 ...

  5. 【CAS单点登录视频教程】 第04集 -- tomcat下配置https环境

    目录 ----------------------------------------- [CAS单点登录视频教程] 第06集[完] -- Cas认证 学习 票据认证FormsAuthenticati ...

  6. JavaWeb学习篇之----Tomcat中配置数字证书以及网络传输数据中的密码学知识

    今天是学习JavaWeb的第二天,我们来了解什么呢?就了解一下Tomcat中配置数字证书的相关内容,但是在说这部分内容的时候,我们貌似得先说一下数字证书的相关概念,那说到数字证书的时候我们还得了解一些 ...

  7. 在 IIS 6 和 IIS 7中配置Https,设置WCF同时支持HTTP和HTPPS,以及使用HttpWebRequest和HttpClient调用HttpS

    IIS 7 ,给IIS添加CA证书以支持https IIS 6 架设证书服务器 及 让IIS启用HTTPS服务 WCF IIS 7中配置HTTPS C#利用HttpWebRequest进行post请求 ...

  8. 在tomcat中配置jdk的不同版本

    在tomcat中配置jdk的不同版本---------------------------------------------------------------------------------- ...

  9. JNDI和在tomcat中配置DBCP连接池 元数据的使用 DBUtils框架的使用 多表操作

    1 JNDI和在tomcat中配置DBCP连接池 JNDI(Java Naming and Directory Interface),Java命名和目录接口,它对应于J2SE中的javax.namin ...

随机推荐

  1. Navicat for mysql的下载及破解

    MySQL数据库是DOS界面的,使用起来要打命令,Navicat for MySQL基于Windows平台,为MySQL量身订作,提供类似于MsSQL的用户管理界面工具. 1.下载地址http://y ...

  2. java.lang.ClassCastException: android.os.BinderProxy cannot be cast to com.test.Test

    由于我在第二个Activity中指定了进程名字,但是服务却没有指定进程名(默认跟主入口一个进程)所以报错. 网上找到的是 服务 和绑定服务的客户端必须在同一个application或者进程中,所以Ma ...

  3. 前端select动态加载

    <select id ="ycode" cssclass="form-control selectpicker" name="ydljgId&q ...

  4. 20165326 java实验二

    2017-2018-2 20165326实验二<Java面向对象程序设计>实验报告 课程:Java程序设计 班级:1653班 姓名:陈卓 学号:20165326 成绩:指导教师:娄嘉鹏 实 ...

  5. alter system archive log current作用及和alter system switch logfile区别

    alter system archive log current 是归档当前的重做日志文件,不管自动归档有没有打都归档. alter system switch logfile 是强制日志切换,不一定 ...

  6. delphi-search-path-vs-library-path-vs-browsing-path

    https://stackoverflow.com/questions/812042/delphi-search-path-vs-library-path-vs-browsing-path   Del ...

  7. python flask 小项目

    0 开始之前 网上看了很多教程,都不是很满意,因此自己写一个大型教程,从入门到做出一个比较完整的博客.此次教程不是直接把整个博客直接代码整理出来然后运行一遍就完事,我会从flask的各个模块讲起.所以 ...

  8. 阻止ARP欺骗

    利用Look N Stop防火墙,防止arp欺骗 阻止网络执法官控制 网络执法官是利用的ARp欺骗的来达到控制目的的. ARP协议用来解析IP与MAC的对应关系,所以用下列方法可以实现抗拒网络执法官的 ...

  9. laravel 部署 前后端分离

    1. iis服务器配置(web.config): <configuration> <system.webServer> <rewrite> <rules> ...

  10. 拿到iframe页面里面的变量及元素的方法

    先严重差评一下,用这种方法window.parent.document.frames['layui-layer-iframe1']不行!而且frames方法存在浏览器不兼容问题(貌似火狐不行) 页面d ...