我有一台 Apache 服务器,它使用证书通过 https 为 Web 应用程序提供服务。我还有一个 Node.js 后端/API,它处理所有应用程序请求。
从 Apache 到客户端的流量是安全的,但目前从客户端到我的后端的流量并不安全。我想通过对我的 Node.js API 使用 https 来更改此设置,并使用与建议相同的证书:这个问题。
为此,我创建了一个组certs
,并nodeapi.service
在 sytemd 中编辑了文件,使其属于该组。我还将运行 node.js 服务的用户添加到该组:
groups nodeuser
nodeuser : nodeuser sudo certs
然后我改变了文件的权限,以便该组可以访问它们:
-rw-rwx--- 1 600 certs 1931 Nov 20 15:13 certificate.crt
-rw-rwx--- 1 600 certs 1704 Nov 20 15:12 certificate.key
我希望这能起作用但节点崩溃了:
Error: EACCES: permission denied, open './cert/certificate.key'
我可能错过了什么?
答案1
这RubberStamp 的评论答案是。该组certs
对该文件夹没有执行权限,因此无法查看内部内容。将文件夹的权限设置为至少550
有效。