JDK创建SSL证书

1. 生成SSL证书
(1)进入JDK安装目录下的cacerts文件所在目录

例:C:\Program Files\Java\jdk1.8.0_261\jre\lib\security
在这里插入图片描述
(2)在路径处输入cmd后回车,进入命令行窗口(当然也可以直接在桌面进入命令行窗口,再通过cd命令进入cacerts文件所在目录) 目的在于向JDK中导入证书方便。
(3)创建证书指令

证书库的登录原始密码:changeit
命令中括号部分均为括号前代码的提示,非命令的一部分,需删除

keytool -genkey -alias weblogicCas(别名) -keyalg RSA -keysize 1024 -keypass changeit(密码) -validity 365 -keystore D:\weblogicCas.keystore(生成证书后存放的地址以及证书的名字) -storepass changeit(密码)

注意:;两个密码要一致,别名是在查看证书时显示的唯一标识,不可重复,建议使用证书库原始密码方便记忆,也可自己设置
(4)导出证书指令

keytool -export -alias weblogicCas(别名) -keystore D:\weblogicCas.keystore -file D:\weblogicCas.cer -storepass changeit(密码)

(5)添加证书

正常导入不限制路径

sudo keytool -import -keystore cacerts(此处如果当前cmd窗口不在cacerts文件所在目录下,则需要写cacerts文件的完整路径) -file D:\weblogicCas.cer  -alias weblogicCas -storepass changeit(此处的密码是证书库的密码,不是起初证书设置的密码,如果没修改过,默认是changeit)

将证书放到jre->lib->security下可用

keytool -import -alias weblogicCas -file weblogicCas.cer -keystore cacerts(此处如果当前cmd窗口不在cacerts文件所在目录下,则需要写cacerts文件的完整路径) -trustcacerts -storepass changeit(此处的密码是证书库的密码,不是起初证书设置的密码,如果没修改过,默认是changeit)

(6)显示证书

查询全部证书

keytool -list -keystore cacerts(此处如果当前cmd窗口不在cacerts文件所在目录下,则需要写cacerts文件的完整路径)  -storepass changeit

根据设置的别名查询证书,可以用来验证某一证书是否成功添加到了证书库中

keytool -list -keystore cacerts(此处如果当前cmd窗口不在cacerts文件所在目录下,则需要写cacerts文件的完整路径)  -storepass changeit -alias weblogicCas(别名)

(7)删除证书

keytool -delete -alias weblogicCas(别名) -keystore cacerts(此处如果当前cmd窗口不在cacerts文件所在目录下,则需要写cacerts文件的完整路径)

注:可能遇到的问题
问题描述

 C:\Program Files\Java\jdk1.8.0_241\jre\lib\security>keytool -import
 -alias aliyun-maven -keystore cacerts -file E:\entSoftware\aliyun-maven.cer 输入密钥库口令: …………一堆证书内容信息

 是否信任此证书? [否]:  y 证书已添加到密钥库中 keytool 错误: java.io.FileNotFoundException:
cacerts (拒绝访问。)

原因分析

    文件找不到?不可能的,上面能读取到证书内容怎么可能是文件找不到。

    真正的原因是因为权限不足,所以拒绝访问。

    为什么会权限不足?因为我的JDK是以默认路径安装到C盘中的,对其进行操作需要管理员权限。

解决方案

已管理员身份运行命令提示符,如何以管理员身份运行参考如下链接

参考:https://jingyan.baidu.com/article/ceb9fb10b53ab88cac2ba05b.html

posted @ 2023-02-21 11:05  锐洋智能  阅读(406)  评论(0编辑  收藏  举报