gpt4 book ai didi

node.js - 如何使用 CA 证书保护 Node Red

转载 作者:太空宇宙 更新时间:2023-11-03 12:58:58 28 4
gpt4 key购买 nike

我需要使用 CA 签名证书(而非自签名证书)来保护我的 Node Red。我将 Amazon EC2 与 Amazon Linux 结合使用。

最佳答案

我自己解决了这个问题。

为了使它正常工作——您需要为您的 Node red 设置一个域名。

我使用 COMODO 获取 SSL

获取 CERT

  1. ssh 进入服务器并进入安装了 node red 的主目录并运行这些命令:
  2. mkdir sslcerts

  3. cd sslcerts

  4. openssl genrsa -out ./private.key 2048

  5. openssl req -new -sha256 -key ./private.key -out ./{yourdomainname}.csr

  6. 在 COMODO SSL 过程中,您需要上面创建的 .csr 文件的内容
  7. 遵循 COMODO 的 SSL 请求程序
  8. 颁发证书后,您将获得一个 Certificates.zip 文件。将其解压缩到另一个目录
  9. 在解压缩的目录中,使用文本编辑器或 Linux 命令行创建 ca-bundle 文件。
  10. 按此顺序合并文件(我在这里使用 Linux 命令“cat”):

    $ cat COMODORSAAddTrustCA.crt COMODORSADomainValidationSecureServerCA.crt AddTrustExternalCARoot.crt > {yourdomainname}.ca-bundle. You need to copy both the ca-bundle file you just created AND the {yourdomainname}.crt file over to sslcerts on your server

使证书可供 Node Red 使用

  1. cd 到安装了 node red 的主目录,然后 cd 到(隐藏的).node-red 目录
  2. nano settings.js

  3. 在此文件的顶部,取消注释行:var fs = require("fs");
  4. 找到并取消注释 https: { key: ... }
  5. 将内容更改为:

    https: { ca: fs.readFileSync('sslcerts/{yourdomainname}.ca-bundle'), key: fs.readFileSync('sslcerts/private.key'), cert: fs.readFileSync('sslcerts/{yourdomainname}.crt') }

  6. 保存此文件 (CTRL-O),然后退出 (CTRL-X)
  7. 重新启动 Node red 并检查是否有任何启动错误。如果您遇到错误,您很可能在“https: {...”
  8. 中有拼写错误

关于node.js - 如何使用 CA 证书保护 Node Red,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41767326/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com