简介:本文将介绍如何使用 acme.sh 脚本从 Letsencrypt 获取免费的泛域名证书,实现全站 HTTPS 升级。我们将分步骤进行操作,并提供常见问题的解决方案,帮助您顺利完成证书的生成和部署。
在全站HTTPS升级系列(一)中,我们介绍了HTTPS的基本概念和优势,以及选择合适的证书提供商的重要性。本篇将详细介绍如何使用acme.sh脚本从Letsencrypt获取免费的泛域名证书,以实现全站HTTPS升级。
一、准备工作
git clone https://github.com/Neilpang/acme.sh.gitcd acme.sh./acme.sh --install
将生成的公钥上传至 Letsencrypt 平台,以完成身份验证过程。
ssh-keygen -t rsa -b 4096
其中,
./acme.sh --issue -d example.com -d *.example.com -k rsa2048
example.com 是您的主域名,*.example.com 表示您的所有子域名。-k rsa2048 表示使用 RSA2048 位密钥对。example.com.key(私钥)和 example.com.cer(证书)文件。将证书文件部署到您的 web 服务器的相应位置。/etc/nginx/ssl/example.com.cer 和 /etc/nginx/ssl/example.com.key 路径下。/etc/nginx/nginx.conf 文件,找到 http 部分,添加以下内容:
server {listen 443 ssl;server_name example.com;ssl_certificate /etc/nginx/ssl/example.com.cer;ssl_certificate_key /etc/nginx/ssl/example.com.key;...}
service nginx reload