小编kra*_*erk的帖子

让我们以“错误:EACCES:权限被拒绝,打开'/etc/letsencrypt/live/domain.net/privkey.pem'”开头的SSL进行加密

我尝试通过Node.js使用SSL,但由于,它无法正常工作permission denied

try {
var TLSoptions = {
    key: fs.readFileSync("/etc/letsencrypt/live/domain.work/privkey.pem"),
    cert: fs.readFileSync("/etc/letsencrypt/live/domain.work/cert.pem")
};

https.createServer(TLSoptions, app).listen(port, host, function() {
   console.log("TLS Website started.")
}); catch(e) {
    console.log(e)
}
Run Code Online (Sandbox Code Playgroud)

=>

{ Error: EACCES: permission denied, open '/etc/letsencrypt/live/domain.work/privkey.pem'
at Object.fs.openSync (fs.js:663:18)
... (Librarys dump)
errno: -13,
code: 'EACCES',
syscall: 'open',
path: '/etc/letsencrypt/live/domain.work/privkey.pem' }
Run Code Online (Sandbox Code Playgroud)

因此,我尝试重新制作* .pem文件。

rm -f /etc/letsencrypt/live
rm -f /etc/letsencrypt/archive    
rm -f /etc/letsencrypt/renewal
sudo ./letsencrypt-auto certonly -a standalone -d domain.work
Run Code Online (Sandbox Code Playgroud)

并检查文件权限。

/etc/letsencrypt/live/domain.work$ ls -lsa
total 12
4 drwxr-xr-x 2 root root …
Run Code Online (Sandbox Code Playgroud)

ssl node.js lets-encrypt

4
推荐指数
2
解决办法
3708
查看次数

标签 统计

lets-encrypt ×1

node.js ×1

ssl ×1