【发布时间】:2016-08-06 01:03:49
【问题描述】:
我正在尝试在我的 Node.js 应用程序上使用 HTTPS,就像它已经为其他任何东西启用一样。我已经安装了密钥和证书,但是当我试图在应用程序上指向它们时,我得到了 Error: EACCES, permission denied。
密钥和证书都在/etc/pki/tls 的子文件夹中,我尝试这样指向它们:
var privateKey = fs.readFileSync('/etc/pki/tls/private/serverKey.key').toString(),
certificate = fs.readFileSync('/etc/pki/tls/certs/2_mikewarren.me.crt').toString();
var options = {
key: privateKey,
cert: certificate
}
我是否需要调整密钥和证书的权限(通过chown)?如果是这样,这样做安全吗?
【问题讨论】:
-
为什么不把文件移动到你的 node.js 代码所在的目录呢?您知道 node.js 进程有权读取该目录,并且您知道该目录受到保护,不会被外部访问,对吧?
-
@jfriend00 复制它们?
-
它们是您操作系统中的文件。您可以将这些文件移动到适当的目录。如果您将它们用于您的 https 服务器,那么您可能不会将它们用于其他用途。或者将它们放在更好的共享位置,以便所有需要访问的东西都可以访问。
-
我将它们用于 phpMyAdmin