自用节点管理方案

存档一下自己搭建代理并配置Clash配置(Mihomo内核)的过程。仅做参考,并不是特别完善的教程。
大致思路:先在一台机子上启动Sub-Store,前端开启CF Zero Trust。然后在每台代理机子装上3x-ui,设置只监听本地,同时启用Cloudflare Tunnel连接为每个3x-ui服务添加CNAME设置域名部署至公网,在每个域名(3x-ui面板)添加Zero Trust拦截非法服务。在每台生成vless + reality链接,端口设置为443,关闭订阅设置,把链接用单个订阅绑定到Sub-Store,创建组合订阅。在文件管理中实现分流规则,生成https链接,链接接入CF WAF,设置verify密钥,保护订阅文件安全。
Tunnel 仅用于面板 Web 访问;节点的 reality 入站仍是直连 VPS(DNS 记录需按 reality 的要求处理)。

Sub-Store 部署

安装Sub-Store(请先安装Docker)

curl -sSL https://sub-store-org.github.io/resource/ssm/install.sh | bash

启动前端和后端

# 后端,默认监听本机端口,不要添加 --private=false
ssm new -n ssm-backend -p 3000

# 前端
ssm new -i -n ssm-frontend -p 8080

# 查看 hash 前缀(这个要加到后端,即https://sub.example.com/<HASH>/)
ssm ls

然后反代绑定域名,将前端的域名加到CF Access Zero Trust中,设置策略,我设置的是两个邮箱发送一次性验证码。

代理机 3x-ui 部署

apt update && apt install -y curl
bash <(curl -Ls https://raw.githubusercontent.com/mhsanaei/3x-ui/master/install.sh)

面板设置 - 面板监听域名 - 127.0.0.1 (面板监听限制在本机)
订阅设置 - 关闭订阅服务 - 保存 - 重启面板
可以看到现在公网已经连不上了

代理机 CF Tunnel + Zero Trust 构建

打开 Cloudflare One (Access),网络 - 连接器 - 创建隧道 - 选择 Cloudflared,先在上面选你的系统环境(Debian or Ubuntu),然后复制上面一大块代码到你的 VPS 上,然后再复制左下角的,让机子每次启动时都能自动运行。

选项名称 填写内容 说明
子域 前缀
域 (Domain) 选择你的域名 在下拉菜单里选你绑定的主域名
路径 (Path) 留空 不填
服务 - 类型 (Type) HTTP 必须选 HTTP
服务 - URL 127.0.0.1:xxx 填你刚才设置的内网 IP 和端口

其他应用程序设置 - HTTP 设置 - HTTP 主机头 - 127.0.0.1(不填这个可能导致无法访问,后端可能按 Host/Header 做校验)。
Zero Trust 设置策略绑定刚刚配置的域名即可。

WAF 配置

添加这个配置是为了:假设你的订阅链接被无意或有意地泄露了,所有人都会看到你链接背后每台机子的 IP 和 UUID,为了稍微解决一下这个问题,可以在订阅链接后加个“暗号”,只有订阅链接后面带个 Token 的才可以允许访问,可以为不同朋友给不同token防止泄露。(虽然可能这个操作意义不大,安全性增加有限)

创建 WAF 自定义规则

  1. 登录 Cloudflare 主面板。
  2. 选择域名。
  3. 在左侧菜单,找到 安全性 - 安全规则 - 创建规则 - 自定义规则。
  4. 填写规则内容:
    • If…:

      • 字段: URI 路径
      • 运算符: 选择 contains
      • 值: 填 /xxxx/api/file/xxxx
    • And

      • 字段: URI 查询字符串
      • 运算符: 不包含
      • 值: 自己设定的暗号,例如verify=iloveidc
    • And(防止规则在前端写入的时候被拦截):

      • 字段: 请求方法
      • 运算符: 等于
      • 值: GET
    • 选择操作: 阻止

按实际的情况调整为更严格的匹配,避免误判

Clash 分流

参考 [教程 2.0] 草履虫也能学会的 Clash 配置:无DNS泄露、精确分流、链式代理
最简单的方案是把上面的配置文件下载下来让 AI 改写
猫猫的 Vless 订阅转换网站:订阅链接转换工具

108 个赞

感谢分享

6 个赞

收藏学习

6 个赞

感谢分享教程 :folded_hands:

5 个赞

我把所有节点都丢到火箭里……

3 个赞

学习了,非常感谢!

1 个赞

感谢分享教程! 学废了! :laughing:

4 个赞

感谢分享教程

1 个赞

感谢分享

2 个赞

这是完全把substore当做一个同步平台了吗 :tieba_025:

4 个赞

感谢分享

2 个赞

感谢分享

3 个赞

差不多,当订阅管理中枢用的 :innocent:

2 个赞

谢谢分享

3 个赞

谢谢佬的教程

1 个赞

收藏学习

1 个赞

想请教,如果挂cf防护,会不会增加链路延迟?
目前我在DMIT上做的3xu,cf只做了A解析ip,剩下没做。

1 个赞

很好很强大

1 个赞

学习一下

3 个赞

感谢分享教程

1 个赞