欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 房产 > 家装 > https改造-自签CA证书相关证书创建

https改造-自签CA证书相关证书创建

2025/5/2 17:11:14 来源:https://blog.csdn.net/weixin_38316697/article/details/140497983  浏览:    关键词:https改造-自签CA证书相关证书创建

文章目录

  • 前言
    • https改造-自签CA证书相关证书创建
      • 1. CA证书创建
        • 1.1. 将 JKS 格式的密钥库转换为 PKCS12 格式
        • 1.2. 验证转换后的 PKCS12 密钥库
        • 1.3. 导出根证书
      • 2. 根据CA证书进行签发服务端证书
        • 2.1. 生成服务端证书请求(CSR)
        • 2.2. 使用根证书CA证书签发服务端证书
        • 2.3. 将根证书导入到服务端 keystore
        • 2.4. 确认证书扩展名的正确性
      • 3. 信用库制作
        • 3.1. 导出证书到信用库
        • 3.2. 查看信任库
        • 3.3. 删除信用库条目命令
      • 4. keystore工具安装
      • 5. 证书pem,私钥pem,信用库pem制作
        • 5.1. 证书pem制作
        • 5.2. 私钥pem制作
        • 5.3. 信用库pem制作
        • 5.4. 验证证书pem与秘钥pem

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


https改造-自签CA证书相关证书创建

1. CA证书创建

keytool -genkeypair -alias rootkey -keyalg RSA -keysize 2048 -keystore rootca.jks -dname "CN=rootYzy, OU=yzy, O=yzy, L=Beijing, ST=Beijing, C=CN" -validity 8000 -storepass changeit -ext BasicConstraints:critical=CA:true -ext KeyUsage=keyCertSign,cRLSign

在这里插入图片描述

1.1. 将 JKS 格式的密钥库转换为 PKCS12 格式
keytool -importkeystore -srckeystore rootca.jks -destkeystore rootca.p12 -deststoretype PKCS12 -srcstorepass changeit -deststorepass changeit

在这里插入图片描述

1.2. 验证转换后的 PKCS12 密钥库
keytool -list -v -keystore rootca.p12 -storetype pkcs12 -storepass changeit

在这里插入图片描述

1.3. 导出根证书
keytool -export -alias rootkey -keystore rootca.p12 -rfc -file rootca.crt -storepass changeit

在这里插入图片描述

2. 根据CA证书进行签发服务端证书

2.1. 生成服务端证书请求(CSR)

服务端证书中的CN 通常是服务器的域名。

keytool -genkeypair -alias yzy_service -keyalg RSA -keysize 2048 -keystore yzy_service.jks -dname "CN=www.yzy.com, OU=yzy, O=yzy, L=Beijing, ST=Beijing, C=CN" -validity 7300 -storepass yzy@yzykeytool -importkeystore -srckeystore yzy_service.jks -destkeystore yzy_service.p12 -deststoretype pkcs12  -srcstorepass yzy@yzy -deststorepass yzy@yzykeytool -certreq -alias yzy_service -keystore yzy_service.p12 -file yzy_service.csr -storepass yzy@yzy

在这里插入图片描述

2.2. 使用根证书CA证书签发服务端证书
keytool -gencert -alias rootkey -keystore rootca.p12 -infile yzy_service.csr -outfile yzy_service.crt -validity 7300 -storepass changeit -ext BasicConstraints:critical=CA:false -ext KeyUsage=keyEncipherment,dataEncipherment,digitalSignature -ext ExtendedKeyUsage=serverAuth

在这里插入图片描述

验证证书链:

openssl verify -CAfile rootca.crt yzy_service.crt

在这里插入图片描述
查看证书:

openssl x509 -in yzy_service.crt -text -noout

在这里插入图片描述

2.3. 将根证书导入到服务端 keystore

也可以作为客户端证书

keytool -import -alias rootkey -keystore yzy_service.p12 -file rootca.crt -noprompt -storepass yzy@yzy

在这里插入图片描述

2.4. 确认证书扩展名的正确性

确认证书扩展名的正确性,确保证书中包含正确的 Key Usage 和 Extended Key Usage:

openssl x509 -in yzy_client.crt -noout -text | find "X509v3"

在这里插入图片描述
确保根证书的扩展名正确,检查 Basic Constraints

openssl x509 -in rootca.crt -noout -text | find "X509v3 Basic Constraints"

在这里插入图片描述

3. 信用库制作

3.1. 导出证书到信用库
keytool -import -alias yzy_service -keystore rootca.p12 -file yzy_service.crt -storepass changeit

因为信用库要包含CA证书,所以直接拿rootca.p12作为信用库的地基。

在这里插入图片描述

3.2. 查看信任库
keytool -list -v -keystore rootca.p12  -storepass changeit

在这里插入图片描述

3.3. 删除信用库条目命令
keytool -delete -alias yzy_service -keystore rootca.p12 -storepass changeit
keytool -list -v -keystore rootca.p12  -storepass changeit

在这里插入图片描述
测试完删除条目后,把条目加回来。

4. keystore工具安装

下载地址:

https://keystore-explorer.org/downloads.html

安装后的样子:

在这里插入图片描述

5. 证书pem,私钥pem,信用库pem制作

5.1. 证书pem制作

打开KeyStore Explorer,并导入您的 yzy_service.p12 文件。
在这里插入图片描述

输入你制作yzy_service.p12时候的密码

在这里插入图片描述

在这里插入图片描述
选择您的客户端证书。
右键点击选择“Export” -> “Export Certificate Chain”。
在这里插入图片描述
选择导出格式为 .pem 并保存为 yzy_service_cert.pem。
在这里插入图片描述
在这里插入图片描述

导出成功!!!

5.2. 私钥pem制作

右键点击选择“Export” -> “Export Key Pair”。
选择导出格式为 .pem 并保存为 yzy_service_key.pem
在这里插入图片描述

输入你制作yzy_service.p12时候的密码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
导出成功!!!
在这里插入图片描述
使用 OpenSSL 将私钥文件转换为不加密的 PEM 格式:

openssl rsa -in yzy_service_key.pem -out yzy_service_key_unencrypted.pem

在这里插入图片描述

5.3. 信用库pem制作

生成yzy_service_full_chain.pem,包含完整的证书链

type yzy_service_cer.pem rootca.crt > yzy_service_full_chain.pem

在这里插入图片描述

5.4. 验证证书pem与秘钥pem
openssl x509 -noout -modulus -in yzy_service_cert.pem | openssl md5
openssl rsa -noout -modulus -in yzy_service_key_unencrypted.pem | openssl md5

查看生成的md5值是否一样:
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词