我在运行于Ubuntu Server 16.04 LTS(HVM),SSD卷类型-ami-6a003c0f的EC2实例上有一个节点应用程序,我想从Let's Encrypt with Certbot获得ssl证书。
我不确定在我的情况下设置Certbot时从列表中选择什么是合适的软件和系统? https://certbot.eff.org/
请帮我。
最佳答案
对于node.js,您需要以手动模式运行letencrypt,然后将证书添加到您的代码中。
以下命令将下载letsencrypt并生成您的证书。用您的域名和电子邮件地址进行修改。
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt
./letsencrypt-auto certonly --manual --email [email protected] -d example.com
Letsencrypt将创建一个包含四个文件的目录。在以下示例中,未使用文件fullchain.pem。阅读文档以获取有关每个文件的详细信息。
位置:/etc/letsencrypt/live/example.com
注意:读取letencrypt的输出以获取实际文件位置
示例node.js:
var https = require('https');
var fs = require('fs');
var options = {
key: fs.readFileSync('/etc/letsencrypt/live/example.com/privkey.pem'),
cert: fs.readFileSync('/etc/letsencrypt/live/example.com/cert.pem'),
ca: fs.readFileSync('/etc/letsencrypt/live/example.com/chain.pem')
};
https.createServer(options, function (req, res) {
res.writeHead(200);
res.end("hello world\n");
}).listen(8443);
使用网络浏览器进行测试以https://example.com:8443/
关于node.js - 设置certbot进行加密时要选择哪种软件和系统?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50853062/