在 Amazon Linux 2 上安装 certbot/letsencrypt 并在 nginx 上启用 HTTPS(类似的过程适用于 apache)
sudo yum update
sudo yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum-config-manager --enable epel
sudo yum install certbot python3-certbot-nginx
certbot --version
使用以下命令生成证书并自动让certbot修改nginx配置以启用https:
sudo certbot --nginx
或者如果您只需要认证,请使用以下命令:
sudo certbot certonly --nginx
认证将在文件夹中创建
/etc/letsencrypt/live/YOUR_SITE_NAME/
例如:
认证
/etc/letsencrypt/live/www.my-site.com/cert.pem
私钥
/etc/letsencrypt/live/www.my-site.com/privkey.pem
使用以下命令启用认证自动续订:
sudo certbot renew --dry-run
如果在创建认证过程中出现如下错误:
“无法选择合适的插件:请求的 nginx 插件确实 似乎没有安装”
然后运行命令
sudo yum install certbot python-certbot-nginx
然后重试创建认证。
对于 apache,您可以使用
python2-certbot-apache
代替 python2-certbot-nginx
,
确保在创建认证期间使用选项 --apache
而不是 --nginx
。
DNS 必须配置为指向您的机器,否则 certbot 的检查将失败。
2023 年 7 月,Amazon Linux 2 不支持 epel 存储库。但是,如果您能够 ssh 进入机器,您可以使用 python 包。
像这样:
sudo pip3 install certbot certbot-nginx
# then execute
sudo /usr/local/bin/certbot --nginx -d ilovetoast.com www.ilovetoast.com
参考资料:
您可以按照这篇内容丰富的中型文章中概述的步骤,使用 Let's Encrypt SSL 证书保护 AWS EC2 实例:如何使用 Let's Encrypt SSL 证书保护 AWS EC2 实例。
总而言之,本文提供了有关在 AWS EC2 实例上使用 Let's Encrypt 设置 SSL 证书的详细指南,以确保 Web 应用程序的安全。
请参阅文章以获取有关此主题的分步说明和其他见解。