我在运行于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/

10-10 03:47