服务器结构
-
本地调试
-
正式上线后,通过 nginx 的方式转发
证书准备
获取证书的方式,本节只讨论本地怎么产生证书
- 方式 1:网上购买权威机构证书
- 方案 2:本地产生证书(浏览器会发出警告,不是安全连接)
安装 openssl
mac 自带
通过输入命令 openssl 测试
生成 CA 私钥
命令:
openssl genrsa -des3 -out ca-pri-key.pem 1024
解析:
- genrsa:密钥对生成算法
- -des3:使用对称加密算法 des3 对私钥进一步加密
- -out ca-pri-key.pem:将加密后的私钥保存到当前目录的 ca-pri-key.pem 文件中
- 1024:私钥的字节数
生成 CA 公钥(证书请求)
命令:
openssl req -new -key ca-pri-key.pem -out ca-pub-key.pem
- 通过私钥文件 ca-pri-key.pem 中的内容,生成对应的公钥,保存到 ca-pub-key.pem 中
- 运行过程中要使用之前输入的密码来实现对私钥文件的解密
其他输入信息:
- Country Name:国家名
- Province Name:省份名
- Local Name:城市名
- Company Name:公司名
- Unit Name:部门名
- Common Name:站点名
- …
生成 CA 证书
openssl x509 -req -in ca-pub-key.pem -signkey ca-pri-key.pem -out ca-cert.crt
使用 X.509 证书标准,通过证书请求文件 ca-pub-key.pem 生成证书,并使用私钥 ca-pri-key.pem 加密,然后把证书保存到 ca-cert.crt 文件中
生成服务器私钥
openssl genrsa -out server-key.pem 1024
生成服务器公钥
openssl req -new -key server-key.pem -out server-scr.pem
生成服务器证书
openssl x509 -req -CA ca-cert.crt -CAkey ca-pri-key.pem -CAcreateserial -in server-scr.pem -out server-cert.crt
https 模块使用
node👉 http 模块
上一篇