使用jdk的keytool 生成CA证书的方法

一、CA证书生成设置总共分为以下5步:

步骤:

1、根据javakeytool生成CA根证书,放在服务器

2、根据服务器CA根证书导出客户端证书

3tomcat增加SSL配置

4、客户端IE浏览器导入受信任客户端证书

5、使用客户端IE浏览器通过https协议访问portal

第一步:cmd到jdk的bin目录下执行 生成CA证书

keytool -genkey -alias "cdv" -keyalg "RSA" -keystore "c:\cdv.keystore" -dname "CN=10.7.4.68 , OU=CDV.COM , O=CDV, L=BEIJING, 
ST=BEIJING, C=CN" -keypass 0p-0p-0p- -storepass 0p-0p-0p- -validity 730

 使用jdk的keytool 生成CA证书的方法

第二步:根据服务器CA根证书导出客户端证书

执行keytool命令根据服务端证书导出客户端证书。

keytool -export -file "c:\cdv.crt" -alias "cdv" -keystore "c:\cdv.keystore"
使用jdk的keytool 生成CA证书的方法

 

为了便于说明附录上面配置的贴图:
使用jdk的keytool 生成CA证书的方法

CN= 写服务端的ip或域名,这个不能瞎写,需和客户端https访问的ip或域名 一致 否则导致证书校验失败,OU= O= L= ST= C= 可以随便写,validity 是证书有效期 默认是 90天,730 等于2年

第三步: tomcat的server.xml加配置 

tomcatserver.xmlSSL配置。

<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true"
               maxThreads="150" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreFile="c:\cdv.keystore" keystorePass="0p-0p-0p-" />

使用jdk的keytool 生成CA证书的方法

 

 为了便于说明附录上面配置的贴图:

使用jdk的keytool 生成CA证书的方法

服务端证书位置 需 和 tomcat的server.xml 配置一致,根据服务端证书导出的 cdv.crt客户端证书 需要导入到 客户端 IE浏览器 的受信任证书中(因我们自己 并非 官方CA发行机构,需人为导入到受信任证书中)

第四步:向浏览器(IE)导入受信证书

 使用jdk的keytool 生成CA证书的方法

查了下 阿里云的CA授信价格 最便宜的是 1年5000(这钱太好挣了),CA 和 https 主要是银行登录、电子交易 这种 关键数据 传输加密用的多,其实一般的管理系统 没必要用,用https 请求明显比 http请求 慢

CA中心又称CA机构,即证书授权中心(Certificate Authority ),或称证书授权机构,作为电子商务交易中受信任的第三方,承担公钥体系中公钥的合法性检验的责任。

相关理论知识自己百度

 使用jdk的keytool 生成CA证书的方法

二、抓包对比 

8080端口抓包样例

使用jdk的keytool 生成CA证书的方法

 

8443端口抓包样例

 使用jdk的keytool 生成CA证书的方法


本文转自SummerChill博客园博客,原文链接:http://www.cnblogs.com/DreamDrive/p/7523143.html,如需转载请自行联系原作者

上一篇:C语言中如何写一个简单可移植而又足够随机的随机数生成器


下一篇:C#多线程编程系列(三)- 线程同步