作为备用方案,可以在 VPS 上把 Argo 隧道配置好,并将其绑定到 x-ui 节点上。

平时不用它时,依然用原有的 VPS IP 直连;一旦哪天 IP 被ban了,只需在手机/电脑客户端上把节点的地址改成域名,就能一秒复活,继续上网。

以下是具体的配置和访问操作指南:


第一阶段:在 VPS 上配置 Argo 隧道与 x-ui

第一步:在 x-ui 中准备一个节点

  1. 登录 x-ui 面板,新建或选择一个现有的入站节点(Inbound)。
  2. 协议选择:强烈建议选择 VLESSVMess
  3. 传输配置(Network):必须选择 ws (WebSocket)grpc(因为 Cloudflare 隧道只支持这两种协议的流量伪装)。
  4. 记住端口:假设这个节点端口是 54321,路径(path)是 /myv2ray

第二步:在 Cloudflare 获取隧道 Token

  1. 登录 Cloudflare 控制台,进入 Zero Trust -> Networks -> Tunnels
  2. 点击 Create a Tunnel,选择 Cloudflared,给隧道起个名字(如 vps-backup)。
  3. 页面会显示一键安装命令,找到环境对应的 Linux 命令(通常是 AMD64),复制 sudo cloudflared service install ... 后面那串长长的 Token(密钥)

第三步:在 VPS 上安装并启动隧道

  1. 登录 VPS 终端(SSH)。

  2. 下载并安装 cloudflared 客户端:

     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    
    # 以 Linux AMD64 系统为例
    # Add cloudflare gpg key
    sudo mkdir -p --mode=0755 /usr/share/keyrings
    curl -fsSL https://pkg.cloudflare.com/cloudflare-main.gpg | sudo tee /usr/share/keyrings/cloudflare-main.gpg >/dev/null
    
    # Add this repo to your apt repositories
    echo 'deb [signed-by=/usr/share/keyrings/cloudflare-main.gpg] https://pkg.cloudflare.com/cloudflared any main' | sudo tee /etc/apt/sources.list.d/cloudflared.list
    
    # install cloudflared
    sudo apt-get update && sudo apt-get install cloudflared
    

    请谨慎使用此类代码。

  3. 将隧道作为系统服务安装并运行(替换下方命令中的 <Token>):

    1
    
    sudo cloudflared service install <Token>
    

    请谨慎使用此类代码。

  4. 此时回到 Cloudflare 网页后台,刷新一下,隧道状态应该会变成绿色的 HEALTHY

第四步:在网页后台配置域名映射(最关键)

在 Cloudflare 隧道配置的 Public Hostname 页面进行如下填写:

  • Subdomain:输入想用来救急的二级域名(例如 proxy)。
  • Domain:选择在 Cloudflare 托管的主域名(例如 yourdomain.com)。
  • Type:选择 HTTP(注意:虽然对外是 HTTPS 访问,但这里选 HTTP 即可,Cloudflare 会处理加密;如果节点开启了 TLS 也可以选 HTTPS 并忽略证书检查)。
  • URL:输入 127.0.0.1:54321(端口必须与第一步中 x-ui 节点的端口完全一致)。
  • 点击保存。

第二阶段:当 VPS 被墙时,如何切换和访问?

一旦发生紧急情况(VPS 直连失败),无需重新配置 VPS,只需要修改手机或电脑客户端(如 v2rayN, Clash, Shadowrocket)里的节点参数。

查看在 x-ui 里的原始节点配置

在 x-ui 面板点击“查看/复制”该节点的配置或分享 URL。它的结构通常长这样:

  • 地址 (Address): VPS 真实 IP
  • 端口 (Port): 54321
  • 传输协议: ws
  • 路径 (Path): /myv2ray

在客户端上修改参数(转换为 Argo 访问模式)

只需要把客户端中的节点参数手动修改为以下内容

  • 🌐 地址 (Address / Server):改成在隧道里绑定的域名,例如:://yourdomain.com
  • 🔌 端口 (Port)必须改成 443(因为流量现在先走 Cloudflare 的 HTTPS 443 端口)。
  • 🔒 TLS / 传输层加密必须开启(True / Enable)
  • 🏷️ SNI / 伪装域名:填入相同的域名:://yourdomain.com
  • 📁 传输协议与路径:保持原来的不变(如 ws/myv2ray)。

为什么这样就能成功访问?

修改后,当开启客户端上网时:

  1. 客户端会向 ://yourdomain.com(Cloudflare 的官方 CDN 节点)发起安全的 HTTPS(443 端口)连接。
  2. 防火墙只看到在访问一个托管在 Cloudflare 上的普通网站,无法察觉异常,因此予以放行。
  3. Cloudflare 收到请求后,通过内部的 Argo 隧道,把流量偷偷安全地送到 VPS 上的 54321 端口。
  4. VPS 上的 x-ui 收到流量并成功解析,就可以重新科学上网了。