DogeLee2 发表于 2025-3-10 15:10:41

用api切换cf的证书

<i class="pstatus"> 本帖最后由 DogeLee2 于 2025-3-10 15:12 编辑 </i><br />
<br />
<br />
<strong><font size="7">1 前言</font></strong><br />
<br />
之前写过一篇 用api把cloudflare的证书换成自家一年的<br />
<br />
https://qklg.net/post/20230628/<br />
<br />
cf的一年的digicert已经没有了, 现在多了一种三个月的ssl.com的,<br />
cf官方说兼容性极强,原文如下<br />
<div class="blockcode"><div id="code_UQw"><ol><li>SSL.com 兼容性高度强,被超过 99.9% 的浏览器、平板电脑和移动设备所接受。<br /><li>SSL.com 证书与 Certum ↗交叉签名,并且对中间体↗进行交叉签名的 CA来自 2004 年。<br /><li></ol></div><em onclick="copycode($('code_UQw'));">复制代码</em></div><br />
<br />
https://developers.cloudflare.com/ssl/reference/certificate-authorities/<br />
<br />
https://developers.cloudflare.com/api/resources/acm/subresources/total_tls/methods/get/<br />
<br />
<strong><font size="7">2 切换办法</font></strong><br />
<br />
三种证书都可以切换,用小鸡上curl就可以了<br />
<br />
<strong><font size="6">切换成ssl.com的</font></strong><br />
<div class="blockcode"><div id="code_Y3u"><ol><li>curl -sX PATCH &quot;https://api.cloudflare.com/client/v4/zones/你的域名区域id/ssl/universal/settings&quot; -H &quot;X-Auth-Email:你的邮箱&quot; -H &quot;X-Auth-Key:你的global api key&quot; -H &quot;Content-Type: application/json&quot; --data &quot;{&quot;certificate_authority&quot;:&quot;ssl_com&quot;}&quot;<br /><li></ol></div><em onclick="copycode($('code_Y3u'));">复制代码</em></div><br />
<br />
<strong><font size="6">切换成谷歌的</font></strong><br />
<div class="blockcode"><div id="code_OhP"><ol><li>curl -sX PATCH &quot;https://api.cloudflare.com/client/v4/zones/你的域名区域id/ssl/universal/settings&quot; -H &quot;X-Auth-Email:你的邮箱&quot; -H &quot;X-Auth-Key:你的global api key&quot; -H &quot;Content-Type: application/json&quot; --data &quot;{&quot;certificate_authority&quot;:&quot;google&quot;}&quot;<br /><li><br /><li></ol></div><em onclick="copycode($('code_OhP'));">复制代码</em></div><br />
<br />
<strong><font size="6">切换成let's的</font></strong><br />
<div class="blockcode"><div id="code_iRc"><ol><li>curl -sX PATCH &quot;https://api.cloudflare.com/client/v4/zones/你的域名区域id/ssl/universal/settings&quot; -H &quot;X-Auth-Email:你的邮箱&quot; -H &quot;X-Auth-Key:你的global api key&quot; -H &quot;Content-Type: application/json&quot; --data &quot;{&quot;certificate_authority&quot;:&quot;lets_encrypt&quot;}&quot;<br /><li></ol></div><em onclick="copycode($('code_iRc'));">复制代码</em></div><br />
<br />
<strong><font size="7">3 参数替换</font></strong><br />
<br />
参数的话,三个需要替换下<br />
<br />
<strong><font size="6">你的域名区域id</font></strong><br />
<br />
打开你的域名,域名 右下角有个区域id,复制粘贴下就ok了<br />
<br />
<img id="aimg_Gjv3e" onclick="zoom(this, this.src, 0, 0, 0)" class="zoom" src="https://i.imgur.com/c9Nv2Ab.png" onmouseover="img_onmouseoverfunc(this)" onload="thumbImg(this)" border="0" alt="" /><br />
<br />
<strong><font size="6">邮箱</font></strong><br />
<br />
就是你cf的邮箱,不知道的话打开 https://dash.cloudflare.com/profile 看下就知道了<br />
<br />
<img id="aimg_Hsawm" onclick="zoom(this, this.src, 0, 0, 0)" class="zoom" src="https://i.imgur.com/Hvs2YdH.png" onmouseover="img_onmouseoverfunc(this)" onload="thumbImg(this)" border="0" alt="" /><br />
<br />
<strong><font size="6">你的global api key</font></strong><br />
<br />
https://dash.cloudflare.com/profile/api-tokens<br />
<br />
点击查看,就有了<br />
<br />
<img id="aimg_QyYmg" onclick="zoom(this, this.src, 0, 0, 0)" class="zoom" src="https://i.imgur.com/ZbLCBnN.png" onmouseover="img_onmouseoverfunc(this)" onload="thumbImg(this)" border="0" alt="" /><br />
<br />
<strong><font size="7">4 效果</font></strong><br />
<br />
curl打完之后,出现如下就是成功了<br />
<div class="blockcode"><div id="code_udI"><ol><li>{&quot;result&quot;:{&quot;enabled&quot;:true,&quot;certificate_authority&quot;:&quot;ssl_com&quot;},&quot;success&quot;:true,&quot;errors&quot;:[],&quot;messages&quot;<br /><li></ol></div><em onclick="copycode($('code_udI'));">复制代码</em></div><br />
<br />
<img id="aimg_DYvAv" onclick="zoom(this, this.src, 0, 0, 0)" class="zoom" src="https://i.imgur.com/V9EdDvI.png" onmouseover="img_onmouseoverfunc(this)" onload="thumbImg(this)" border="0" alt="" /><br />
<br />
cf后台出现新证书了<br />
<br />
<img id="aimg_WjKIi" onclick="zoom(this, this.src, 0, 0, 0)" class="zoom" src="https://i.imgur.com/qqHbsTI.png" onmouseover="img_onmouseoverfunc(this)" onload="thumbImg(this)" border="0" alt="" /><br />
<br />
域名也可以看到是新证书了<br />
<br />
<img id="aimg_cuR44" onclick="zoom(this, this.src, 0, 0, 0)" class="zoom" src="https://i.imgur.com/VyKuUEf.png" onmouseover="img_onmouseoverfunc(this)" onload="thumbImg(this)" border="0" alt="" /><br />

wawos 发表于 2025-3-10 15:14:30

楼主研究怎么给自定义主机名也切换证书啊,<br />
<br />
目前它ttl/tls里面自定义域名的证书默认始终是google的,<br />
但是google的证书如果访问者是tlsv1.2 (很多api抓取 或者蜘蛛机器人都是tls1.2),且它在大陆,<br />
<br />
访问海外站点会直接被阻断

DogeLee2 发表于 2025-3-10 15:15:46

<div class="quote"><blockquote><font size="2"><a href="https://hostloc.com/forum.php?mod=redirect&goto=findpost&pid=16272561&ptid=1394842" target="_blank"><font color="#999999">wawos 发表于 2025-3-10 15:14</font></a></font><br />
楼主研究怎么给自定义主机名也切换证书啊,<br />
<br />
目前它ttl/tls里面自定义域名的证书默认始终是google的,</blockquote></div><br />
<br />
saas吗<br />
不会,cf pages也没法切<br />
要不然签名博客早就换了<br />
我现在let's全家桶,小鸡cf全是let's<br />
我域名都直接托管过去的<br />
你都用saas了,直接自己搞个线路鸡完事了<br />

wawos 发表于 2025-3-10 15:14:00

<div class="quote"><blockquote><font size="2"><a href="https://hostloc.com/forum.php?mod=redirect&goto=findpost&pid=16272566&ptid=1394842" target="_blank"><font color="#999999">DogeLee2 发表于 2025-3-10 15:15</font></a></font><br />
saas吗<br />
不会,cf pages也没法切<br />
要不然签名博客早就换了</blockquote></div><br />
对, 如果用户是比较旧的浏览器的话, 只支持tls 1.2,<br />
<br />
也会导致访问直接被阻断

DogeLee2 发表于 2025-3-10 15:19:46

<div class="quote"><blockquote><font size="2"><a href="https://hostloc.com/forum.php?mod=redirect&goto=findpost&pid=16272572&ptid=1394842" target="_blank"><font color="#999999">wawos 发表于 2025-3-10 15:19</font></a></font><br />
对, 如果用户是比较旧的浏览器的话, 只支持tls 1.2,<br />
<br />
也会导致访问直接被阻断 ...</blockquote></div><br />
谷歌这个阻断我之前就见到有人说过<br />
反正我随缘了,打不打得开随便他去了
页: [1]
查看完整版本: 用api切换cf的证书