Certbot实现SSL免费证书自动续签(CentOS 7 + nginx/apache)

在 CentOS 上,你可以使用 Let's Encrypt 提供的 Certbot 工具来申请和自动续约免费的 SSL 证书。


1. 安装 Certbot

CentOS 7+ 安装 EPEL 和 Certbot

bash 复制代码
yum install -y epel-release
yum install -y certbot python3-certbot-nginx

如果使用的是 Apache

bash 复制代码
yum install -y certbot python3-certbot-apache

CentOS 8+ (使用 DNF)

bash 复制代码
dnf install -y epel-release
dnf install -y certbot python3-certbot-nginx

2. 申请 SSL 证书

根据你的 Web 服务器,运行以下命令:

Nginx

bash 复制代码
certbot --nginx -d yourdomain.com -d www.yourdomain.com

Apache

bash 复制代码
certbot --apache -d yourdomain.com -d www.yourdomain.com

首次运行时,它会:

  1. 验证域名所有权
  2. 自动配置 HTTPS 证书
  3. 证书默认有效期 90 天

PS:如果nginx不是默认的安装路径,可以手动指定并自行修改nginx的配置文件,参考Certbot实现SSL免费证书自动续签(CentOS 7版 + Docker部署的nginx) 中的方案2 webroot模式


3. 配置自动续约

Let's Encrypt 证书 90 天后会过期,因此需要定期续约。

检查 Certbot 是否正常续约

bash 复制代码
certbot renew --dry-run

如果看到 "Congratulations, all renewals succeeded",说明续约正常。

设置定时任务(自动续约)

编辑 crontab

bash 复制代码
crontab -e

添加以下行,每天凌晨 2 点自动检查并续约

Let's Encrypt 续约后,需要重启 Web 服务器使证书生效。可以在 crontab 里加上:

Nginx

bash 复制代码
0 2 * * * certbot renew --quiet --deplpy-hook "systemctl reload nginx"
或者
0 2 * * * certbot renew --quiet --deplpy-hook "nginx -s reload"

Apache

bash 复制代码
0 2 * * * certbot renew --quiet --deploy-hook "systemctl reload httpd"

5. 验证证书是否生效

bash 复制代码
certbot certificates
或者
openssl s_client -connect yourdomain.com:443 -servername yourdomain.com | openssl x509 -noout -dates

如果 Not After 日期更新,说明续约成功。✅

这样,你的 SSL 证书就会 自动续约,无需手动操作! 🚀

相关推荐
全栈工程师修炼指南1 天前
Nginx | stream 四层反向代理:SSL、PREREAD 阶段模块指令浅析与实践
运维·网络·网络协议·nginx·ssl
威迪斯特1 天前
CentOS图形化操作界面:理论解析与实践指南
linux·运维·centos·组件·图形化·桌面·xserver
承渊政道1 天前
Linux系统学习【Linux基础开发工具】
linux·运维·笔记·学习·centos·编辑器
脏脏a1 天前
告别物理出勤:Nginx 搭配 cpolar 实现远程开发无缝协作
运维·nginx
Dxy12393102161 天前
413 Request Entity Too Large 原因与解决方案
nginx
❀͜͡傀儡师1 天前
centos 7部署dns服务器
linux·服务器·centos·dns
CYpdpjRnUE1 天前
光储一体机仿真模型搭建之旅
nginx
Volunteer Technology2 天前
FastDFS+Nginx
运维·nginx
yixvxi2 天前
RFC 8659:DNS CAA资源记录
服务器·https·ssl
予枫的编程笔记2 天前
【Linux入门篇】Linux入门不踩坑:内核、发行版解析+环境搭建全流程
linux·ubuntu·centos·vmware·xshell·linux入门·linux环境搭建