AWS Elastic Beanstalk - NodeJS:在没有 Beanstalk 负载均衡器的情况下从 Letsencrypt 获取证书 SSL

Sam*_*Sam 5 ssl nginx node.js amazon-elastic-beanstalk lets-encrypt

对于 Elastic BeanStalk 中的 Nodejs 应用程序,没有 Beanstalk 负载均衡器,我想设置 Letscrypt 证书并保留 AWS 提供的经典域:xxx.xxxx.elasticbeanstalk.com

经过多次搜索,我发现了两种可能的解决方案:

1 - 使用 .ebextensions 文件 => 安装 Certbot,获取 Letsencrypt 证书并配置 Nginx。

关于这一点的好文章=> https://bluefetch.com/blog/domain-agnostic-letsencrypt-ssl-config-for-elastic-beanstalk-single-instances/

2 - 通过 ssh 连接,安装 Certbot,生成证书并将其上传到 IAM AWS。

AWS 文档:https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/configuring-https-ssl-upload.html

对于这两种解决方案,我在 Certbot 进行域验证期间都会收到相同的错误消息。

我认为 certbot 生成的用于验证的目录无法访问。

错误 :

To fix these errors, please make sure that your domain name was
entered correctly and the DNS A/AAAA record(s) for that domain
contain(s) the right IP address.
Run Code Online (Sandbox Code Playgroud)

所以,我的问题是:设置 SSL 证书以获得 Node Js Elastic BeanStalk 应用程序(无需 Beanstalk 负载均衡器)的绿锁的最佳方法是什么?

感谢您的帮助。

Sam*_*Sam 3

我终于找到了解决方案:

我从这个脚本中获得灵感并使用 WEBROOT 模式创建了一个。

我创建了一个 git 来分享这个解决方案:

https://github.com/SammyHam/LetsEncrypt-SSL-config-for-Elastic-Beanstalk