头图

前言

我们在开发 https 服务时,需要引入相应的 SSL 证书。

今天,我就自己在 Mac 上制作 SSL 证书的过程做个记录。

环境

MacOS 10.15.7

工具

openssl

步骤

第一步:终端执行命令。

//生成rsa私钥,des3算法,1024位强度,ssl.key是秘钥文件名。
openssl genrsa -des3 -out ssl.key 1024

第二步:输入密码。这里会输入两次,填写一样即可,随意填写一个,下一步就会删除这个密码。

image.png

通过上面这一步,就会在当前文件夹下生成一个 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 应该与域名保持一致。密码我们已经删掉了,直接回车即可。

image.png

温馨提示:Common Name 就是证书对应的域名地址,我们开发微信小程序时必须要让我们的外链的 https 的域名和证书统一才行。

第五步:生成自签名证书。根据以上 2 个文件生成 crt 证书文件,终端执行下面命令:

//这里3650是证书有效期(单位:天)。这个大家随意。最后使用到的文件是key和crt文件。
openssl x509 -req -days 3650 -in ssl.csr -signkey ssl.key -out ssl.crt

到这里我们的证书(ssl.keyssl.crt) 就已经创建成功了可以直接用到 https 的 server 中了。

image.png

使用证书

在代码中使用证书:

https
    .createServer(
        {
            key: fs.readFileSync("./cert_key/ssl.key"),
            cert: fs.readFileSync("./cert_key/ssl.crt")
        },
        app
    )
    .listen(1993);

总结

以上就是在 MacOS 上制作

~

~ 本文完,感谢阅读!

~

学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂!

大家好,我是〖编程三昧〗的作者 隐逸王,我的公众号是『编程三昧』,欢迎关注,希望大家多多指教!

你来,怀揣期望,我有墨香相迎! 你归,无论得失,唯以余韵相赠!

知识与技能并重,内力和外功兼修,理论和实践两手都要抓、两手都要硬!


编程三昧
54 声望10 粉丝

学习有趣的知识,交识有趣的朋友,造就有趣的灵魂!