Nginx SSL 证书自动续期工具
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f21d3e36/nginx-ssl-cert-toolkit。
技能介绍
解决 SSL 证书运维中的重复劳动
- 手动配置 Nginx HTTPS、申请 Let's Encrypt 通配符证书时,需要在 Nginx 配置、
acme.sh脚本和 DNS API 之间来回切换。证书只有 90 天有效期,忘记续期会导致服务中断。 - 技能将环境信息收集、Nginx 配置生成、DNS 验证申请、证书安装与自动续期脚本整合为一条流水线,减少人工干预点。
核心流程
- 配置生成:根据主域名、证书类型、是否需要 HTTP 跳转和 OCSP Stapling 等输入,生成可直接部署的 Nginx HTTPS 配置。
- 证书申请:通过
acme.sh配合 DNS API(Cloudflare、阿里云、腾讯云 DNSPod)完成通配符证书的 DNS 验证申请,也支持单域名 HTTP 验证。 - 自动续期:利用
acme.sh默认的续期机制,并生成结合systemctl reload nginx的完整脚本与过期告警。 - 故障排查:覆盖 DNS 验证未生效、混合内容、域名不匹配、Nginx SSL 配置错误和证书过期等常见场景。
注意点
- 通配符证书仅覆盖一级子域名,例如
*.example.com包含api.example.com,但不包含sub.api.example.com。 - Let's Encrypt 证书有效期为 90 天,
acme.sh默认在到期前 30 天自动续期。 - Nginx SSL 配置默认禁用 TLSv1.0 和 TLSv1.1。
- HSTS 开启后浏览器会强制 HTTPS,建议确认全站可用后再启用。
- 使用 Cloudflare 等 CDN 时,需要在 CDN 侧单独配置证书。
使用场景
- 网站管理员需要给主域名 example.com 配置 HTTPS,生成包含强制跳转 443 的 Nginx 配置并验证生效。
- 运维工程师要为 *.example.com 申请通配符证书,需通过 DNS API 完成验证并安装到 Nginx 目录。
- 服务器维护者希望配置 acme.sh 自动续期脚本,并在证书到期前收到告警通知,避免证书过期导致服务中断。
- 技术人员在配置通配符证书时遇到 DNS 验证未生效导致申请失败,需要按排查指南定位 DNS API 配置问题。
适合人员
- 负责网站 HTTPS 化的后端工程师,需要快速生成 Nginx SSL 配置并为生产环境配置证书自动续期。
- 管理多域名服务器的系统运维工程师,需要为多个子域名申请通配符证书并配置 DNS API 自动续期。
- 维护自有服务器的网站管理员,需要替换即将过期的 SSL 证书并确保自动续期机制正常运行。