免费通配符SSL证书申请+Nginx自动部署+到期监控完整教程
SSL证书对网站安全至关重要,但传统的手动管理方式繁琐且容易出错。本文介绍一套完整的自动化SSL证书管理方案,覆盖从申请到部署到监控的全流程。
适用场景:
- 个人网站/博客
- 中小企业官网
- 有多个子域名的项目
- 需要自动化运维的团队
一、什么是通配符SSL证书
通配符证书(Wildcard SSL)使用*匹配所有子域名:
*.example.com覆盖所有一级子域名- 一张证书替代多张单域名证书
- 申请一次,多个子域名共用
优势:成本低(免费)、管理简单、覆盖全面
二、工具准备
申请、部署、监控这几步分开做也行(acme.sh + 自写脚本 + 监控告警),但维护成本不低。本文统一用一个证书管理控制台来完成(微信扫码即可使用,地址见文末),重点放在流程本身,各步骤同样适用于你自己的工具组合。
三、申请免费通配符证书
步骤1:登录平台
打开证书管理控制台,微信扫码登录。
步骤2:新建证书申请
点击「申请证书」,填写:
- 主域名:
example.com - 勾选「通配符」,自动生成
*.example.com - 验证方式:DNS验证
步骤3:DNS验证
系统提示添加TXT记录:
主机记录: _acme-challenge 记录类型: TXT 记录值: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx在域名服务商控制台添加后,点击「验证」。
步骤4:证书签发
验证通过后,证书自动签发。下载:
fullchain.crt(完整证书链)privkey.key(私钥)
四、Nginx部署配置
上传证书到服务器
mkdir-p/etc/ssl/certs/example.com# 使用scp或其他方式上传证书文件scpfullchain.crt privkey.key user@server:/etc/ssl/certs/example.com/Nginx配置文件
# HTTP强制跳转HTTPS server { listen 80; server_name example.com *.example.com; return 301 https://$host$request_uri; } # HTTPS配置 server { listen 443 ssl http2; server_name *.example.com; ssl_certificate /etc/ssl/certs/example.com/fullchain.crt; ssl_certificate_key /etc/ssl/certs/example.com/privkey.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5; ssl_session_cache shared:SSL:10m; ssl_session_timeout 10m; # 你的业务配置 root /var/www/html; index index.html; }验证并重载
# 测试配置nginx-t# 重载Nginxnginx-sreload五、自动化部署到CDN/OSS
配置阿里云CDN自动部署
- 在阿里云RAM控制台创建子账号
- 授权
AliyunCDNFullAccess - 生成AccessKey ID和Secret
- 在证书助手「自动部署」中添加:
- 类型:阿里云CDN
- AccessKey:填写上述信息
- 加速域名:选择对应域名
配置完成后,每次证书续签自动推送到CDN。
配置OSS自动部署
类似CDN配置,授权AliyunOSSFullAccess,在自动部署中选择OSS类型和对应Bucket。
六、证书到期监控预警
在「监控预警」中配置:
| 预警时间 | 通知方式 |
|---|---|
| 到期前30天 | 微信通知 |
| 到期前15天 | 微信通知 |
| 到期前7天 | 微信通知(紧急) |
七、常见问题
Q:DNS验证一直不通过怎么办?
A:DNS记录生效需要时间(1-10分钟),等待后重试。确认TXT记录添加在_acme-challenge.yourdomain.com。
Q:证书续签后Nginx没有更新?
A:在自动部署中添加「执行SSH命令」步骤,命令:nginx -s reload。
Q:CDN报证书错误,但服务器正常?
A:CDN需要单独推送证书,配置自动部署到CDN即可解决。
总结
通过以上配置,实现了:
- ✅ 免费通配符SSL证书
- ✅ Nginx自动化部署
- ✅ CDN/OSS自动同步
- ✅ 到期自动续签
- ✅ 监控预警兜底
本文用到的是 Spug 证书助手,官网 ssl.spug.cc,需要的可以自取。
