openssl 制作 信用库与服务证书

文章目录

  • 前言
    • [openssl 制作 信用库与服务证书](#openssl 制作 信用库与服务证书)
      • [1. CA 证书](#1. CA 证书)
      • [2. 服务器证书/秘钥库](#2. 服务器证书/秘钥库)
      • [3. 创建信用库](#3. 创建信用库)
      • [4. 注意事项](#4. 注意事项)

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。

  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


openssl 制作 信用库与服务证书

1. CA 证书

1、生成CA私钥

bash 复制代码
openssl genrsa -out ca.key 4096

2、生成自签名CA证书

bash 复制代码
openssl req -new -x509 -key ca.key -out ca.crt -days 10000 -subj "/CN=root/OU=yzy/O=yzy/L=Beijing/ST=Beijing/C=CN"

2. 服务器证书/秘钥库

生成服务器私钥

bash 复制代码
openssl genrsa -out yzy.key 2048

生成证书csr

bash 复制代码
openssl req -new -key yzy.key -out yzy.csr -subj "/CN=www.yzy.com/OU=yzy/O=yzy/L=Beijing/ST=Beijing/C=CN"

使用CA证书进行签发

bash 复制代码
openssl x509 -req -in yzy.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out yzy.crt -days 8000
bash 复制代码
* -req:表示输入的是一个证书签名请求(CSR)。
* -in yzy.csr:指定输入的 CSR 文件。
* -CA ca.crt:指定用于签名的 CA 证书。
* -CAkey ca.key:指定用于签名的 CA 私钥。
* -CAcreateserial:如果没有现成的序列号文件,创建一个新的序列号文件。
* -out yzy.crt:指定输出的已签名证书文件。
* -days 8000:指定证书的有效期为 8000 天。

生成服务端的P12证书

bash 复制代码
openssl pkcs12 -export -in yzy.crt -inkey yzy.key -out yzy.p12 -name "yzy_service" -certfile ca.crt

密码:yzy

bash 复制代码
keytool -list -v -keystore yzy.p12 -storetype pkcs12 -storepass yzy

3. 创建信用库

自定义信用库应该仅包含CA证书,用于验证客户端或其他服务器的证书

bash 复制代码
keytool -import -alias rootCa -file ca.crt -keystore root.jks -storepass  changeit
keytool -importkeystore -srckeystore root.jks -destkeystore root.p12 -deststoretype PKCS12 -srcstorepass changeit -deststorepass changeit

4. 注意事项

注意的是jdk与openssl的版本,要不然的话,会有兼容的问题,我的是
jdk 8 与 OpenSSL 1.1.1d

相关推荐
Lsetea1 天前
curl用IP测试HTTPS报证书不匹配:--resolve与Host头别混用
linux·https·ssl证书·openssl·curl
掉进电商坑三年没爬出来的东叔2 天前
云服务器搭建个人网站实战:从零到公网访问,含域名HTTPS
运维·服务器·https
Lsetea3 天前
OpenSSL verify报unable to get issuer certificate:error 2与partial_chain排查
linux·https·ssl证书·openssl·证书链
天天进步20153 天前
Caddy 实战:5 分钟给域名开启 HTTPS,自动申请 SSL 证书并反向代理
网络协议·https·ssl
xixingzhe23 天前
正确认知HTTPS:并非万能加密,通信安全需要多层防护
网络协议·安全·https
Lsetea3 天前
OpenSSL verify报unhandled critical extension:error 34与关键扩展排查
运维·https·ssl证书·openssl·证书链
Lsetea4 天前
OpenSSL verify报CA certificate key too weak:auth_level与弱密钥链排查
运维·https·ssl证书·openssl·证书链
灯澜忆梦4 天前
【minio】#5 | MinIO 分布式部署 + HTTPS 部署
分布式·网络协议·https·对象存储·minio
Lsetea4 天前
Nginx加载证书时报SSL_CTX_use_PrivateKey_file失败:私钥配对与权限排查
nginx·https·ssl证书·私钥·证书部署
91刘仁德5 天前
HTTPS 加密原理与 CA 数字证书:从对称加密到完整通信流程
网络·笔记·网络协议·http·https