分享个人 Full-Stack JavaScript 项目开发经验
一般地,SSL 证书由证书权威机构(CA)签发。但在开发环境中,我们可以使用自签名证书。下面介绍如何使用 OpenSSL 创建私钥和自签名证书。
虽然 OpenSSL 项目不以二进制形式分发任何代码,但我们可以在wiki上找到非正式的二进制版本,点击下载。
安装完成后,在 cmd 命令行中输入 openssl version 查看版本,验证安装成功。输入 openssl help 可查看相关帮助信息。
在当前目录下创建一个2048位(Bits)、DES 三重加密的 RSA 密钥,存储在 server.enc.key 文件中。
openssl genrsa -des3 -out server.enc.key 2048
在创建过程中会要求你输入加密私钥的密码。
我们可以选择去掉私钥的密码。
openssl rsa -in server.enc.key -out server.key
去掉时会要求你提供起初的私钥密码。
证书签名请求(Certificate Signing Request)文件用于提交给证书颁发机构,然后证书颁发机构使用其根证书私钥签名就生成了证书公钥文件,也就是颁发给用户的证书。不过这里我们将会使用私钥自签名证书。
下面是创建证书签名请求的命令。
openssl req -new -key server.enc.key -out server.enc.csr
如果私钥没有去掉密码,这里同样需要提供私钥密码。创建过程中需要你输入关于自己和公司的详细信息,它们将合并到请求中。
创建一个有效期为一年的临时证书。如果私钥没有去掉密码,这里同样需要提供私钥密码。
openssl x509 -req -days 365 -in server.enc.csr -signkey server.enc.key -out server.enc.crt
一般可以考虑以下原因:
了解有关 Nginx 的 SSL 连接配置,请点击这里。