一、背景说明

原 DigiCert 一年期证书已停用,Cloudflare 现提供三种证书类型:

证书类型有效期兼容性适用场景
SSL.com3个月99.9% 浏览器/移动设备需广泛兼容性的业务
Google3个月主流浏览器支持谷歌生态服务优先
Let's Encrypt3个月现代设备支持开发测试环境

📌 SSL.com 证书特性

  • 与 Certum 交叉签名
  • 中间证书颁发机构根植于 2004 年
  • 官方兼容性说明:Cloudflare CA 文档

二、操作步骤

1. 获取必要参数

🔑 Cloudflare Global API Key

  1. 访问 API Tokens 页面
  2. 点击 View 获取 Global API Key

🆔 域名区域 ID

  1. 登录 Cloudflare 控制台
  2. 在域名概览页右下角复制 Zone ID

📧 账号邮箱


2. API 切换命令

切换到 SSL.com 证书

curl -sX PATCH "https://api.cloudflare.com/client/v4/zones/YOUR_ZONE_ID/ssl/universal/settings" \
-H "X-Auth-Email: YOUR_EMAIL" \
-H "X-Auth-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
--data '{"certificate_authority":"ssl_com"}'

切换到 Google 证书

curl -sX PATCH "https://api.cloudflare.com/client/v4/zones/YOUR_ZONE_ID/ssl/universal/settings" \
-H "X-Auth-Email: YOUR_EMAIL" \
-H "X-Auth-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
--data '{"certificate_authority":"google"}'

切换到 Let's Encrypt 证书

curl -sX PATCH "https://api.cloudflare.com/client/v4/zones/YOUR_ZONE_ID/ssl/universal/settings" \
-H "X-Auth-Email: YOUR_EMAIL" \
-H "X-Auth-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
--data '{"certificate_authority":"lets_encrypt"}'

3. 验证结果

✅ 成功响应示例

{
  "result": {
    "enabled": true,
    "certificate_authority": "ssl_com"
  },
  "success": true,
  "errors": [],
  "messages": []
}

🔍 验证方式

  1. 控制台验证

    • 进入 SSL/TLS → Edge Certificates
    • 查看证书颁发机构变化
  2. 命令行验证

    curl -Iv https://yourdomain.com 2>&1 | grep "issuer"
    # 预期输出:issuer: C=US; O=SSL.com; CN=SSL.com TLS ECC...

三、注意事项

  1. 缓存延迟:证书更新可能需要 5-10 分钟生效
  2. API 安全

    • 切勿泄露 Global API Key
    • 建议创建受限 API Token(路径:SSL and Certificates → Edit)
  3. 兼容性测试:使用 SSL Labs 测试工具 验证证书链

四、故障排查

常见错误解决方案
{"code":7003,"message":"..."}检查 Zone ID 是否正确
{"code":6003,"message":"..."}验证 API Key 是否有权限
证书未更新清除浏览器缓存和本地 DNS

📘 历史参考:原 DigiCert 证书切换教程
📚 API 文档:Total TLS 接口说明

标签: Cloudflare, api, 切换, SSL证书

添加新评论