Cloudflare 利用API自选Let’s Encrypt/Google/Digicert,自由切换SSL证书颁发者
介绍
Cloudflare 目前 Free 计划提供四种证书, DigiCert
根证书(即 CF 的默认签发的证书,兼容性更广,证书链也更短,只有一级中间证书,证书为期一年更换)、 Let’s Encrypt
根证书(证书为其三个月更换,有被墙的黑历史,慎用)、 Google Trust Services
根证书(证书为其三个月更换,博主测试后发现 eu.org 配置后墙内无法使用,其他后缀无此问题,可选用), Sectigo
根证书(这个仅作为备份,不能主动启用),在控制台使用应该是随机分配的,没办法指定。
切换方法
博主在看 Cloudflare API 文档的时候,发现了一个参数 certificate_authority
,实验了一下,可以成功切换证书。
LINUX SSH 命令使用 PATCH
方法对 cloudflare 的 api 进行请求
1 | curl -X PATCH "https://api.cloudflare.com/client/v4/zones/你的域名区域 ID/ssl/universal/settings" \ |
域名区域 ID – 域名 – 概述(右下) – API – 区域 ID;
APIKEY – 我的个人资料 – API 令牌 – API 密钥 – Global API Key – 查看
博主设置 curl 访问是切换到 digicert
。
如果想换到 Let's Encrypt
则修改其中的 digicert
为 lets_encrypt
如果想换到 Google Trust Services
则修改其中的 digicert
为 google
1 | {"result":{"enabled":true,"certificate_authority":"digicert"},"success":true,"errors":[],"messages":[]} |
响应出上面信息代表已经修改成功,可以去控制台也可以看到新的证书了;
把上面的”enabled”改为 false
提交一次,再改为 true
反复提交一次,刷新重新颁发证书;
或者在控制台 SSL/TLS – 边缘证书 – 禁用通用 SSL,先禁用,再启用,就会更新到新证书;
结语
博主自己使用 Cloudflare 自带的 DigiCert
根证书,因为其证书兼容性更广,证书链也更短,只有一级中间证书,访问速度相对较快。
🔰本文标题: Cloudflare 利用API自选Let’s Encrypt/Google/Digicert,自由切换SSL证书颁发者
🔞本文链接: https://1han.wiki/cf-ssl/index.html
🌡️本文总热度℃