keytool制作CA根证书以及颁发二级证书

本文介绍了如何使用keytool工具生成自签名的CA根证书,并使用该根证书为其他证书签名,以建立信任链。内容包括keytool命令的使用、证书别名、加密算法的选择以及在Tomcat中的应用。同时,文章提到了证书请求文件的生成、认证中心的角色,以及将根证书导入系统以增加信任度的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

keytool是jdk自带的一款ssl管理工具,jdk6和jdk7的keytool命令有些不同,jdk7的兼容jdk6的,这里用的是jdk7下的keytool。搞了两天,遇到各种问题,甚是艰难啊

[root@localhost ~]# keytool -help
密钥和证书管理工具

命令:

 -certreq            生成证书请求
 -changealias        更改条目的别名
 -delete             删除条目
 -exportcert         导出证书
 -genkeypair         生成密钥对
 -genseckey          生成密钥
 -gencert            根据证书请求生成证书
 -importcert         导入证书或证书链
 -importkeystore     从其他密钥库导入一个或所有条目
 -keypasswd          更改条目的密钥口令
 -list               列出密钥库中的条目
 -printcert          打印证书内容
 -printcertreq       打印证书请求的内容
 -printcrl           打印 CRL 文件的内容
 -storepasswd        更改密钥库的存储口令

使用 "keytool -command_name -help" 获取 command_name 的用法


这是支持的命令,可以使用 keytool -command_name -help获得子命令的用法,如 keytool -genkeypair -help.

生成自签名的证书

[root@localhost ~]# keytool -genkeypair -alias rootca -keyalg RSA
输入密钥库口令:  
再次输入新口令: 
您的名字与姓氏是什么?
  [Unknown]:  xx认证中心
您的组织单位名称是什么?
  [Unknown]:  xx认证中心
您的组织名称是什么?
  [Unknown]:  xxrenz^H^H^H^[[D
您所在的城市或区域名称是什么?
  [Unknown]:  zz
您所在的省/市/自治区名称是什么?
  [Unknown]:  gd
该单位的双字母国家/地区代码是什么?
  [Unknown]:  CN
CN=xx认证中心, OU=xx认证中心, O=xx, L=zz, ST=gd, C=CN是否正确?
  [否]:  Y

输入 <rootca> 的密钥口令
	(如果和密钥库口令相同, 按回车):  
[root@localhost ~]# 

 alias是别名,就是给某某证书取个名字,可以随便写,可以用changealias命令修改

keyalg是加密算法,有DSA,RSA,默认是DSA,因为DSA只能用于签名,不能用于加密,一般只需要签名功能

这里有两个密码:密钥库密码和密钥密码,密钥库是存储密钥的地方,他有密码ÿ

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值