🏗️ 自建节点与部署

自建纯中继(Relay VPS)部署手册

自建专属公网中继节点,支持公共共享与私有独享双轨隔离、私有优先智能调度及全自动容灾回退。

核心定位:当组网设备处于对称型 NAT4 等极端网络环境下,UDP 穿透打洞失败时,系统将无缝切入中继转发(Relay)。用户可在拥有大带宽公网 IP 的云服务器上搭建专属中继节点,彻底解决跨国延迟高、公网打洞成功率低和速度受限的问题。

一、 公共中继与私有专属中继(租户隔离模型)

Yeeid 采用底层原生 Scope 作用域 与 Owner 租户隔离 机制,兼顾平台普惠互助与团队私密独享:

中继类型 归属机制 (Scope / Owner) 可见性与调度权限 典型适用场景
私有专属中继
(Private Relay)
Scope: private
自动绑定当前注册邮箱(Owner: your_account)
仅本人账号名下设备可见并可调度。
其他注册用户严格不可见、不可连接。控制端拒绝为非授权账号签发 HMAC 票据,杜绝蹭网与流量偷跑。
个人独享大带宽、企业/工作室高敏感数据转发、自建跨国优化 VPS。
公共公共中继
(Public Relay)
Scope: public
无属主(Owner 为空或系统预设)
全平台所有注册用户均可见并可共享。
全体组网用户自由接入。
官方公益中继、社区共享节点、通用兜底容灾出口。
💡 私有优先智能调度机制(Private-First Scheduling)

当客户端(电脑、手机、软路由)发起中继转发时,底层算法自动执行阶梯调度:

  1. 第一优先级(直连私有专属中继):如果发起者账号名下搭建了自建中继,系统优先为客户端分配该私有中继,确保大文件互传与内网串流跑满用户自购的专属带宽;
  2. 第二优先级(无感回退公共中继):若自建私有中继由于服务器维护或网络故障离线,客户端将全自动秒级回退至公共中继进行容灾兜底,业务无感、永不中断。

二、 防火墙与网络端口放行

在云服务器提供商后台(如腾讯云、阿里云安全组、AWS Security Group)中,需放行以下端口:

  • UDP 20000 / 21000(必须放行):核心数据流传输、P2P 打洞辅助与中继转发专用端口;
  • TCP 16699(可选):内嵌 Web 管理控制台。若需远程查看中继状态,需放行此端口,并务必配置安全访问密码;
  • 配置建议:中继仅负责加密流量线速转发,单核 1G 内存的轻量 VPS 即可轻松跑满 100M~1000M 转发吞吐。

三、 快速部署实操(Linux 单文件 CLI)

登录云服务器,执行以下步骤即可快速部署:

# 1. 下载 Yeeid Linux 64位核心程序并赋予可执行权限
sudo curl -Lo /usr/local/bin/yeeid https://yeeid.com/downloads/Yeeid_linux_amd64
sudo chmod +x /usr/local/bin/yeeid
sudo ln -sf /usr/local/bin/yeeid /usr/local/bin/hubvpn

# 2. 安全免密配置:将个人注册账号密码写入 0600 权限文件(避免密码暴露在历史命令与进程树)
sudo mkdir -p /etc/hubvpn && sudo chmod 0700 /etc/hubvpn
echo -n "你的官网注册登录密码" | sudo tee /etc/hubvpn/password >/dev/null
sudo chmod 0600 /etc/hubvpn/password

# 3. 命令行快速启动中继测试(普通用户自建将自动识别为仅本人独享的私有专属中继)
export HUBVPN_PASSWORD_FILE=/etc/hubvpn/password
/usr/local/bin/yeeid -cli -mode relay_server -server yeeid.com -u your_email@domain.com -tag my-custom-relay

四、 注册为 systemd 系统守护服务(推荐生产运行)

为保障中继 VPS 开机自启、崩溃秒级自愈与后台平稳运行,推荐编写 systemd 服务单元:

# 1. 创建服务文件
sudo tee /etc/systemd/system/yeeid-relay.service << 'EOF'
[Unit]
Description=Yeeid Dedicated Relay Server
After=network.target

[Service]
Type=simple
Environment=HUBVPN_PASSWORD_FILE=/etc/hubvpn/password
ExecStart=/usr/local/bin/yeeid -cli -mode relay_server -server yeeid.com -u your_email@domain.com -tag my-custom-relay
Restart=always
RestartSec=5
LimitNOFILE=65535

[Install]
WantedBy=multi-user.target
EOF

# 2. 加载配置并启动自启
sudo systemctl daemon-reload
sudo systemctl enable --now yeeid-relay.service

# 3. 查看运行状态与实时日志
sudo systemctl status yeeid-relay.service
sudo journalctl -u yeeid-relay.service -f

五、 Web 控制台可视化管理与权限边界

启动成功后,打开本地控制台(或登录账号进入中继管理面板):

  • 状态一览:在「中继节点」列表中将出现新上线的节点,并带有彩色作用域徽标(如 [私有: 你的账号]);
  • 权限隔离防越权(RBAC):
    • 普通注册用户只能在面板中看到公共节点以及本人名下的私有节点,他人自建的中继对您完全隐形;
    • 普通用户仅支持修改或删除自己名下的节点,系统严格拦截任何修改他人中继或导出公共配置的越权操作。

六、 客户端使用(零门槛全自动)

在所有需要组网互通的电脑(Windows / macOS)、手机(Android)或软路由(iStoreOS)上:

  1. 客户端登录同一个注册账号;
  2. 连接模式保持默认的 auto_relay(自动中继);
  3. 无需在客户端手动输入任何 VPS IP 或配置。客户端在检测到 P2P 直连受阻时,会自动无缝接入您刚刚自建的高速专属中继!
❓ 常见问题:为什么朋友登录他的账号看不到我搭建的中继?

这是原生多租户隔离的安全设计机制。私有中继的带宽和传输资源受密码学票据保护,仅授权给建立者的账号独享。如果您希望与同事或家庭成员共享自建中继,有两种推荐方式:

  • 推荐方式 1:组网成员使用相同的一个主账号登录客户端,所有设备均可自动调度该私有中继;
  • 方式 2:联系管理员将该中继节点的共享范围调整为「公共中继(public)」,即可全员共享。