<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet href="/rss.xsl" type="text/xsl"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>证书 | 折腾啥</title><description>Power Users/Automators 折腾/讨论/分享各种开源工具/脚本/自动化工作流👥 @zhetengsha_group📌 合集 https://t.me/zhetengsha/2🎁 恰饭 https://t.me/zhetengsha/957📢 广告投放 @xream @xream_botBuy ads: https://telega.io/c/zhetengshafeedId:55438372655431680+userId:62307599601855488</description><link>http://telegram.zhetengsha.eu.org</link><item><title>自建节点证书相关说明更新▎覆盖用于验证证书的域名，但不会改变 SNI免流等场景下, SNI 改为混淆, 不关验证, 仍然验证证书的域名 Xray: verifyPeerCertByName, URI 上叫 vcn mihomo: name-cert-verify Surge: server-cert-verify-name Sub-Store 中可按上述输入写字段, 或使用脚本操作 $server[&apos;name-cert-verify&apos;] = &apos;b.com&apos; 原消息 服务器合集  合集   恰饭推荐   群组 联系推广 #VPS #服务器 #节点 #自建 #证书 #SNI #hostname #TLS #SHA256 #自签 #指纹 #SSL</title><link>http://telegram.zhetengsha.eu.org/posts/6442</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/6442</guid><pubDate>Sat, 18 Jul 2026 04:01:42 GMT</pubDate><content:encoded>&lt;u&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5296369303661067030.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;/u&gt;&lt;u&gt;自建节点证书相关说明更新&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;▎&lt;b&gt;覆盖用于验证证书的域名&lt;/b&gt;，但&lt;b&gt;不会改变 SNI&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;免流等场景下, SNI 改为混淆, 不关验证, 仍然&lt;b&gt;验证证书的域名&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5170221875044811472.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Xray: &lt;code&gt;verifyPeerCertByName&lt;/code&gt;, URI 上叫 &lt;code&gt;vcn&lt;/code&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960853905970823886.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; mihomo: &lt;a href=&quot;https://github.com/MetaCubeX/mihomo/commit/5677fd38088efc9cc3abe7ed54fefeeb1bea0ac4#diff-06e23ea20a066a0e717b5eaa625dfd3f1d11439f4ad5bd705d16d6e1758b39c0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;name-cert-verify&quot;&gt;name-cert-verify&lt;/a&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4961174074307904393.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Surge: &lt;a href=&quot;https://t.me/SurgeTestFlight/1663&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;server-cert-verify-name&quot;&gt;server-cert-verify-name&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960754541902430862.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Sub-Store 中可按上述输入写字段, 或使用脚本操作 &lt;code&gt;$server[&apos;name-cert-verify&apos;] = &apos;b.com&apos;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327684955379862886.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/1433&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;原消息&quot;&gt;原消息&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/154&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;服务器合集&quot;&gt;服务器合集&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327880277607583303.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;合集&quot;&gt;合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327792445526380187.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/957&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;恰饭推荐&quot;&gt;恰饭推荐&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6021860481923288796.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha_group&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;群组&quot;&gt;群组&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6330367862535884142.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;a href=&quot;https://t.me/xream_bot&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;联系推广&quot;&gt;联系推广&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327836885552991740.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/1354&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;#VPS #服务器 #节点 #自建 #证书 #SNI #hostname #TLS #SHA256 #自签 #指纹 #SSL&quot;&gt;#VPS #服务器 #节点 #自建 #证书 #SNI #hostname #TLS #SHA256 #自签 #指纹 #SSL&lt;/a&gt;</content:encoded></item><item><title> Sub-Store 自动设置服务端证书 SHA-256 指纹仅 Node.js 版支持这里示范的是直接从服务端取, 支持所有目标(包括  sing-box 的 certificate_public_key_sha256) 原消息相关: 自建节点证书相关说明 服务器合集   Sub-Store 合集   合集   恰饭推荐   群组 联系推广 #节点 #证书 #SNI #TLS #SHA256 #指纹 #SSL #sing-box #mihomo #surge</title><link>http://telegram.zhetengsha.eu.org/posts/6392</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/6392</guid><pubDate>Mon, 13 Jul 2026 03:59:58 GMT</pubDate><content:encoded>&lt;div class=&quot;image-list-container image-list-odd&quot;&gt;
      &lt;button type=&quot;button&quot; class=&quot;image-preview-button image-preview-wrap&quot; popovertarget=&quot;modal-6392-0&quot; popovertargetaction=&quot;show&quot; aria-label=&quot;Open image preview:  Sub-Store 自动设置服务端证书 SHA-256 指纹仅 Node.js 版支持这里示范的是直接从服务端取, 支持所有目标(包括  sing-box 的 certificate_public_key_sha256) 原消息相关: 自建节点证书相关说明 服务器合集   Sub-Store 合集   合集   恰饭推荐   群组 联系推广 #节点 #证书 #SNI #TLS #SHA256 #指纹 #SSL #sing-box #mihomo #surge&quot;&gt;
        &lt;img src=&quot;/static/https://cdn5.telesco.pe/file/bMnDGtgvyfVDdtt0Z8bWJ1533mV04hM4bRhVuolLfDcpaW_85xqKhOb3IcXrCiT5RZXqTOToT_5Nzs-0IKf4GqDN9GJXZxJk5NFUHVW17z7GtLElAQGQ-Ho-p3JKrftsUBd0y5wGE4Iu2UDdGBMCdCD3gSoShV-xt0nX1JbsdVtkPd6ZevfgASEaqZcqUe2SkTKtGhqG7FSQtfuposqXbO4rfp3txtlwXq7_BpVGGOn1L3sDGeLGO7D1iNheT5-SOZsIYvGHiI0BSiEX_ks8T2T_goGt67r4j_Qek6W-dJ3DbgFXx9DW5VBIbafRZl1q3I6h9ATmTOYaQIn0ec2uVg.jpg&quot; alt=&quot; Sub-Store 自动设置服务端证书 SHA-256 指纹仅 Node.js 版支持这里示范的是直接从服务端取, 支持所有目标(包括  sing-box 的 certificate_public_key_sha256) 原消息相关: 自建节点证书相关说明 服务器合集   Sub-Store 合集   合集   恰饭推荐   群组 联系推广 #节点 #证书 #SNI #TLS #SHA256 #指纹 #SSL #sing-box #mihomo #surge&quot; width=&quot;800&quot; height=&quot;259&quot; loading=&quot;eager&quot; /&gt;
      &lt;/button&gt;
      &lt;div class=&quot;modal&quot; id=&quot;modal-6392-0&quot; popover=&quot;auto&quot; aria-label=&quot;Image preview&quot;&gt;
        &lt;button type=&quot;button&quot; class=&quot;modal__backdrop&quot; popovertarget=&quot;modal-6392-0&quot; popovertargetaction=&quot;hide&quot; aria-label=&quot;Close image preview&quot;&gt;&lt;/button&gt;
        &lt;button type=&quot;button&quot; class=&quot;modal__close&quot; popovertarget=&quot;modal-6392-0&quot; popovertargetaction=&quot;hide&quot; aria-label=&quot;Close image preview&quot;&gt;×&lt;/button&gt;
        &lt;div class=&quot;modal__surface&quot;&gt;
          
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960754541902430862.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;u&gt;Sub-Store 自动设置服务端证书 SHA-256 指纹&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;仅 Node.js 版支持&lt;br /&gt;这里示范的是直接从服务端取, 支持所有目标(包括 &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5154930575995306994.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; sing-box 的 &lt;code&gt;certificate_public_key_sha256&lt;/code&gt;)&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327684955379862886.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/1434&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;原消息&quot;&gt;原消息&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;相关: &lt;u&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5296369303661067030.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;/u&gt;&lt;a href=&quot;https://t.me/zhetengsha/1433&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;自建节点证书相关说明&quot;&gt;自建节点证书相关说明&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/154&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;服务器合集&quot;&gt;服务器合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/214&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Sub-Store 合集&quot;&gt;Sub-Store 合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327880277607583303.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;合集&quot;&gt;合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327792445526380187.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/957&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;恰饭推荐&quot;&gt;恰饭推荐&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6021860481923288796.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha_group&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;群组&quot;&gt;群组&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6330367862535884142.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;a href=&quot;https://t.me/xream_bot&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;联系推广&quot;&gt;联系推广&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327836885552991740.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/1354&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;#节点 #证书 #SNI #TLS #SHA256 #指纹 #SSL&quot;&gt;#节点 #证书 #SNI #TLS #SHA256 #指纹 #SSL&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23sing&quot; title=&quot;#sing&quot;&gt;#sing&lt;/a&gt;-box &lt;a href=&quot;/search/result?q=%23mihomo&quot; title=&quot;#mihomo&quot;&gt;#mihomo&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23surge&quot; title=&quot;#surge&quot;&gt;#surge&lt;/a&gt;</content:encoded></item><item><title>Caddy 配置保留带下划线的请求头如果使用 Nginx 反代 Sub2API 需要保留带下划线的请求头（如 session_id、conversation_id、thread_id），否则多账号环境下的粘性会话（Sticky Session）会失效</title><link>http://telegram.zhetengsha.eu.org/posts/6320</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/6320</guid><pubDate>Tue, 07 Jul 2026 09:59:58 GMT</pubDate><content:encoded>&lt;u&gt;Caddy 配置保留带下划线的请求头&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;如果使用 &lt;b&gt;Nginx&lt;/b&gt; 反代 &lt;b&gt;Sub2API&lt;/b&gt; 需要保留带下划线的请求头（如 &lt;code&gt;session_id&lt;/code&gt;、&lt;code&gt;conversation_id&lt;/code&gt;、&lt;code&gt;thread_id&lt;/code&gt;），否则多账号环境下的粘性会话（Sticky Session）会失效。&lt;br /&gt;&lt;b&gt;Nginx&lt;/b&gt;&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-c&quot;&gt;http &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
    underscores_in_headers on&lt;span class=&quot;token punctuation&quot;&gt;;&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;b&gt;Caddy（需最新 master）&lt;/b&gt;&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-lua&quot;&gt;xcaddy build master &lt;span class=&quot;token comment&quot;&gt;--output /usr/bin/caddy&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-text&quot;&gt;servers :443 {
    expected_underscore_headers session_id conversation_id thread_id
}&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;Sub2API：&lt;a href=&quot;https://github.com/Wei-Shaw/sub2api/issues/2784&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://github.com/Wei-Shaw/sub2api/issues/2784&quot;&gt;https://github.com/Wei-Shaw/sub2api/issues/2784&lt;/a&gt;&lt;br /&gt;Caddy：&lt;a href=&quot;https://github.com/caddyserver/caddy/issues/7808&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://github.com/caddyserver/caddy/issues/7808&quot;&gt;https://github.com/caddyserver/caddy/issues/7808&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/154&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;服务器合集&quot;&gt;服务器合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327880277607583303.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;合集&quot;&gt;合集&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6021860481923288796.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha_group&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;群组&quot;&gt;群组&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327792445526380187.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/957&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;恰饭&quot;&gt;恰饭&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6330367862535884142.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;a href=&quot;https://t.me/xream_bot&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;联系推广&quot;&gt;联系推广&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327836885552991740.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;/search/result?q=%23redis&quot; title=&quot;#redis&quot;&gt;#redis&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23caddy&quot; title=&quot;#caddy&quot;&gt;#caddy&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%9C%8D%E5%8A%A1%E5%99%A8&quot; title=&quot;#服务器&quot;&gt;#服务器&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%AF%81%E4%B9%A6&quot; title=&quot;#证书&quot;&gt;#证书&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23tls&quot; title=&quot;#tls&quot;&gt;#tls&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%95%B0%E6%8D%AE%E5%BA%93&quot; title=&quot;#数据库&quot;&gt;#数据库&lt;/a&gt;</content:encoded></item><item><title>Caddy 使用 Redis 共享 storage共享 storage 的实例会自动共享资源并协调证书管理▎mise官方文档curl </title><link>http://telegram.zhetengsha.eu.org/posts/6311</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/6311</guid><pubDate>Mon, 06 Jul 2026 12:59:58 GMT</pubDate><content:encoded>&lt;u&gt;Caddy 使用 Redis 共享 storage&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;共享 storage 的实例会自动共享资源并协调证书管理&lt;br /&gt;&lt;br /&gt;▎mise&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6329896824882597500.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;a href=&quot;https://mise.jdx.dev/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;官方文档&quot;&gt;官方文档&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-yaml&quot;&gt;curl https&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;//mise.run &lt;span class=&quot;token punctuation&quot;&gt;|&lt;/span&gt; sh&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-text&quot;&gt;echo &apos;eval &quot;$(~/.local/bin/mise activate bash)&quot;&apos; &amp;gt;&amp;gt; ~/.bashrc&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;fish:&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-text&quot;&gt;echo &apos;~/.local/bin/mise activate fish | source&apos; &amp;gt;&amp;gt; ~/.config/fish/config.fish&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;重启你的 shell 会话, 安装 &lt;code&gt;go&lt;/code&gt;&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-text&quot;&gt;mise use -g go&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;▎caddy&lt;br /&gt;&lt;br /&gt;caddy 安装: &lt;a href=&quot;https://caddyserver.com/docs/install&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;官方文档&quot;&gt;官方文档&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;xcaddy 安装:&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-lua&quot;&gt;go install github&lt;span class=&quot;token punctuation&quot;&gt;.&lt;/span&gt;com&lt;span class=&quot;token operator&quot;&gt;/&lt;/span&gt;caddyserver&lt;span class=&quot;token operator&quot;&gt;/&lt;/span&gt;xcaddy&lt;span class=&quot;token operator&quot;&gt;/&lt;/span&gt;cmd&lt;span class=&quot;token operator&quot;&gt;/&lt;/span&gt;xcaddy@latest&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;pberkel/caddy-storage-redis 安装:&lt;br /&gt;补充一点 如果想用最新的特性 可以用 &lt;code&gt;xcaddy build master&lt;/code&gt; 但是可能也有新鲜的 bug &lt;i class=&quot;emoji&quot;&gt;&lt;b&gt;🐶&lt;/b&gt;&lt;/i&gt;&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-lua&quot;&gt;xcaddy build latest &lt;span class=&quot;token comment&quot;&gt;--with github.com/pberkel/caddy-storage-redis --output /usr/bin/caddy&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6329896824882597500.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://github.com/pberkel/caddy-storage-redis&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;pberkel/caddy-storage-redis 文档&quot;&gt;pberkel/caddy-storage-redis 文档&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;注册一个 &lt;a href=&quot;http://upstash.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;upstash.com&quot;&gt;upstash.com&lt;/a&gt; 的免费 Redis 或准备一个自己的&lt;br /&gt;&lt;br /&gt;caddy 配置(省略其他的部分)&lt;br /&gt;&lt;code&gt;/etc/caddy/Caddyfile&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;encryption_key&lt;/code&gt; 开启加密&lt;br /&gt;&lt;code&gt;compression&lt;/code&gt; 开启压缩&lt;br /&gt;&lt;div class=&quot;tg-expandable&quot;&gt;
      &lt;input type=&quot;checkbox&quot; id=&quot;expand-5-0&quot; class=&quot;tg-expandable__checkbox&quot; aria-label=&quot;Toggle hidden content&quot; aria-controls=&quot;expand-5-0-content&quot; /&gt;
      &lt;div id=&quot;expand-5-0-content&quot; class=&quot;tg-expandable__content&quot;&gt;{&lt;br /&gt;  storage redis {&lt;br /&gt;    address &lt;a href=&quot;http://xxxxxxxxxx.upstash.io:6379/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;xxxxxxxxxx.upstash.io:6379&quot;&gt;xxxxxxxxxx.upstash.io:6379&lt;/a&gt;&lt;br /&gt;    username default&lt;br /&gt;    password xxxxxxxxxx&lt;br /&gt;    encryption_key MwhAhPKhr687n94Jd9TiPRcwHaVReLsv&lt;br /&gt;    compression true&lt;br /&gt;    tls_enabled true&lt;br /&gt;  }&lt;br /&gt;}&lt;br /&gt;&lt;/div&gt;
      &lt;label for=&quot;expand-5-0&quot; class=&quot;tg-expandable__toggle&quot;&gt;&lt;span class=&quot;sr-only&quot;&gt;Toggle hidden content&lt;/span&gt;&lt;/label&gt;
    &lt;/div&gt;&lt;br /&gt;▎相关阅读&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://t.me/zhetengsha/2579&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;从 0 搭建一个 AnyTLS 节点(Caddy 分流, 自动维护证书)&quot;&gt;从 0 搭建一个 AnyTLS 节点(Caddy 分流, 自动维护证书)&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/154&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;服务器合集&quot;&gt;服务器合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327880277607583303.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;合集&quot;&gt;合集&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6021860481923288796.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha_group&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;群组&quot;&gt;群组&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327792445526380187.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/957&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;恰饭&quot;&gt;恰饭&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6330367862535884142.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;a href=&quot;https://t.me/xream_bot&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;联系推广&quot;&gt;联系推广&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327836885552991740.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;/search/result?q=%23redis&quot; title=&quot;#redis&quot;&gt;#redis&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23caddy&quot; title=&quot;#caddy&quot;&gt;#caddy&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%9C%8D%E5%8A%A1%E5%99%A8&quot; title=&quot;#服务器&quot;&gt;#服务器&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%AF%81%E4%B9%A6&quot; title=&quot;#证书&quot;&gt;#证书&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23tls&quot; title=&quot;#tls&quot;&gt;#tls&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%95%B0%E6%8D%AE%E5%BA%93&quot; title=&quot;#数据库&quot;&gt;#数据库&lt;/a&gt;</content:encoded></item><item><title>Everywhere 最新 TF 版 mihomo 已支持配合 SideStore 自签同样的配方tun:</title><link>http://telegram.zhetengsha.eu.org/posts/5693</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/5693</guid><pubDate>Sun, 17 May 2026 12:02:36 GMT</pubDate><content:encoded>Everywhere 最新 TF 版 mihomo 已支持配合 SideStore 自签&lt;br /&gt;&lt;br /&gt;同样的配方&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-yaml&quot;&gt;&lt;span class=&quot;token key atrule&quot;&gt;tun&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;token key atrule&quot;&gt;loopback-address&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; 
    &lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt; 10.7.0.1&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;TestFlight: &lt;a href=&quot;https://testflight.apple.com/join/FZh5z6cb&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://testflight.apple.com/join/FZh5z6cb&quot;&gt;https://testflight.apple.com/join/FZh5z6cb&lt;/a&gt;&lt;br /&gt;群组 &lt;a href=&quot;https://t.me/everywhere_proxy&quot; target=&quot;_blank&quot; title=&quot;@everywhere_proxy&quot;&gt;@everywhere_proxy&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/154&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;服务器合集&quot;&gt;服务器合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327880277607583303.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;频道资源合集&quot;&gt;频道资源合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327792445526380187.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/957&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;恰饭推荐&quot;&gt;恰饭推荐&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6021860481923288796.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha_group&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;群组&quot;&gt;群组&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327836885552991740.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;/search/result?q=%23%E8%AF%81%E4%B9%A6&quot; title=&quot;#证书&quot;&gt;#证书&lt;/a&gt;&lt;a href=&quot;https://t.me/zhetengsha/1354&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot; &quot;&gt; &lt;/a&gt;&lt;a href=&quot;/search/result?q=%23SideStore&quot; title=&quot;#SideStore&quot;&gt;#SideStore&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%87%AA%E7%AD%BE&quot; title=&quot;#自签&quot;&gt;#自签&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23iOS&quot; title=&quot;#iOS&quot;&gt;#iOS&lt;/a&gt;</content:encoded></item><item><title>Certd: 全自动证书管理之前介绍过一个 Certimate...我都用过 如果你要问我更愿意用哪个 我觉得 Certd 更好一点某些逻辑有点怪 但是自由度很高自带的 webhook 里居然只有 get/post/put 没有 patch...还好能用 js 脚本 非常哇塞流水线很完善部分功能收费我永远喜欢 acme.sh • 全自动完成 DNS‑01、HTTP‑01 等多种验证并申请免费通配符证书  • 支持 110+ 部署插件，覆盖 Nginx、阿里云、腾讯云、K8S、宝塔等  • 私有化部署，支持 SQLite、PostgreSQL、MySQL，提供 2FA、授权加密等安全特性  </title><link>http://telegram.zhetengsha.eu.org/posts/4500</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/4500</guid><pubDate>Sun, 11 Jan 2026 04:00:54 GMT</pubDate><content:encoded>&lt;div class=&quot;image-list-container image-list-odd&quot;&gt;
      &lt;button type=&quot;button&quot; class=&quot;image-preview-button image-preview-wrap&quot; popovertarget=&quot;modal-4500-0&quot; popovertargetaction=&quot;show&quot; aria-label=&quot;Open image preview: Certd: 全自动证书管理之前介绍过一个 Certimate...我都用过 如果你要问我更愿意用哪个 我觉得 Certd 更好一点某些逻辑有点怪 但是自由度很高自带的 webhook 里居然只有 get/post/put 没有 patch...还好能用 js 脚本 非常哇塞流水线很完善部分功能收费我永远喜欢 acme.sh • 全自动完成 DNS‑01、HTTP‑01 等多种验证并申请免费通配符证书  • 支持 110+ 部署插件，覆盖 Nginx、阿里云、腾讯云、K8S、宝塔等  • 私有化部署，支持 SQLite、PostgreSQL、MySQL，提供 2FA、授权加密等安全特性  &quot;&gt;
        &lt;img src=&quot;/static/https://cdn5.telesco.pe/file/JdTmB3HDIRwaHELX9dL1sKHd0RmC6pcMtEWW_Kyva6bRYQ1HU-oNdT3RELKjS3gPNMsWfHuF5NVme2ONr1m_m_zaH8cgEy8jymRoWPzj-hoMAmSMZyBK3HgVsQ17N2yUJVijRdsbbCSYWiqwvE5KnW9_BwmeFp_Q5RLwRJr1ma0xLRUvFAO_QyKbLulunKT45kJbsDfHZ86zw8HK1TwaAViL56ImK6tOsEWsmi6dG2V1NBJ1PRmJFQxsJOh0p3BEj7qqZOVLpFDp-hWNquC1o2nBpTnVrKw1oIn-fUjw9CreH_PTCHgeU-S8zeC_4KT2N20xVrpLOh0eDAdTOL2vjg.jpg&quot; alt=&quot;Certd: 全自动证书管理之前介绍过一个 Certimate...我都用过 如果你要问我更愿意用哪个 我觉得 Certd 更好一点某些逻辑有点怪 但是自由度很高自带的 webhook 里居然只有 get/post/put 没有 patch...还好能用 js 脚本 非常哇塞流水线很完善部分功能收费我永远喜欢 acme.sh • 全自动完成 DNS‑01、HTTP‑01 等多种验证并申请免费通配符证书  • 支持 110+ 部署插件，覆盖 Nginx、阿里云、腾讯云、K8S、宝塔等  • 私有化部署，支持 SQLite、PostgreSQL、MySQL，提供 2FA、授权加密等安全特性  &quot; width=&quot;800&quot; height=&quot;516&quot; loading=&quot;eager&quot; /&gt;
      &lt;/button&gt;
      &lt;div class=&quot;modal&quot; id=&quot;modal-4500-0&quot; popover=&quot;auto&quot; aria-label=&quot;Image preview&quot;&gt;
        &lt;button type=&quot;button&quot; class=&quot;modal__backdrop&quot; popovertarget=&quot;modal-4500-0&quot; popovertargetaction=&quot;hide&quot; aria-label=&quot;Close image preview&quot;&gt;&lt;/button&gt;
        &lt;button type=&quot;button&quot; class=&quot;modal__close&quot; popovertarget=&quot;modal-4500-0&quot; popovertargetaction=&quot;hide&quot; aria-label=&quot;Close image preview&quot;&gt;×&lt;/button&gt;
        &lt;div class=&quot;modal__surface&quot;&gt;
          
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;&lt;u&gt;Certd: 全自动证书管理&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;之前介绍过一个 Certimate...我都用过 如果你要问我更愿意用哪个 我觉得 Certd 更好一点&lt;br /&gt;&lt;br /&gt;某些逻辑有点怪 但是自由度很高&lt;br /&gt;自带的 webhook 里居然只有 get/post/put 没有 patch...&lt;br /&gt;还好能用 js 脚本 非常哇塞&lt;br /&gt;流水线很完善&lt;br /&gt;部分功能收费&lt;br /&gt;&lt;br /&gt;我永远喜欢 &lt;a href=&quot;http://acme.sh/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;acme.sh&quot;&gt;acme.sh&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6093619172007218987.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;br /&gt;&lt;br /&gt;• 全自动完成 DNS‑01、HTTP‑01 等多种验证并申请免费通配符证书  &lt;br /&gt;• 支持 110+ 部署插件，覆盖 Nginx、阿里云、腾讯云、K8S、宝塔等  &lt;br /&gt;• 私有化部署，支持 SQLite、PostgreSQL、MySQL，提供 2FA、授权加密等安全特性  &lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://github.com/certd/certd&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://github.com/certd/certd&quot;&gt;https://github.com/certd/certd&lt;/a&gt;  &lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;/search/result?q=%23%E8%AF%81%E4%B9%A6%E7%AE%A1%E7%90%86&quot; title=&quot;#证书管理&quot;&gt;#证书管理&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%87%AA%E5%8A%A8%E5%8C%96&quot; title=&quot;#自动化&quot;&gt;#自动化&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E5%BC%80%E6%BA%90&quot; title=&quot;#开源&quot;&gt;#开源&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E7%A7%81%E6%9C%89%E9%83%A8%E7%BD%B2&quot; title=&quot;#私有部署&quot;&gt;#私有部署&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Docker&quot; title=&quot;#Docker&quot;&gt;#Docker&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23GitHub&quot; title=&quot;#GitHub&quot;&gt;#GitHub&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Linux&quot; title=&quot;#Linux&quot;&gt;#Linux&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23API&quot; title=&quot;#API&quot;&gt;#API&lt;/a&gt;</content:encoded></item><item><title>自建 SideStore Anisette 服务器群友反馈说官方列表的都连接不畅 StosVPN/LocalDevVPN 开着 还是直连的服务器所以用 clash mi/sing-box/everywhere/anywhere/shadowrocket 走代理且支持 StosVPN/LocalDevVPN 的功能( loopback-address 10.7.0.1)如果你换成 sing-box 的话就完美了 参考这个亲测 Clash Mi(免费) 和 Everywhere 也可以 配置里加上 这个👉🏻 快捷指令自动化每天定时无感刷新可以看手速 github上看了下目前这个方法可行，就是比较吃手速没必要自建了 还是用上面的方法稳—- 分割线—-当然也可以自建一个 自己稳稳用Anisette 自建服务器项目: </title><link>http://telegram.zhetengsha.eu.org/posts/4482</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/4482</guid><pubDate>Fri, 09 Jan 2026 04:02:09 GMT</pubDate><content:encoded>&lt;u&gt;自建 SideStore Anisette 服务器&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;群友反馈说官方列表的都连接不畅 StosVPN/LocalDevVPN 开着 还是直连的服务器&lt;br /&gt;所以用 clash mi/sing-box/everywhere/anywhere/shadowrocket 走代理且支持 StosVPN/LocalDevVPN 的功能( loopback-address &lt;a href=&quot;http://10.7.0.1/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;10.7.0.1&quot;&gt;10.7.0.1&lt;/a&gt;)&lt;br /&gt;如果你换成 sing-box 的话就完美了 &lt;a href=&quot;https://t.me/zhetengsha_group/1153428&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;参考这个&quot;&gt;参考这个&lt;/a&gt;&lt;br /&gt;亲测 Clash Mi(免费) 和 &lt;a href=&quot;https://t.me/zhetengsha/5693&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Everywhere&quot;&gt;Everywhere&lt;/a&gt; 也可以 配置里加上 &lt;a href=&quot;https://t.me/zhetengsha_group/1158277&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;这个&quot;&gt;这个&lt;/a&gt;&lt;br /&gt;&lt;i class=&quot;emoji&quot;&gt;&lt;b&gt;👉🏻&lt;/b&gt;&lt;/i&gt; &lt;a href=&quot;https://t.me/zhetengsha_group/1149310&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;快捷指令自动化每天定时无感刷新&quot;&gt;快捷指令自动化每天定时无感刷新&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;可以看手速 &lt;a href=&quot;https://t.me/aiyueshuxiangy/200111&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;github上看了下目前这个方法可行，就是比较吃手速&quot;&gt;github上看了下目前这个方法可行，就是比较吃手速&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;没必要自建了 还是用上面的方法稳&lt;br /&gt;&lt;br /&gt;—- 分割线—-&lt;br /&gt;&lt;br /&gt;当然也可以自建一个 自己稳稳用&lt;br /&gt;&lt;br /&gt;Anisette 自建服务器项目: &lt;a href=&quot;https://github.com/Dadoum/anisette-v3-server&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://github.com/Dadoum/anisette-v3-server&quot;&gt;https://github.com/Dadoum/anisette-v3-server&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;docker volume create anisette-v3_data&lt;/code&gt;&lt;br /&gt;然后 docker compose&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-yaml&quot;&gt;&lt;span class=&quot;token key atrule&quot;&gt;services&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;token key atrule&quot;&gt;anisette-v3-server&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;token key atrule&quot;&gt;restart&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; always
    &lt;span class=&quot;token key atrule&quot;&gt;container_name&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; anisette&lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt;v3
    &lt;span class=&quot;token key atrule&quot;&gt;ports&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;
      &lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt; 127.0.0.1&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;6969&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;token number&quot;&gt;6969&lt;/span&gt;
    &lt;span class=&quot;token key atrule&quot;&gt;volumes&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;
      &lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt; anisette&lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt;v3_data&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;/home/Alcoholic/.config/anisette&lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt;v3/lib/
    &lt;span class=&quot;token key atrule&quot;&gt;image&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; dadoum/anisette&lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt;v3&lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt;server
&lt;span class=&quot;token key atrule&quot;&gt;volumes&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;token key atrule&quot;&gt;anisette-v3_data&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;token key atrule&quot;&gt;external&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token boolean important&quot;&gt;true&lt;/span&gt;
    &lt;span class=&quot;token key atrule&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;:&lt;/span&gt; anisette&lt;span class=&quot;token punctuation&quot;&gt;-&lt;/span&gt;v3_data&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;这里我只监听了 &lt;a href=&quot;http://127.0.0.1:6969/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;127.0.0.1:6969&quot;&gt;127.0.0.1:6969&lt;/a&gt;&lt;br /&gt;然后域名 &lt;a href=&quot;https://a.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://a.com&quot;&gt;https://a.com&lt;/a&gt; 反代 6969&lt;br /&gt;准备一个 json 文件&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-json&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;token property&quot;&gt;&quot;servers&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt;
      &lt;span class=&quot;token property&quot;&gt;&quot;name&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;a&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt;
      &lt;span class=&quot;token property&quot;&gt;&quot;address&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;https://a.com&quot;&lt;/span&gt;
    &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt;
&lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;然后 SideStore App Settings 里的 Anisette Servers 里 输入框里填 json 文件的链接, 点 Refresh Servers, 然后选 a 这项&lt;br /&gt;&lt;br /&gt;官方文档: &lt;a href=&quot;https://docs.sidestore.io/docs/advanced/anisette&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;https://docs.sidestore.io/docs/advanced/anisette&quot;&gt;https://docs.sidestore.io/docs/advanced/anisette&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/154&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;服务器合集&quot;&gt;服务器合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327880277607583303.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;频道资源合集&quot;&gt;频道资源合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327792445526380187.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/957&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;恰饭推荐&quot;&gt;恰饭推荐&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6021860481923288796.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha_group&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;群组&quot;&gt;群组&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327836885552991740.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;/search/result?q=%23VPS&quot; title=&quot;#VPS&quot;&gt;#VPS&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%9C%8D%E5%8A%A1%E5%99%A8&quot; title=&quot;#服务器&quot;&gt;#服务器&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%87%AA%E5%BB%BA&quot; title=&quot;#自建&quot;&gt;#自建&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%AF%81%E4%B9%A6&quot; title=&quot;#证书&quot;&gt;#证书&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23SideStore&quot; title=&quot;#SideStore&quot;&gt;#SideStore&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Anisette&quot; title=&quot;#Anisette&quot;&gt;#Anisette&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%87%AA%E7%AD%BE&quot; title=&quot;#自签&quot;&gt;#自签&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Docker&quot; title=&quot;#Docker&quot;&gt;#Docker&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23iOS&quot; title=&quot;#iOS&quot;&gt;#iOS&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23Apple&quot; title=&quot;#Apple&quot;&gt;#Apple&lt;/a&gt;</content:encoded></item><item><title> Sub-Store 自动设置服务端证书 SHA-256 指纹仅 Node.js 版支持优先使用 sni, 其次节点服务端其他需求可以让 AI 改改. 比如哪些节点需要加之类的.这里示范的是直接从服务端取, 支持所有目标(包括  sing-box 的 certificate_public_key_sha256)</title><link>http://telegram.zhetengsha.eu.org/posts/1434</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/1434</guid><pubDate>Tue, 21 May 2024 04:38:25 GMT</pubDate><content:encoded>&lt;div class=&quot;image-list-container image-list-odd&quot;&gt;
      &lt;button type=&quot;button&quot; class=&quot;image-preview-button image-preview-wrap&quot; popovertarget=&quot;modal-1434-0&quot; popovertargetaction=&quot;show&quot; aria-label=&quot;Open image preview:  Sub-Store 自动设置服务端证书 SHA-256 指纹仅 Node.js 版支持优先使用 sni, 其次节点服务端其他需求可以让 AI 改改. 比如哪些节点需要加之类的.这里示范的是直接从服务端取, 支持所有目标(包括  sing-box 的 certificate_public_key_sha256)&quot;&gt;
        &lt;img src=&quot;/static/https://cdn5.telesco.pe/file/MrKMrbt2wn12Mvk3g_J5yMsl-y7R3KI8aO6kfcCRi4tCQ5fnSmUPnNLR7fEKnPVajoFqVGVy_-8ZBRbUwiO-KDvBgqcfoK8n2LjKymxXjhxNPdXW8-DFpxE5hyBg3xZJJAfNjBGGc5_G6Eoswoxtslp8NH7jOzEC9KYsjqtdMNqGkK-vXAYcze9E0eouzEsjX4SrYgxQxoRgjjGECeIyypts2ZU6olIvmMNvKwZ3Z_8J0UnnF3oSydlPyYPl98qHEzxZvx3PKzj2UdxJf4XQUTcrfDse0ai3c6gSXjDfaKgXt4OUO_dsdzV0O25GrDobPotqmN7bfarV3nh0f7_pQA.jpg&quot; alt=&quot; Sub-Store 自动设置服务端证书 SHA-256 指纹仅 Node.js 版支持优先使用 sni, 其次节点服务端其他需求可以让 AI 改改. 比如哪些节点需要加之类的.这里示范的是直接从服务端取, 支持所有目标(包括  sing-box 的 certificate_public_key_sha256)&quot; width=&quot;800&quot; height=&quot;259&quot; loading=&quot;eager&quot; /&gt;
      &lt;/button&gt;
      &lt;div class=&quot;modal&quot; id=&quot;modal-1434-0&quot; popover=&quot;auto&quot; aria-label=&quot;Image preview&quot;&gt;
        &lt;button type=&quot;button&quot; class=&quot;modal__backdrop&quot; popovertarget=&quot;modal-1434-0&quot; popovertargetaction=&quot;hide&quot; aria-label=&quot;Close image preview&quot;&gt;&lt;/button&gt;
        &lt;button type=&quot;button&quot; class=&quot;modal__close&quot; popovertarget=&quot;modal-1434-0&quot; popovertargetaction=&quot;hide&quot; aria-label=&quot;Close image preview&quot;&gt;×&lt;/button&gt;
        &lt;div class=&quot;modal__surface&quot;&gt;
          
        &lt;/div&gt;
      &lt;/div&gt;
    &lt;/div&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960754541902430862.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;u&gt;Sub-Store 自动设置服务端证书 SHA-256 指纹&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;仅 Node.js 版支持&lt;br /&gt;&lt;br /&gt;优先使用 &lt;code&gt;sni&lt;/code&gt;, 其次节点服务端&lt;br /&gt;其他需求可以让 AI 改改. 比如哪些节点需要加之类的.&lt;br /&gt;这里示范的是直接从服务端取, 支持所有目标(包括 &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5154930575995306994.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; sing-box 的 &lt;code&gt;certificate_public_key_sha256&lt;/code&gt;)&lt;br /&gt;&lt;br /&gt;&lt;div class=&quot;tg-expandable&quot;&gt;
      &lt;input type=&quot;checkbox&quot; id=&quot;expand-1-0&quot; class=&quot;tg-expandable__checkbox&quot; aria-label=&quot;Toggle hidden content&quot; aria-controls=&quot;expand-1-0-content&quot; /&gt;
      &lt;div id=&quot;expand-1-0-content&quot; class=&quot;tg-expandable__content&quot;&gt;const tls = require(&quot;tls&quot;);&lt;br /&gt;const crypto = require(&quot;crypto&quot;);&lt;br /&gt;&lt;br /&gt;function getCertificateInfo(host, port = 443) {&lt;br /&gt;  return new Promise((resolve) =&amp;gt; {&lt;br /&gt;    const socket = tls.connect(&lt;br /&gt;      {&lt;br /&gt;        host,&lt;br /&gt;        port,&lt;br /&gt;        servername: host,&lt;br /&gt;        rejectUnauthorized: false,&lt;br /&gt;      },&lt;br /&gt;      () =&amp;gt; {&lt;br /&gt;        try {&lt;br /&gt;          const cert = socket.getPeerCertificate(true);&lt;br /&gt;&lt;br /&gt;          if (!cert || !cert.raw) {&lt;br /&gt;            socket.end();&lt;br /&gt;            return resolve({&lt;br /&gt;              fingerprint: &quot;&quot;,&lt;br /&gt;              publicKeySha256: &quot;&quot;,&lt;br /&gt;            });&lt;br /&gt;          }&lt;br /&gt;&lt;br /&gt;          const x509 = new crypto.X509Certificate(cert.raw);&lt;br /&gt;&lt;br /&gt;          // SHA256 证书指纹&lt;br /&gt;          const fingerprint = cert.fingerprint256 || &quot;&quot;;&lt;br /&gt;&lt;br /&gt;          // SHA256 公钥（SPKI）&lt;br /&gt;          const publicKeyDer = x509.publicKey.export({&lt;br /&gt;            type: &quot;spki&quot;,&lt;br /&gt;            format: &quot;der&quot;,&lt;br /&gt;          });&lt;br /&gt;&lt;br /&gt;          const publicKeySha256 = crypto&lt;br /&gt;            .createHash(&quot;sha256&quot;)&lt;br /&gt;            .update(publicKeyDer)&lt;br /&gt;            .digest(&quot;base64&quot;);&lt;br /&gt;&lt;br /&gt;          socket.end();&lt;br /&gt;&lt;br /&gt;          resolve({&lt;br /&gt;            fingerprint,&lt;br /&gt;            publicKeySha256,&lt;br /&gt;          });&lt;br /&gt;        } catch {&lt;br /&gt;          socket.end();&lt;br /&gt;          resolve({&lt;br /&gt;            fingerprint: &quot;&quot;,&lt;br /&gt;            publicKeySha256: &quot;&quot;,&lt;br /&gt;          });&lt;br /&gt;        }&lt;br /&gt;      }&lt;br /&gt;    );&lt;br /&gt;&lt;br /&gt;    socket.on(&quot;error&quot;, () =&amp;gt; {&lt;br /&gt;      resolve({&lt;br /&gt;        fingerprint: &quot;&quot;,&lt;br /&gt;        publicKeySha256: &quot;&quot;,&lt;br /&gt;      });&lt;br /&gt;    });&lt;br /&gt;  });&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;async function operator(proxies, targetPlatform, context) {&lt;br /&gt;  console.log(`[&lt;mark class=&quot;highlight&quot;&gt;证书&lt;/mark&gt;] INFO: 开始处理 ${proxies.length} 个节点`);&lt;br /&gt;&lt;br /&gt;  for await (const proxy of proxies) {&lt;br /&gt;    const host = proxy.sni || proxy.server;&lt;br /&gt;&lt;br /&gt;    if (!host || ProxyUtils.isIP(host)) {&lt;br /&gt;      console.log(&lt;br /&gt;        `[&lt;mark class=&quot;highlight&quot;&gt;证书&lt;/mark&gt;] WARN: [${&lt;a href=&quot;http://proxy.name/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;proxy.name&quot;&gt;proxy.name&lt;/a&gt;}] 跳过，目标为 IP 或为空 (${host || &quot;-&quot;})`&lt;br /&gt;      );&lt;br /&gt;      continue;&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    console.log(&lt;br /&gt;      `[&lt;mark class=&quot;highlight&quot;&gt;证书&lt;/mark&gt;] INFO: [${&lt;a href=&quot;http://proxy.name/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;proxy.name&quot;&gt;proxy.name&lt;/a&gt;}] 正在获取 ${host} 的证书信息`&lt;br /&gt;    );&lt;br /&gt;&lt;br /&gt;    const cert = await getCertificateInfo(host);&lt;br /&gt;&lt;br /&gt;    proxy.fingerprint = cert.fingerprint;&lt;br /&gt;&lt;br /&gt;    if (cert.publicKeySha256) {&lt;br /&gt;      proxy._certificate_public_key_sha256 = [cert.publicKeySha256];&lt;br /&gt;    }&lt;br /&gt;&lt;br /&gt;    if (cert.fingerprint) {&lt;br /&gt;      console.log(&lt;br /&gt;        `[&lt;mark class=&quot;highlight&quot;&gt;证书&lt;/mark&gt;] LOG: [${&lt;a href=&quot;http://proxy.name/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;proxy.name&quot;&gt;proxy.name&lt;/a&gt;}] fingerprint=${cert.fingerprint}, public_key_sha256=${cert.publicKeySha256}`&lt;br /&gt;      );&lt;br /&gt;    } else {&lt;br /&gt;      console.log(`[&lt;mark class=&quot;highlight&quot;&gt;证书&lt;/mark&gt;] WARN: [${&lt;a href=&quot;http://proxy.name/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;proxy.name&quot;&gt;proxy.name&lt;/a&gt;}] 获取证书失败`);&lt;br /&gt;    }&lt;br /&gt;  }&lt;br /&gt;&lt;br /&gt;  console.log(`[&lt;mark class=&quot;highlight&quot;&gt;证书&lt;/mark&gt;] INFO: 全部节点处理完成`);&lt;br /&gt;&lt;br /&gt;  return proxies;&lt;br /&gt;}&lt;/div&gt;
      &lt;label for=&quot;expand-1-0&quot; class=&quot;tg-expandable__toggle&quot;&gt;&lt;span class=&quot;sr-only&quot;&gt;Toggle hidden content&lt;/span&gt;&lt;/label&gt;
    &lt;/div&gt;&lt;br /&gt;&lt;br /&gt;相关: &lt;u&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5296369303661067030.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;/u&gt;&lt;a href=&quot;https://t.me/zhetengsha/1433&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;自建节点证书相关说明&quot;&gt;自建节点证书相关说明&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/154&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;服务器合集&quot;&gt;服务器合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/214&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Sub-Store 合集&quot;&gt;Sub-Store 合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327880277607583303.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;合集&quot;&gt;合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327792445526380187.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/957&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;恰饭推荐&quot;&gt;恰饭推荐&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6021860481923288796.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha_group&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;群组&quot;&gt;群组&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6330367862535884142.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;a href=&quot;https://t.me/xream_bot&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;联系推广&quot;&gt;联系推广&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327836885552991740.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;/search/result?q=%23%E8%8A%82%E7%82%B9&quot; title=&quot;#节点&quot;&gt;#节点&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E8%AF%81%E4%B9%A6&quot; title=&quot;#证书&quot;&gt;#证书&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23SNI&quot; title=&quot;#SNI&quot;&gt;#SNI&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23TLS&quot; title=&quot;#TLS&quot;&gt;#TLS&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23SHA256&quot; title=&quot;#SHA256&quot;&gt;#SHA256&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23%E6%8C%87%E7%BA%B9&quot; title=&quot;#指纹&quot;&gt;#指纹&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23SSL&quot; title=&quot;#SSL&quot;&gt;#SSL&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23sing&quot; title=&quot;#sing&quot;&gt;#sing&lt;/a&gt;-box &lt;a href=&quot;/search/result?q=%23mihomo&quot; title=&quot;#mihomo&quot;&gt;#mihomo&lt;/a&gt; &lt;a href=&quot;/search/result?q=%23surge&quot; title=&quot;#surge&quot;&gt;#surge&lt;/a&gt;</content:encoded></item><item><title>自建节点证书相关说明抛砖引玉 留个备忘▎服务端验证客户端 SNI, 几个例子:Trojan-Go : verify_hostname 表示服务端是否校验客户端提供的SNI与服务端设置的一致性 文档Xray : rejectUnknownSni 服务端接收到的 SNI 与证书域名不匹配即拒绝 TLS 握手 文档sing-box: 问了下薄荷佬, 官版没有，fork 有  fork 有▎客户端验证服务端证书, 几个例子: Stash : server-cert-fingerprint TLS 握手时验证服务器证书 SHA256 指纹 文档 Surge:  server-cert-fingerprint-sha256 文档skip-cert-verify=true :Surge will not verify the server&apos;s certificate.sni=off :turn off SNI completely mihomo: sni 为 IP 时, 也不发 sni▎覆盖用于验证证书的域名，但不会改变 SNI免流等场景下, SNI 改为混淆, 不关验证, 仍然验证证书的域名 Xray: verifyPeerCertByName, URI 上叫 vcn mihomo: name-cert-verify Surge: server-cert-verify-name sing-box(风佬版) certificate_server_name QX tls-verification Sub-Store 中(mihomo/Surge/QX)可按上述输入写字段, 或使用脚本操作 $server[&apos;name-cert-verify&apos;] = &apos;b.com&apos;▎备忘1. 在当前目录生成 10 年的 bing.com 自签证书:openssl req -x509 -nodes -newkey ec:&lt;(openssl ecparam -name prime256v1) -keyout private.key -out certificate.pem -subj &quot;/CN=bing.com&quot; -days 365002. 获取服务器证书 SHA256 指纹:openssl x509 -noout -fingerprint -sha256 -inform pem -in certificate.pem对于远程服务器 openssl s_client -connect foo.com:443 -servername foo.com &lt;/dev/null 2&gt;/dev/null | openssl x509 -noout -fingerprint -sha256 | cut -d= -f2▎如果想自动从服务端读取并设置 Sub-Store 自动设置服务端证书 SHA-256 指纹▎手动设置Sub-Store 中直接在输入里写对应的字段, 或使用脚本操作设置内部字段 tls-fingerprint 可自动转其他客户端, 但是 sing-box 的不一样, 没法直接转, 所以开放了字段让你自己设例如使用单行 JSON 的方式, 把俩字段都写上:{ &quot;name&quot;: &quot;节点名&quot;, &quot;type&quot;: &quot;anytls&quot;, &quot;server&quot;: &quot;服务器&quot;, &quot;port&quot;: 443, &quot;password&quot;: &quot;xYbpwdF9vIELWoLmdC&quot;, &quot;udp&quot;: true, &quot;sni&quot;: &quot;a.foo.com&quot;, &quot;fingerprint&quot;: &quot;SHA256 指纹&quot;, &quot;_certificate_public_key_sha256&quot;: [ &quot;SHA-256 哈希&quot; ] }  sing-box 中的 certificate_public_key_sha256 ，使用以下命令生成openssl x509 -in certificate.pem -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64对于远程服务器 echo | openssl s_client -servername foo.com -connect foo.com:443 2&gt;/dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64 Sub-Store 中需要使用脚本操作 $server._certificate_public_key_sha256 = [ &quot;428F7quaQJvBhEr5TclcjPpsl1ryyNQo7oLBGhhC3UU=&quot; ]参考 Lucy 整理好的 服务器合集   Sub-Store 合集   合集   恰饭推荐   群组 联系推广 #VPS #服务器 #节点 #自建 #证书 #SNI #hostname #TLS #SHA256 #自签 #指纹 #SSL</title><link>http://telegram.zhetengsha.eu.org/posts/1433</link><guid isPermaLink="true">http://telegram.zhetengsha.eu.org/posts/1433</guid><pubDate>Tue, 21 May 2024 03:21:45 GMT</pubDate><content:encoded>&lt;u&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5296369303661067030.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;/u&gt;&lt;u&gt;自建节点证书相关说明&lt;/u&gt;&lt;br /&gt;&lt;br /&gt;抛砖引玉 留个备忘&lt;br /&gt;&lt;br /&gt;▎服务端&lt;br /&gt;&lt;br /&gt;验证客户端 SNI, 几个例子:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;Trojan-Go&lt;/code&gt; : &lt;code&gt;verify_hostname&lt;/code&gt; 表示服务端是否校验客户端提供的SNI与服务端设置的一致性 &lt;a href=&quot;https://p4gefau1t.github.io/trojan-go/basic/full-config&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;文档&quot;&gt;文档&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;Xray&lt;/code&gt; : &lt;code&gt;rejectUnknownSni&lt;/code&gt; 服务端接收到的 SNI 与证书域名不匹配即拒绝 TLS 握手 &lt;a href=&quot;https://xtls.github.io/config/transport.html#tlsobject&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;文档&quot;&gt;文档&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sing-box&lt;/code&gt;: 问了下薄荷佬, 官版没有，&lt;a href=&quot;https://github.com/xchacha20-poly1305/sing-box/commit/d371c230b63a6f7ee4e46a791ba6624c7f64e7f5&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;fork 有&quot;&gt;&lt;s&gt;fork 有&lt;/s&gt;&lt;/a&gt;  &lt;a href=&quot;https://github.com/reF1nd/sing-box/tree/reF1nd-testing#inbound-tls&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;fork 有&quot;&gt;fork 有&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;▎客户端&lt;br /&gt;&lt;br /&gt;验证服务端证书, 几个例子:&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4961275946637197948.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Stash : &lt;code&gt;server-cert-fingerprint&lt;/code&gt; TLS 握手时验证服务器证书 SHA256 指纹 &lt;a href=&quot;https://stash.wiki/proxy-protocols/proxy-types.zh&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;文档&quot;&gt;文档&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4961174074307904393.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Surge:  &lt;code&gt;server-cert-fingerprint-sha256&lt;/code&gt; &lt;a href=&quot;https://manual.nssurge.com/policy/proxy.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;文档&quot;&gt;文档&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;skip-cert-verify=true&lt;/code&gt; :&lt;br /&gt;&lt;blockquote&gt;Surge will not verify the server&apos;s certificate.&lt;/blockquote&gt;&lt;br /&gt;&lt;code&gt;sni=off&lt;/code&gt; :&lt;br /&gt;&lt;blockquote&gt;turn off SNI completely&lt;/blockquote&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960853905970823886.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; mihomo: &lt;code&gt;sni&lt;/code&gt; 为 IP 时, 也不发 &lt;code&gt;sni&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;▎&lt;b&gt;覆盖用于验证证书的域名&lt;/b&gt;，但&lt;b&gt;不会改变 SNI&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;免流等场景下, SNI 改为混淆, 不关验证, 仍然&lt;b&gt;验证证书的域名&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5170221875044811472.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Xray: &lt;code&gt;verifyPeerCertByName&lt;/code&gt;, URI 上叫 &lt;code&gt;vcn&lt;/code&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960853905970823886.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; mihomo: &lt;a href=&quot;https://github.com/MetaCubeX/mihomo/commit/5677fd38088efc9cc3abe7ed54fefeeb1bea0ac4#diff-06e23ea20a066a0e717b5eaa625dfd3f1d11439f4ad5bd705d16d6e1758b39c0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;name-cert-verify&quot;&gt;name-cert-verify&lt;/a&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4961174074307904393.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Surge: &lt;a href=&quot;https://t.me/SurgeTestFlight/1663&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;server-cert-verify-name&quot;&gt;server-cert-verify-name&lt;/a&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5154930575995306994.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; sing-box(风佬版) &lt;a href=&quot;https://t.me/sing_box_reF1nd/3851&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;certificate_server_name&quot;&gt;certificate_server_name&lt;/a&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4961270096891740895.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; QX &lt;a href=&quot;https://t.me/QuanXNews/415&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;tls-verification&quot;&gt;tls-verification&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960754541902430862.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Sub-Store 中(mihomo/Surge/QX)可按上述输入写字段, 或使用脚本操作 &lt;code&gt;$server[&apos;name-cert-verify&apos;] = &apos;b.com&apos;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;▎备忘&lt;br /&gt;&lt;br /&gt;1. 在当前目录生成 10 年的 &lt;code&gt;bing.com&lt;/code&gt; 自签证书:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;openssl req -x509 -nodes -newkey ec:&amp;lt;(openssl ecparam -name prime256v1) -keyout private.key -out certificate.pem -subj &quot;/CN=bing.com&quot; -days 36500&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;2. 获取服务器证书 SHA256 指纹:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;openssl x509 -noout -fingerprint -sha256 -inform pem -in certificate.pem&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;对于远程服务器 &lt;code&gt;openssl s_client -connect foo.com:443 -servername foo.com &amp;lt;/dev/null 2&amp;gt;/dev/null | openssl x509 -noout -fingerprint -sha256 | cut -d= -f2&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;▎如果想自动从服务端读取并设置&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960754541902430862.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/1434&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Sub-Store 自动设置服务端证书 SHA-256 指纹&quot;&gt;Sub-Store 自动设置服务端证书 SHA-256 指纹&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;▎手动设置&lt;br /&gt;&lt;br /&gt;Sub-Store 中直接在输入里写对应的字段, 或使用脚本操作设置内部字段 &lt;code&gt;tls-fingerprint&lt;/code&gt; 可自动转其他客户端, 但是 sing-box 的不一样, 没法直接转, 所以开放了字段让你自己设&lt;br /&gt;&lt;br /&gt;例如使用单行 JSON 的方式, 把俩字段都写上:&lt;br /&gt;&lt;pre class=&quot;code&quot;&gt;&lt;code class=&quot;language-javascript&quot;&gt;&lt;span class=&quot;token punctuation&quot;&gt;{&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;name&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;节点名&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;type&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;anytls&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;server&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;服务器&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;port&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token number&quot;&gt;443&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;password&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;xYbpwdF9vIELWoLmdC&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;udp&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token boolean&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;sni&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;a.foo.com&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;fingerprint&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;SHA256 指纹&quot;&lt;/span&gt;&lt;span class=&quot;token punctuation&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;token string-property property&quot;&gt;&quot;_certificate_public_key_sha256&quot;&lt;/span&gt;&lt;span class=&quot;token operator&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;[&lt;/span&gt; &lt;span class=&quot;token string&quot;&gt;&quot;SHA-256 哈希&quot;&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;]&lt;/span&gt; &lt;span class=&quot;token punctuation&quot;&gt;}&lt;/span&gt; &lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/5154930575995306994.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; sing-box 中的 &lt;a href=&quot;https://sing-box.sagernet.org/zh/configuration/shared/tls/#certificate_public_key_sha256&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;certificate_public_key_sha256&quot;&gt;certificate_public_key_sha256&lt;/a&gt; ，使用以下命令生成&lt;br /&gt;&lt;code&gt;openssl x509 -in certificate.pem -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;对于远程服务器 &lt;code&gt;echo | openssl s_client -servername foo.com -connect foo.com:443 2&amp;gt;/dev/null | openssl x509 -pubkey -noout | openssl pkey -pubin -outform der | openssl dgst -sha256 -binary | openssl enc -base64&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/4960754541902430862.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; Sub-Store 中需要使用脚本操作 &lt;code&gt;$server._certificate_public_key_sha256 = [ &quot;428F7quaQJvBhEr5TclcjPpsl1ryyNQo7oLBGhhC3UU=&quot; ]&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;https://t.me/LUCYChannel_1024/4858&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;参考 Lucy 整理好的&quot;&gt;参考 Lucy 整理好的&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/154&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;服务器合集&quot;&gt;服务器合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327711622831803904.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/214&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;Sub-Store 合集&quot;&gt;Sub-Store 合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327880277607583303.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;合集&quot;&gt;合集&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327792445526380187.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/957&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;恰饭推荐&quot;&gt;恰饭推荐&lt;/a&gt;  &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6021860481923288796.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha_group&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;群组&quot;&gt;群组&lt;/a&gt; &lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6330367862535884142.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt;&lt;a href=&quot;https://t.me/xream_bot&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;联系推广&quot;&gt;联系推广&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;img class=&quot;tg-emoji&quot; src=&quot;/static/https://telegram.me/i/emoji/6327836885552991740.webp&quot; alt=&quot;&quot; loading=&quot;lazy&quot; width=&quot;20&quot; height=&quot;20&quot; /&gt; &lt;a href=&quot;https://t.me/zhetengsha/1354&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot; title=&quot;#VPS #服务器 #节点 #自建 #证书 #SNI #hostname #TLS #SHA256 #自签 #指纹 #SSL&quot;&gt;#VPS #服务器 #节点 #自建 #证书 #SNI #hostname #TLS #SHA256 #自签 #指纹 #SSL&lt;/a&gt;</content:encoded></item></channel></rss>