Rocky Linux Nginx 自动更新免费 SSL, 全流程实战
- 2025-06-24 13:33:12
- 447
Let’s Encrypt 是由非营利性组织 Internet Security Research Group (ISRG) 推动的免费、自动化、开源的证书颁发机构(CA)。
它采用 ACME 协议,让用户能够轻松获取和自动续期 TLS/SSL 证书,从而为网站提供 HTTPS 加密连接。
自 2016 年推出以来,Let’s Encrypt 已颁发数亿份证书,大幅降低了 HTTPS 部署门槛。
环境准备
确认系统版本
Rocky Linux 8/9,内核 4.18+ 或 5.14+,原生支持现代加密模块。
安装 EPEL 源
sudo dnf install -y epel-release
启用 EPEL 并更新
sudo dnf update -y
☁️ 安装 Certbot 与 Nginx 插件
sudo dnf install -y certbot python3-certbot-nginx
certbot:Let’s Encrypt 官方客户端
python3-certbot-nginx:自动修改 Nginx 配置的插件
首次签发免费 SSL
执行一键签发命令
命令说明
-d:指定域名,可多次使用
--email:接收证书更新提醒
--agree-tos:同意服务条款
--redirect:自动启用 HTTP→HTTPS 强制跳转
成功示例
浏览器访问 https://yourdomain.com 显示绿色小锁
Nginx 配置文件自动添加 ssl_certificate 与 ssl_certificate_key
自动续期配置
验证定时任务
sudo systemctl list-timers | grep certbot
默认每 12 小时执行一次续期检测
手动测试续期
sudo certbot renew --dry-run
输出 Congratulations, all renewals succeeded. 则配置生效
排查与优化
端口未开放
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
域名未解析
确保 DNS A/AAAA 记录指向当前服务器公网 IP
SELinux 拒绝
sudo setenforce 0 # 测试期间
sudo setenforce 1 # 完成后恢复
验证与监控
检查到期时间
sudo certbot certificates
日志位置
/var/log/letsencrypt/letsencrypt.log
常见问题
Permission denied → 使用 sudo
Connection refused → 确认 Nginx 正常运行
- 上一篇:明日来京东电竞惊喜日买装备更划算
- 下一篇:陈赫炫耀衣服