【安全 - openssl 生成密钥对和CSR】
openssl req -new -nodes \
-newkey rsa:2048 \
-subj "/C=CN/O=CampanyName/CN=Client" \
-out client.csr \
-keyout client.key
这个命令会生成一个新的 2048 位 RSA 密钥对,并创建一个包含指定主题信息的证书签名请求。
重点摘要
- keyout : client.key 私钥在这里面
- out: client.csr 公钥在这里面,
- 同时这个文件可以包含 -subj 国家,组织,名称等信息,可以方便用于后续的证书生成。
- client.csr ,.csr 是 Certificate Signing Request 的缩写,即证书签名请求 ,用于后续请求生成证书。 证书在这些基础信息上,会多过期时间信息等。
以下为该命令详细解释:
openssl req
命令用于生成证书签名请求 (CSR) 和私钥。以下是各个参数的含义:
new
:生成一个新的证书签名请求 (CSR)。nodes
:不对私钥进行加密。如果不使用此选项,生成的私钥将会被加密,并且需要一个密码来解密。newkey rsa:2048
:生成一个新的 RSA 密钥对,密钥长度为 2048 位。subj "/C=CN/O=CampanyName/CN=Client"
:指定证书的主题信息,其中:C
:国家代码(例如 CN 表示中国)。O
:组织名称(例如 CampanyName)。CN
:通用名称(例如 Client)。
out client.csr
:- CSR : Certificate Signing Request,证书签名请求 ,用于后续生成证书。
- 指定生成的证书签名请求文件名为
client.csr
。
keyout client.key
:指定生成的私钥文件名为client.key
。