使用Certbot+Cloudflare生成免费SSL证书
环境:Centos 7
1)安装 certbot
yum install -y certbot certbot-dns-cloudflare
如果 yum 或 dnf 找不到 certbot-dns-cloudflare,可以安装 dnf install -y python3-certbot-dns-cloudflare
2)将 Cloudflare API 令牌写入到本地文件,替换 xxx 部分,注意令牌一定要有 DNS 的写权限,其余有读权限即可
echo 'dns_cloudflare_api_token =xxxxxxxxxxxxx' > /home/work/cloudflare.ini
sudo chmod 0400 /home/work/cloudflare.ini
3)生成SSL证书,注意替换 example.com, 注意 *.example.com 不包括 example.com
certbot certonly --dns-cloudflare --dns-cloudflare-credentials /home/work/cloudflare.ini -d example.com -d www.example.com --dns-cloudflare-propagation-seconds=60
4)查看证书
cd /etc/letsencrypt/live/
进入与域名同名的文件夹,找到 fullchain.pem 和 privkey.pem 两个文件,分别配置到 nginx 的 ssl_certificate 和 ssl_certificate_key 属性即可
5)自动续期
sudo /usr/bin/certbot renew --dry-run
写入到定时任务
echo '0 0 */5 * * root /usr/bin/certbot renew --deploy-hook "sudo systemctl restart nginx"' >> /etc/crontab
进入目录可以查看自动续期的配置
cd /etc/letsencrypt/renewal
版权声明:凡未经本网站书面授权,任何媒体、网站及个人不得转载、复制、重制、改动、展示或使用本网站的局部或全部的内容或服务,或在非本网站所属服务器上建立镜像。如果已转载,请自行删除。同时,我们保留进一步追究相关行为主体的法律责任的权利。我们希望与各媒体合作,签订著作权有偿使用许可合同,故转载方须书面/邮件申请,以待商榷。