我们在开发 https 服务时,需要引入相应的 SSL 证书。
今天,我就自己在 Mac 上制作 SSL 证书的过程做个记录。
MacOS 10.15.7
openssl
第一步:终端执行命令。
//生成rsa私钥,des3算法,1024位强度,ssl.key是秘钥文件名。 openssl genrsa -des3 -out ssl.key 1024
第二步:输入密码。这里会输入两次,填写一样即可,随意填写一个,下一步就会删除这个密码。
通过上面这一步,就会在当前文件夹下生成一个 ssl.key
文件。
第三步:删除密码。
//终端执行删除密码命令 //这里目录和生成私钥的目录一致 openssl rsa -in ssl.key -out ssl.key
第四步:生成 CSR(证书签名请求)。我们根据根据刚刚生成的 key 文件来生成证书请求文件,终端执行如下命令:
openssl req -new -key ssl.key -out ssl.csr
执行以上命令后,需要依次输入国家、地区、城市、组织、组织单位、Common Name、Email 和密码。其中 Common Name 应该与域名保持一致。密码我们已经删掉了,直接回车即可。
温馨提示:Common Name 就是证书对应的域名地址,我们开发微信小程序时必须要让我们的外链的 https 的域名和证书统一才行。
第五步:生成自签名证书。根据以上 2 个文件生成 crt 证书文件,终端执行下面命令:
//这里3650是证书有效期(单位:天)。这个大家随意。最后使用到的文件是key和crt文件。 openssl x509 -req -days 3650 -in ssl.csr -signkey ssl.key -out ssl.crt
到这里我们的证书(ssl.key
和 ssl.crt
) 就已经创建成功了可以直接用到 https 的 server 中了。
在代码中使用证书:
https .createServer( { key: fs.readFileSync("./cert_key/ssl.key"), cert: fs.readFileSync("./cert_key/ssl.crt") }, app ) .listen(1993);
以上就是在 MacOS 上制作
~
学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂!
你来,怀揣期望,我有墨香相迎! 你归,无论得失,唯以余韵相赠!
知识与技能并重,内力和外功兼修,理论和实践两手都要抓、两手都要硬!