文档章节

用KeyTool生成安全证书

~少司命~
 ~少司命~
发布于 2013/02/28 17:27
字数 995
阅读 304
收藏 3

想飞的鳄鱼话费充值店,店名:与你同行话费充值专营店  

本人开了家网店,http://shop111296428.taobao.com ,店名:与你同行 ,是搞话费充值的,可以充值全国所有地区,三大运营商:中国移动中国联通中国电信.,全部是进货价处理,希望大家多多捧场,不求赚钱,只求好评.谢谢大家.

 

详细请见:Tomcat的帮助文档,:https://localhost:8080/tomcat-docs/ssl-howto.html  。
1、用keytool生成证书:
        keytool -genkey -alias tomcat -keyalg RSA -keystore c:/tomcat/mykey
说明:
    这里-alias tomcat 是表示生成的这个证书的别名叫tomcat,-keyalg RSA  指的是采用的RSA算法,-keystore c:/tomcat/mykey 是指生成的证书存储的位置。回车后会提示你输入keystore password,这可以自己定,然后是一些个人信息及组织信息,可以轻松搞定。
2、server.xml中添加的配置信息:
< Connector port="8888"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" disableUploadTimeout="true"
               acceptCount="100" debug="0" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" keystoreFile="C:\tomcat、mykey" keystorePass="123456" />
说明:
   Tomcat的用的端口是8888,后面keystoreFile是说明你的证书的位置,keystorePass是指密码。
3、重启Tomcat后在地址栏输入:https://localhost:8888 就搞定了~~~~~~~~
浏览显示的时候提示安装证书。

====================================
JDK中keytool常用命令
-genkey      在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
-alias       产生别名
-keystore    指定密钥库的名称(产生的各类信息将不在.keystore文件中
-keyalg      指定密钥的算法  
-validity    指定创建的证书有效期多少天
-keysize     指定密钥长度
-storepass   指定密钥库的密码
-keypass     指定别名条目的密码
-dname       指定证书拥有者信息 例如:  "CN=sagely,OU=atr,O=szu,L=sz,ST=gd,C=cn"
-list        显示密钥库中的证书信息      keytool -list -v -keystore sage -storepass ....
-v           显示密钥库中的证书详细信息
-export      将别名指定的证书导出到文件  keytool -export -alias caroot -file caroot.crt
-file        参数指定导出到文件的文件名
-delete      删除密钥库中某条目          keytool -delete -alias sage -keystore sage
-keypasswd   修改密钥库中指定条目口令    keytool -keypasswd -alias sage -keypass .... -new .... -storepass ... -keystore sage
-import      将已签名数字证书导入密钥库  keytool -import -alias sage -keystore sagely -file sagely.crt
             导入已签名数字证书用keytool -list -v 以后可以明显发现多了认证链长度,并且把整个CA链全部打印出来。
 
1.证书的显示
-list
[-v | -rfc] [-alias <alias>]
[-keystore <keystore>] [-storepass <storepass>]
[-storetype <storetype>] [-provider <provider_class_name>]
例如:keytool -list -v -alias RapaServer -keystore cacerts -storepass 12345678
keytool -list -v -keystore d2aapplet.keystore -storepass 12345678 -storetype IAIKKeystore
2.将证书导出到证书文件
例如:keytool -export -keystore monitor.keystore -alias monitor -file monitor.cer
将把证书库 monitor.keystore 中的别名为 monitor 的证书导出到 monitor.cer 证书文件中,它包含证书主体的信息及证书的公钥,不包括私钥,可以公开。
keytool -export -keystore d2aApplet.keystore -alias RapaServer -file Rapa.cert -storetype IAIKKeystore
3.将keystore导入证书中
这里向Java默认的证书 cacerts导入Rapa.cert
keytool -import -alias RapaServer -keystore cacerts -file Rapa.cert -keystore cacerts
4.证书条目的删除
keytool的命令行参数 -delete 可以删除密钥库中的条目,如: keytool -delete -alias RapaServer -keystore d2aApplet.keystore ,这条命令将 d2aApplet.keystore 中的 RapaServer 这一条证书删除了。
5.证书条目口令的修改
使用 -keypasswd 参数,如:keytool -keypasswd -alias RapaServer -keystore d2aApplet.keystore,可以以交互的方式修改 d2aApplet.keystore证书库中的条目为 RapaServer 的证书。
Keytool -keypasswd -alias RapaServer -keypass 654321 -new 123456 -storepass 888888 -keystore d2aApplet.keystore这一行命令以非交互式的方式修改库中别名为 RapaServer 的证书的密码为新密码 654321,行中的 123456 是指该条证书的原密码, 888888 是指证书库的密码。

如果是用socket作服务端或者客户端:

socket服务端:

            System.setProperty("javax.net.ssl.keyStore", "F:\\mine\\projects\\client\\src\\mykey");
            System.setProperty("javax.net.ssl.keyStorePassword", "123456");

socket客户端:

             System.setProperty("javax.net.ssl.trustStore", "F:\\mine\\projects\\client\\src\\mykey");


© 著作权归作者所有

共有 人打赏支持
~少司命~
粉丝 3
博文 76
码字总数 8735
作品 0
昌平
高级程序员
加载中

评论(1)

小沫
小沫
学习了 回去写写
Tomcat服务器配置https认证(使用keytool生成证书)

一、证书生成 1、生成服务器证书 (1)打开打开命令控制台,进入jdk的bin目录 cd D:Program Filesjdk1.6.0_45bin (2)keytool为Tomcat生成证书(“-validity 36500”证书有效期,36500表示100年,...

RobertZou
06/08
0
0
为Jenkins增加ssl(https)的访问支持(Windows/Linux)

前言: 增加ssl(https)的访问可以为部署在公网下的jenkins提供更安全的问题,最明显的好处应该是登录和jenkins-ci.jar的调用。 比如jenkins-ci.jar的调用,一般在windows下通过明文账号密码...

easonjim
2017/03/30
0
0
Java Tomcat SSL 服务端/客户端双向认证(一)

一、什么是SSL SSL (Secure Sockets Layer) is a standard security technology for establishing an encrypted link between a server and a client—typically a web server (website) an......

火龙战士
2016/10/25
106
0
weblogic服务部署ca证书

老大的需求把公司weblogic服务器由http访问方式为https 前提ca证书自己颁发不由统一的ca机构申请 一、环境准备 安装JDK(可选) Weblogic安装后自带JDK安装。如果您直接在服务器上生成证书请...

暖暖miss
2017/09/04
0
0
JDK自带工具keytool生成ssl证书(web服务https配置)

https://www.cnblogs.com/zhangzb/p/5200418.html 前言: 因为公司项目客户要求使用HTTPS的方式来保证数据的安全,所以木有办法研究了下怎么生成ssl证书来使用https以保证数据安全。 百度了不...

u011001084
2017/12/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

在Debian 9系统上安装Mysql数据库的方法教程

前言 看到题目大家应都会想,在 Debian 9 上安装 Mysql?那不是很简单的事儿吗?直接 sudo apt install mysql-server 不就行了吗? 没想到遇到了几个之前没遇到的问题,耽误了不少时间。 原来...

临江仙卜算子
43分钟前
4
1
从web实时通信讲H5 WebSocket

通常我们打开一个浏览器访问网页时,都会向页面所在的服务器发送一个HTTP请求,然后web服务器确认请求并向浏览器做出响应。简单的说,就是一个请求对应的一个响应。然而这种方法对许多的应用...

Code辉
57分钟前
3
0
Sharding-Sphere自动化执行引擎

Q: 什么叫"自动化执行引擎"? A: 一条SQL的生命周期是:从客户端发起、经过Sharding-Sphere处理、再到底层数据库执行消化。而在Sharding-Sphere里过程则是:SQL解析-->SQL优化-->SQL路由-->...

xiaomin0322
59分钟前
2
0
单模块中ReentrantLock的使用

背景 在单模块应用中,对同一个请求,需要进行同步。注意ReentrantLock的使用场景: 同一个线程中 同一个请求 RestController @RestControllerpublic class Controller {private final Re...

亚林瓜子
今天
2
0
Linux 4.1内核热补丁成功实践

好久不见的干货重现江湖!今日的内容是基于UCloud运维同学反馈的个别宿主机上存在进程CPU峰值使用率异常现象问题进行的相关阐述。本文详细介绍了该问题的完整分析思路和用热补丁的方式成功解...

UCloudTech
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部