openssl生成证书

nodcat
37
2025-06-13
Welcome to Code Block's blog

本篇文章主要介绍了
[openssl生成证书]
❤博主广交技术好友,喜欢我的文章的可以关注一下❤

一、概述

本文章是记录openssl命令生成私钥、证书签名请求、CA证书的命令和相关参数的解释。其中包含了各参数的名称、作用、技术细节和安全建议。

  • CA私钥: 相当于加密时的密码,或者部门盖章。
  • 证书签名请求: 相当于申请表,在获取CA证书后就失效。
  • CA证书: 相当于颁发的证件。

二、关键步骤


2.1 生成CA私钥

openssl genrsa -out ca-key.pem 4096
参数 作用 技术细节 安全建议
genrsa 生成RSA私钥 使用RSA算法(非对称加密) 优先选择RSA 4096或ECC 256+
-out ca-key.pem 指定私钥输出文件 PEM格式(Base64编码) 生成后立即设置权限:chmod 600 ca-key.pem
4096 密钥长度 2048位是底线,4096位更安全 更长密钥更安全但性能更低

2.2 生成CSR(证书签名请求)

openssl req -new -key ca-key.pem -out ca-csr.pem
参数 作用 技术细节 交互说明
req 处理证书请求 遵循PKCS#10标准 -
-new 创建新CSR 生成新的公钥对(从私钥派生) 需要输入身份信息
-key ca-key.pem 指定签名私钥 用该私钥对CSR进行签名 确保私钥文件路径正确
-out ca-csr.pem 输出CSR文件 包含公钥+身份信息(不含私钥) 可临时保存,用后删除

交互流程示例(执行命令后会提示输入):

Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Beijing
Locality Name (eg, city) [Default City]:Beijing
Organization Name (eg, company) [Default Company Ltd]:My CA Inc.
Organizational Unit Name (eg, section) []:Security
Common Name (eg, your name or your server's hostname) []:My Root CA
Email Address []:admin@myca.com

2.3 自签名生成CA证书

openssl x509 -req -days 3650 -in ca-csr.pem -signkey ca-key.pem -out ca-cert.pem
参数 作用 技术细节 关键注意事项
x509 X.509证书操作 遵循RFC 5280标准 -
-req 输入是CSR文件 而非直接生成证书 必须与CSR匹配
-days 3650 证书有效期 10年(3650天) CA证书通常设较长有效期
-in ca-csr.pem 指定输入的CSR 提取公钥和身份信息 确保与私钥对应
-signkey ca-key.pem 用私钥自签名 使证书具备权威性 绝对不要泄露此私钥
-out ca-cert.pem 输出证书文件 PEM格式(Base64编码) 可自由分发

三、小结

在通信过程中,私自颁发的Openssl证书同样可用于通信,如自搭建的rpc通信服务,同样可以保证通信的安全,如果要使用已认证的如HTTPS请求,需向专业机构进行请求。


如果你对区块链感兴趣,可以浏览我的专栏:区块链

感谢您的关注和收藏!!!!!!

6ff05862ca25a4824ca547b76677698d.jpeg

动物装饰