环境 centos
`
yum update ca-certificates
yum install git -y
最好用官方的acme.sh
git clone https://github.com/acmesh-official/acme.sh.git
cd acme.sh
./acme.sh --install -m ******@126.com
acme.sh --set-default-ca --server letsencrypt
我blog用的是腾讯云的 所以到后台找到
export Tencent_SecretId="*******"
export Tencent_SecretKey="*******"
通过下面方式验证和申请ssl证书
./acme.sh --issue --dns dns_tencent -d scychina.club -d *.scychina.club
//提前再nginx 下创建应该存放证书文件夹 将ssl证书安装到文件夹 安装之后他会每隔一段时间自动更新证书。如下:
acme.sh --installcert -d m-na.com --key-file /usr/local/nginx/***/scychina.club.key --fullchain-file /usr/local/nginx/***/scychina.club.crt --reloadcmd "systemctl reload nginx" --ecc
将代码里面***换成自己的
下面就可以了 设置好之后 再nginx 的config文件里面设置下
ssl_certificate /usr/local/nginx/***/scychina.club.crt;
ssl_certificate_key /usr/local/nginx/***/scychina.club.key ;
Let's Encrypt 的证书有效期是 90 天的,需要定期重新申请,不过acme在安装的时候就已经设置了自动更新,所以这一步不用关心,很省心。
这里了解一下acme.sh的自动更新:安装acme时会自动为你创建 cronjob, 每天 0:00 点自动检测所有的证书, 如果快过期了, 需要更新, 则会自动更新证书.
查看任务
# crontab -l
47 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
手动renew一下证书可以通过这个命令
acme.sh --cron -f
目前由于 acme 协议和 letsencrypt CA 都在频繁的更新, 因此 acme.sh 也经常更新以保持同步.所以为了省心省力,最好还是设置一下软件的自动更新,执行下面的命令就可以了。
acme.sh --upgrade --auto-upgrade
`
评论区