手动申请SSL证书
手动申请SSL证书
clover手动申请SSL证书
记录一次用 Certbot + Cloudflare DNS API 申请通配符证书的完整流程。
前置条件
- 域名托管在 Cloudflare
- 服务器有 root 权限
- Cloudflare API Token(需 DNS - Edit 权限)
安装 Certbot 及插件
1 | sudo apt update |
配置 Cloudflare API 凭证
1 | sudo mkdir -p /etc/letsencrypt/credentials |
写入 Token 后加固权限:
1 | sudo chmod 600 /etc/letsencrypt/credentials/cloudflare.ini |
申请证书
1 | sudo certbot certonly \ |
按提示输入邮箱、同意条款,等待约 10 秒自动完成 DNS 验证。
成功后证书保存在 /etc/letsencrypt/live/clovee.qzz.io/,包含 fullchain.pem 和 privkey.pem。下载到了自己电脑本地一份,位置在文档\Oracle Cloud\SSL 证书
配置 Nginx
1 | server { |
1 | sudo nginx -t |
通过 1Panel 配置证书
如果使用 1Panel 管理网站,可以在面板中直接导入证书。
上传证书:网站 → 证书 → 上传证书,填入私钥(privkey.pem)和证书 PEM(fullchain.pem)。
绑定网站:进入目标网站的 HTTPS 设置,选择刚上传的证书,开启强制 HTTPS。1Panel 会自动更新 Nginx 配置并重载服务。
注意别把 KEY 和 PEM 贴反了。
自动续签
Certbot 会自动创建续期定时任务,证书 90 天有效期。可通过以下命令手动验证:
1 | sudo certbot renew --dry-run |
注意事项
- 通配符
*.clovee.qzz.io只匹配一级子域名,多级子域名需额外处理 - API Token 必须包含
Zone - DNS - Edit权限,否则会报 NXDOMAIN - 导出证书到其他面板使用时,无法在该面板自动续签,需在源服务器续签后重新导出