Cloudflare使用api自由切换SSL证书颁发机构
介绍
Cloudflare目前Free计划提供四种证书DigiCert
CF默认签发的证书,兼容性更广,证书链也更短,只有一级中间证书,证书为期一年Let’s Encrypt
证书为其三个月更换,有被墙的黑历史,慎用Google Trust Services
其三个月更换Sectigo
这个仅作为备份,不能主动启用,在控制台使用应该是随机分配的,没办法指定。
切换方法
curl -X PATCH "https://api.cloudflare.com/client/v4/zones/你的域名区域ID/ssl/universal/settings" \
-H "X-Auth-Email: 你的CF邮箱" \
-H "X-Auth-Key: 你的APIKEY" \
-H "Content-Type: application/json" \
--data '{"enabled":true,"certificate_authority":"digicert"}'
域名区域ID 域名 – 概述(右下) – API – 区域ID;
APIKEY 我的个人资料 – API 令牌 – API 密钥 – Global API Key – 查看
上面是切换到digicert
如果想换到Let's Encrypt
则修改其中的digicert
为lets_encrypt
如果想换到Google Trust Services
则修改其中的digicert
为google
响应出下面信息代表已经修改成功,控制台可以看到新的证书了;
{"result":{"enabled":true,"certificate_authority":"digicert"},"success":true,"errors":[],"messages":[]}
把上面的enabled
改为false
提交一次,再改为true
反复提交一次,刷新重新颁发证书;
或者在控制台 SSL/TLS – 边缘证书 – 禁用通用 SSL,先禁用,再启用,就会更新到新证书;