如何将JKS证书转成PEM证书

今天在七牛上配置自定义域名,在开启https时,需要配置SSL证书。在此之前,我已经申请好了SSL证书,格式为JKS,但是七牛只支持上传pem格式的证书(不知道咋想的…)。没辙,那就从JKS证书里把证书提取出来吧,下面开始操作

今天在七牛上配置自定义域名,在开启https时,需要配置SSL证书。在此之前,我已经申请好了SSL证书,格式为JKS,但是七牛只支持上传pem格式的证书(不知道咋想的...)。没辙,那就从JKS证书里把证书提取出来吧,下面开始操作

1. 设置密码

如果jks密钥库已经设置了密码,此步骤直接跳过。如果没有设置,需要先设置密码,否则后面第三步会报错。

执行以下命令:

 keytool -keystore <证书库文件> -storetype JKS -storepass <证书库密码> -keypasswd -alias <证书别名> -keypass <原keypass密码> -new <新keypass密码,与keystore密码一致>

2. 提取公钥

打开终端,cd证书目录,输入以下命令

 keytool -list -rfc -keystore <JKS密钥库文件> -storepass <JKS密钥库密码>

执行完成后,将打印出以下内容,其中从第一个-----BEGIN CERTIFICATE-----到最后一个-----END CERTIFICATE-----之前的内容即是证书中的公钥链,完整复制后,保存到其他地方即可。

image-20210119204117719

3. 提取私钥

接下来提取私钥,分两步操作。

  1. 先将JKS文件转成PKCS12格式,输入一下命令:

 keytool -importkeystore -srckeystore <JKS密钥库文件> -srcstorepass <JKS密钥库密码> -destkeystore <转换后的密钥库文件,以.p12结尾> -deststoretype pkcs12

执行完成后,在目录下面将得到一个新的文件,以.p12结尾,比如名称为new.p12

  1. 从PKCS12格式的密钥库中导出私钥,输入以下命令:

 openssl pkcs12 -in <PKCS密钥库文件> -nocerts -nodes -out <私钥文件,以.key结尾>

执行完成后,在目录下会得到一个新的文件,打开后里面就是私钥啦。

4. 使用公钥和私钥

得到公钥和私钥后,安装七牛操作界面的提示,分别填入我们上面获取的公钥内容(注意要复制完整的证书链)和私钥内容即可。

原创文章,作者:诺多,如若转载,请注明出处:https://www.huluohu.com/posts/31/

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
为Hexo博客自定义域名
上一篇 2018年4月16日 22:42
nginxWebUI: 一款好用的Nginx可视化管理工具
下一篇 2021年1月20日 22:52

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注