在日常开发过程中,我们经常会需要使用https来进行开发和测试,往下看。使用 OpenSSL 生成证书的过程一般包括生成私钥、生成证书签名请求(CSR)、以及使用私钥签署证书。下面是一个常见的生成证书的流程,假设我们要生成一个自签名的证书。OpenSSL for Windows下载地址:Win64OpenSSL-3_4_0.exe
.exe
安装文件进行安装。如果没有选择自动配置环境变量,你也可以手动配置环境变量:
Path
,并点击“编辑”。安装完成后,打开 命令提示符(可以按 Win + R,输入 cmd 打开)并输入以下命令:
openssl version
如果 OpenSSL 安装成功,应该会显示 OpenSSL 的版本信息,例如:
OpenSSL 3.4.0 22 Oct 2024 (Library: OpenSSL 3.4.0 22 Oct 2024)
如果显示了版本信息,说明 OpenSSL 已经安装成功,并且环境变量配置正确。
首先,需要生成一个私钥。私钥是证书的核心部分,必须保密。
openssl genpkey -algorithm RSA -out private.key -aes256
-algorithm RSA
指定了生成 RSA 算法的私钥。-out private.key
指定了生成的私钥文件名。-aes256
使用 AES-256 加密私钥文件,可以根据需要更换加密算法。接下来,生成证书签名请求(CSR)。CSR 文件通常用于向 CA 请求签署证书,但我们也可以使用它来生成自签名证书。
openssl req -new -key private.key -out request.csr
-new
表示生成新的请求。-key private.key
使用之前生成的私钥。-out request.csr
指定 CSR 文件的输出文件名。在生成 CSR 时,OpenSSL 会提示你输入一些关于证书的信息,例如:
生成证书签名请求后,可以使用私钥来签署证书并生成自签名证书。
openssl x509 -req -in request.csr -signkey private.key -out certificate.crt -days 365
-req
表示是 CSR 请求文件。-in request.csr
是你刚才生成的 CSR 文件。-signkey private.key
使用之前生成的私钥签署证书。-out certificate.crt
指定生成的证书文件名。-days 365
设置证书的有效期(单位:天)。生成证书后,你可以使用以下命令查看证书内容:
openssl x509 -in certificate.crt -text -noout
这将显示证书的详细信息。
通过这些步骤,你就能生成自己的私钥和自签名证书。这种证书适用于测试和开发环境,但不适合生产环境。
在生产环境中,通常需要通过受信任的证书颁发机构(CA)来签署证书。