目 录CONTENT

文章目录

​​阿里云OS3系统动态SSL证书管理指南:Certbot + Nginx实战​

路口、下车
2025-07-18 / 0 评论 / 0 点赞 / 29 阅读 / 0 字
温馨提示:
本文最后更新于2025-07-18,若内容或图片失效,请留言反馈。 部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

阿里云OS3(Alibaba Cloud Linux 3)作为专为云环境优化的操作系统,在性能和安全层面具备显著优势。本文手把手教你通过Certbot工具动态申请Let’s Encrypt证书,并实现Nginx自动配置与续期。PS:其他Linux系统如:centos7.9配置步骤也差不多。

一、环境准备

1、系统更新与依赖安装

sudo yum update -y
sudo yum install epel-release -y
sudo yum install certbot python3-certbot-nginx -y  # 核心工具链

2、域名解析验证确保域名已解析至当前云服务器公网IP(通过阿里云DNS控制台确认),域名需要备案通过。

3、安全组 策略放开443端口入口流量。进入阿里云控制台,选择ECS实例,在左边菜单选择“安全组”,进入安全组列表,“入方向->新增规则”,新增tcp 443端口。

安全组列表.png

阿里云安全组配置.png

二、一键申请SSL证书(Nginx插件模式)​​

适用场景:单域名或多域名证书(非泛域名)

sudo certbot --nginx -d example.com -d www.example.com

命令结构与功能解析

sudo : 以管理员权限运行 Certbot(需 root 权限操作 Nginx 配置和证书文件),避免因权限不足导致证书安装失败
certbot : 调用 Let’s Encrypt 官方客户端工具,自动化 SSL 证书的申请、验证和部署流程
--nginx : 启用 Nginx 插件模式,自动修改 Nginx 配置文件,无需手动编辑
-d example.com : 指定主域名(可重复使用),多个 -d参数可为同一证书绑定多个域名(SAN 证书)
-d www.example.com : 绑定子域名(如 www),确保主域和子域均支持 HTTPS 访问

这里值得注意的是,需要 在nginx的80端口 server_name 配置你对应的域名,然后certbot自动修改成443和证书等配置

流程说明

  1. 输入邮箱(接收到期提醒)
  2. 同意Let’s Encrypt服务条款
  3. 选择是否将所有HTTP流量重定向至HTTPS(推荐选2)
  4. 自动完成验证:Certbot通过临时HTTP服务验证域名所有权
  5. 证书生成路径:/etc/letsencrypt/live/example.com/(含fullchain.pem和privkey.key)

三、检查证书是否自动续期

执行下面命令

sudo certbot renew --dry-run

如果看到类似下面的输出,说明一切正常:
** DRY RUN: simulating 'certbot renew' close to cert expiry
** (The test certificates below have not been saved).
Congratulations, all renewals succeeded.

如图:
检查续期配置是否正常.png

如果不是这个结果,可以自动配置定时续期任务

Let's Encrypt 证书有效期为 90 天,必须设置自动续期。
添加定时任务(crontab):
sudo crontab -e
添加如下行(每天凌晨 2 点执行):
0 2 * * * /snap/bin/certbot renew --quiet && systemctl reload nginx

到此,配置Let's Encrypt 证书+自动续期结束,如有疑问欢迎留言讨论~~~

0

评论区