一、介绍
Cloudflare
目前Free
计划提供四种证书,DigiCert
根证书(即CF
的默认签发的证书,兼容性更广,证书链也更短,只有一级中间证书,证书为期一年更换)、Let’s Encrypt
根证书(证书为其三个月更换,有被墙的黑历史,慎用)、Google Trust Services
根证书(证书为其三个月更换,博主测试后发现eu.org
配置后墙内无法使用,其他后缀无此问题,可选用),Sectigo
根证书(这个仅作为备份,不能主动启用),在控制台使用应该是随机分配的,没办法指定。
二、切换方法
博主在看Cloudflare API
文档的时候,发现了一个参数certificate_authority
,实验了一下,可以成功切换证书。
LINUXSSH
命令使用PATCH
方法对Cloudflare
的API
进行请求。
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"}'
PS:域名区域 ID
在域名👉概述(右下)👉API👉区域 ID
或 APIKEY👉我的个人资料👉API 令牌👉API 密钥👉Global API Key
处查看。
博主设置curl
访问是切换到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
,先禁用,再启用,就会更新到新证书;
Comments NOTHING