SSL.001

前言

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

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

环境

MacOS 10.15.7

工具

openssl

步骤

第一步:终端执行命令。

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

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

image.png

通过上面这一步,就会在当前文件夹下生成一个 ssl.key 文件。

第三步:删除密码。

  1. //终端执行删除密码命令
  2. //这里目录和生成私钥的目录一致
  3. openssl rsa -in ssl.key -out ssl.key

第四步:生成 CSR(证书签名请求)。我们根据根据刚刚生成的 key 文件来生成证书请求文件,终端执行如下命令:

  1. openssl req -new -key ssl.key -out ssl.csr

执行以上命令后,需要依次输入国家、地区、城市、组织、组织单位、Common Name、Email 和密码。其中 Common Name 应该与域名保持一致。密码我们已经删掉了,直接回车即可。

image.png

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

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

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

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

image.png

使用证书

在代码中使用证书:

  1. https
  2. .createServer(
  3. {
  4. key: fs.readFileSync("./cert_key/ssl.key"),
  5. cert: fs.readFileSync("./cert_key/ssl.crt")
  6. },
  7. app
  8. )
  9. .listen(1993);

总结

~

~ 本文完,感谢阅读!

~

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

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

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

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

更多相关文章

  1. Android(安卓)笔记
  2. Android(安卓)OpenGL之生成FloatBuffer
  3. vscode之emmet语法快速生成代码
  4. Nginx配置SSL和WSS步骤介绍
  5. android Gridview生成程序快捷键的简单方法
  6. android 利用Gson生成json数据
  7. html基础知识01
  8. 初识前端Emmet与Html
  9. Android(安卓)Socket与HTTPS校验

随机推荐

  1. Android BitmapShader 实战 实现圆形、圆
  2. android binder机制之--(我是Server Porxy
  3. IOS与Android的session的存储区别
  4. Android Activity生命周期
  5. Android ListView内存优化
  6. Android studio项目不能编译,提示设备版本
  7. Android数据库代码备忘
  8. Android ndk开发时查看编译器预定义宏
  9. Android : SeekBar 实现图片旋转缩放
  10. Android SDK安装教程