我的客户的网站运行由PLESK生成的ssl。
我曾经用SSL运行node.js,这要归功于:
var ssl = {
key: fs.readFileSync('/etc/letsencrypt/live/mysite.com/privkey.pem'),
cert: fs.readFileSync('/etc/letsencrypt/live/mysite/cert.pem')
};
但我不知道PLESK在哪里创建了这两个文件。
我尝试过:
> /etc/ssl/certs/ssl-cert-snakeoil.pem
> /etc/ssl/private/ssl-cert-snakeoil.key
没有成功。
如何使用Plesk生成的SSL运行nodejs?
答案 0 :(得分:2)
PLS。请注意,通过Plesk Let的加密扩展创建的Let's加密证书将其原始证书文件放在:
/usr/local/psa/var/modules/letsencrypt/etc/live/(sub)YOUR-DOMAIN.COM
另外,请。请注意,您应该使用“fullchain.pem”而不是“cert.pem”,因为“cert.pem”错过了所需的根证书。 ; - )
答案 1 :(得分:0)
例如,您使用Let的加密证书名称example.tld
拥有域Lets Encrypt example.tld
。您可以从Plesk UI下载带有私钥的证书文件:
或者您可以按照以下要求尝试查找此证书文件:
# mysql -uadmin -p`cat /etc/psa/.psa.shadow` -Dpsa -e "select id, cert_file, ca_file, name from certificates where name like '%example%'"
+----+-------------+-------------+----------------------------------------------+
| id | cert_file | ca_file | name |
+----+-------------+-------------+----------------------------------------------+
| 3 | cert-1lPfuj | cert-6oXdCf | Lets Encrypt example.tld |
+----+-------------+-------------+----------------------------------------------+
并且@El_Matella在cert-1lPfuj
处说检查文件cert-6oXdCf
和/usr/local/psa/var/certificates
:
# ls -la /usr/local/psa/var/certificates/cert-*
-r--------. 1 root root 5050 Jan 1 02:33 /usr/local/psa/var/certificates/cert-1lPfuj
-r--------. 1 root root 1635 Jan 1 02:33 /usr/local/psa/var/certificates/cert-6oXdCf
答案 2 :(得分:0)
我建议对Plesk(Onyx版本)使用NodeJS扩展,并使用LetsEncrypt扩展来处理证书的验证,路由和自动续订。这样一来,您就可以使用Plesk Web界面中的所有内容,甚至不必使用控制台。
process.env.PORT
有关更多详细信息,请查看Plesk的教程: https://www.plesk.com/blog/product-technology/node-js-plesk-onyx/。