Skip to content

About

全图形 Windows/Android VPS 节点部署、维护、排障与恢复工具;隐私优先、失败关闭、幂等升级。

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Latest commit

 

History

97 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ProxyNodeAssistant v1.0.0

面向 Windows、macOS/Linux CLI 与 Android 的本地优先 VPS 节点部署、维护、排障与恢复工具。

发行包同时包含 macOS/Linux 无 GUI CLI;它与 Windows/Android 复用同一远端工具包和施工语义,运行主机需自行提供系统 OpenSSH。

本仓库的 v1.0.0 是“重置线”:以稳定的 v0.9.0 为代码基线重新迭代,不继承旧实验版 v1.0.0 的设备准入、controller、邀请、租约、网盘或本机 admin/恢复门禁。版本号相同,但内部构建修订更高,菜单 [1] 能识别并安全替换旧实验构建;登录只使用普通 SSH 密码或长期 key。

完整使用说明书 · 从零部署教程 · 更新说明 · Android 手册 · 构建说明 · MIT License

架构

ProxyNodeAssistant 架构:macOS 与 Windows 界面通过 --gui-action 调用 Go 核心,核心经 OpenSSH 上传运维工具包;Android 用内置 SSH 直连;工具包在 VPS 上安装并验证 3x-ui + Xray(Reality)与 Nginx(XHTTP),Cloudflare CDN 可选回源到 Nginx;macOS 的菜单 14 管理系统代理

可交互版本(引导视图、深浅色、导出):下载 docs/diagrams/proxynodeassistant-architecture.html 用浏览器打开;图的源文件是同目录的 proxynodeassistant-architecture.json。图由 Archify 生成。

重置后的产品边界

ProxyNodeAssistant 只做一件事:在本人拥有或获得明确授权的 VPS 上,以可审计、可回滚、失败即停的方式管理节点。

重置线彻底取消:

  • 设备准入、controller/member 角色、邀请、租约、围栏和“受信设备才能管理”的门限;
  • 私人网盘、Copyparty、普通网盘账户、远端凭证托管和相关界面;
  • 任何依赖上述功能的菜单、灰色占位按钮、服务或成功判定。

仍然保留:

  • 每一项远端操作都会载入最近的非敏感目标供确认/修改,并明确选择“临时密码”或“节点长期 SSH key”(存在匹配 key 时才默认选中);
  • 3x-ui、Xray、Nginx、证书、Reality、Cloudflare/XHTTP、WARP、备份、诊断、修复、流量估算和基线恢复;
  • Windows 原生 WPF 单 EXE 与 Android 原生客户端;
  • 15 套本地伪装模板、中英双语、历史 VPS 快速选择和 SSH key 归档/恢复;
  • 完整凭据交接单(VPS、面板、Reality、SS2022 与 CDN/XHTTP 链接)经校验后显示/复制。

SSH key 只是这台电脑/手机登录某台 VPS 的凭据,不再被包装成设备身份系统;本机没有额外 admin、恢复包或 UI 门禁。

设计原则

  • 唯一施工入口:只有菜单 [1] 可以上传、安装或升级远端工具包。其他菜单不会暗中重装。
  • 选择必须明确:线路、模板、性能和 WARP 均不接受空回车代替决定。
  • 先预览,后上传:完整计划通过校验后显示;只有精确输入大写 APPLY 才开始上传和修改。
  • 失败关闭:任一步失败,立即停止;不复制空交接单、不清理备份、不打开面板。
  • 事务切路:橙云/XHTTP 先暂存、外部验证、真实客户端验货,全部通过后才提交;失败自动回滚。
  • 隐私优先:发行包不内置真实 VPS、域名、邮箱、账户、密码、Token 或私钥。域名和证书邮箱每次施工由本人手填。

线路模式

菜单 [1] 会先只读识别现有节点,再要求明确选择:

输入 中文名称 English 适用条件 结果
0 保持现有线路 Keep 仅已有节点显示 不拆、不换现有线路;只做选定的维护/升级
1 仅灰云直连 Gray/direct 新机与已有节点 DNS only 域名 + Reality,链路短、性能高
2 仅橙云 CDN Orange/CDN 新机与已有节点 Cloudflare + TLS + XHTTP 8443,隐藏源站且链路更复杂
3 双路 Dual 新机与已有节点 同时保留灰云 Reality 与橙云 XHTTP,便于故障切换

双路必须使用两个不同的主机名。灰云和橙云的域名、证书邮箱分别输入,不能沿用包内值,也不会写入偏好设置。

统一自定义计划

Windows 命令行与 WPF 前端由同一个 Go InstallPlan、同一套校验器和同一份预览驱动。Android 构建与其字段一一对应的安装计划,并沿用相同的线路、模板、性能、端口、APPLY 与失败关闭语义;平台特有限制见下文:

项目 可选值 说明
线路 keep / gray / orange / dual keep 仅已有节点可用
伪装站 保留、R 随机、A 按域名稳定、1—15 指定 新机不能选保留
性能 保留、自动、低配、标准、高配 保留仅已有节点有意义
WARP 保持现状、确保开启 不会因空输入被静默开启
备份 变更前强制备份 v1.0.0 不允许关闭
收尾 成功后可选整理备份、可选打开面板 只有全链路成功才执行
端口组 443 / 24443 / 8443 / 40000 作为一个经过联调的整体固定,不开放零散自由输入

端口依次对应 Reality 正式端口、Reality 真机验货端口、Cloudflare/XHTTP 边缘与受限源站端口、WARP 本地回环端口。

菜单 [1] 的安全顺序

  1. 载入最近 VPS 或从历史中选择/手填目标,确认并可修改 SSH 用户、端口,再明确选择 SSH 认证方式;
  2. 只读识别远端工具包、内部构建和现有 x-ui 节点;
  3. 收集线路、域名/邮箱、模板、性能、WARP 与收尾选择;
  4. 本地校验并显示遮罩邮箱的完整预览;
  5. 精确输入 APPLY;未确认时不上传任何东西;
  6. 现有节点先创建备份,再按需安装/升级工具包;
  7. 使用随机文件名、root-only、0600 的单次输入文件施工,用后删除;
  8. Reality 24443 与 CDN/XHTTP 8443 均要求真实客户端导入并实际浏览;
  9. 验货成功后才提交正式拓扑、输出交接单、整理备份或打开面板。

不要为了继续而虚假确认。真机不通就拒绝,之后运行菜单 [3] 诊断。

两种 SSH 登录方式

模式 典型场景 安全行为
临时密码 新机、借用电脑、一次维护 密码只交给 SSH 认证;一次性 key 在操作结束时撤销并清理
节点长期 key 自己的固定设备 按 VPS + SSH 用户 独立保存;先实测新 key,再切换或撤旧 key

标准远端表单会自动载入最近目标(主机/IP、SSH 用户、端口)供确认和修改,不会自动开始操作;没有历史时保持空白。绑定一台 VPS 不会把软件锁死在该 VPS,认证方式仍需本次明确选择(仅在存在对应受保护长期 key 时默认选中)。密码不写日志、不进历史、不回写 EXE/APK。

功能概览

编号 功能 关键语义
1 安装 / 升级 / 自适应优化 唯一上传与施工入口;显式计划、预览、APPLY
2 打开 3x-ui 只经本机 127.0.0.1 SSH 隧道
3 / 4 诊断 / 安全修复 结构化诊断;修复前备份
5 / 6 / 7 VPS 密码、面板身份、交接单 [5] / [6] 均可选随机、自定义或取消;真凭据经完整性验证后才显示/复制
8 切换 15 套伪装站 随机、稳定或指定编号
9 / 10 / 15 灾备、紧急报告、整理备份 报告发出前需脱敏;清理只碰已知受管备份
11 / K 绑定、轮换、归档、恢复 SSH key 新钥验证成功后再处理旧钥
12 / 14 剪贴板、本地 10808 代理(macOS 为系统级) 纯本地操作;macOS [14] 保存/恢复 HTTP、HTTPS、SOCKS、PAC/WPAD 原系统设置,并探测 HTTP/SOCKS 协议与第三方 TUN;仅需管理员授权,不登录 VPS
13 卸载远端工具包 保留节点、配置、证书、凭据和备份
16 / 17 / T 性能、流量估算、服务商流量 可回滚性能档;vnStat 不冒充厂商账单
18 全量拆除并恢复基线 高风险;先下载并校验救援包,保留 SSH 救援通道

菜单 [5] 轮换 VPS 登录密码,菜单 [6] 轮换 3x-ui 账号/密码。两项都会先显示策略:1 随机生成、2 自定义、0 取消;自定义秘密使用遮罩输入并二次确认,只通过本次 SSH 的 root-only 0600 一次性文件传给远端,成功、失败或取消都会清理,不写入设置、命令行或普通日志。取消不会修改 VPS。

在 macOS 原生 GUI 或 Darwin CLI 中,菜单 [14] 管理 macOS 系统级 HTTP、HTTPS 和 SOCKS 代理,固定目标为 127.0.0.1:10808,并关闭 PAC/WPAD 自动接管。配置前会保存当前每个可用网络服务的完整代理设置;撤销或恢复前会确认当前设置仍由本工具接管,再按快照还原。状态页还会做 HTTP CONNECT/SOCKS5 协议探针、显示监听 PID,并只读提示 utun* 和疑似第三方 TUN 进程。v2rayN、sing-box、Clash 等外部 TUN/10808 后端不属于本工具所有权,本工具不会安装、停止或删除它们;无本工具快照时也不会伪造恢复点。修改系统网络设置时只请求 macOS 的管理员授权,不读取 VPS 地址、SSH 用户或密码,也不会建立 SSH 连接;它不设置 HTTP_PROXY、HTTPS_PROXY 或其他 shell 环境变量。

完整二级菜单、输入词和失败分支见完整使用说明书。

从 v0.9.0 或旧实验版 v1.0.0 升级

  • v0.9.0 或更旧:菜单 [1] 识别旧版、先备份、升级工具包并按新计划收敛;
  • 旧实验版 v1.0.0:可见版本相同,但内部 revision 低于重置线;菜单 [1] 会执行受控替换并退役其设备门限、网盘和本机 admin/恢复组件;
  • 与当前 EXE/APK 完全同构建:禁止重复上传和 bootstrap;
  • 远端内部 revision 更新:拒绝降级,提示更换更新的客户端。

退役旧实验功能时,会停止并移除受管服务与程序;旧实验遗留文件只作为未接管的原地数据留存,不会重新挂载或提供文件浏览入口。

卸载与拆除不是一回事

  • [13] 卸载远端内嵌包:只移除管理工具和维护入口,节点仍工作;以后用 [1] 重新安装管理工具。
  • [18] 全量拆除并恢复原始基线:先下载 SHA-256 校验通过的完整救援包,再移除本工具管理的节点栈、网站、证书、WARP、性能与远端工具;SSH 配置、当前登录 key、22 端口和共享系统基础包保留。

平台差异

  • Windows:使用系统 OpenSSH;缺失时只尝试一次安装并验证,不进入循环。可配置本地环境变量、使用 Windows Credential Manager 保存经同意的服务商 API 密钥,并生成 Windows 救援下载。
  • Android:原生 Kotlin/Compose 客户端,使用应用内 SSH/SCP;密钥由 Android Keystore 保护,报告通过系统文件选择器导出。没有 Windows 环境变量或 Credential Manager。移动网络等待人工验货时会使用保活,但切网仍可能需要重连。

两端嵌入同一远端工具包、报告同一内部构建身份,并使用同一组线路、模板、性能、端口与失败关闭语义。平台输入约束仍以界面为准:当前 Android 对全新节点只接受 WARP=确保开启,已有节点才提供 保持现状;Windows 会明确提供两项并要求选择。

macOS 原生 GUI、两台 VPS 与凭据交接

macOS 的正式桌面入口是原生 SwiftUI 应用包 ProxyNodeAssistant-v1.0.0-macos-gui-user.pkg。它安装到当前用户的 ~/Applications/ProxyNodeAssistant.app,不会写入 /Applications 或 /usr/local/bin,也不需要管理员权限:

installer -pkg ProxyNodeAssistant-v1.0.0-macos-gui-user.pkg \
  -target CurrentUserHomeDirectory
open ~/Applications/ProxyNodeAssistant.app

应用中的长期 SSH key 按“VPS 主机 + SSH 用户”独立管理,所以两台 VPS 可以分别绑定不同的 key;新增、查看、归档、恢复和解绑不会把一台主机的 key 误用于另一台。[12] 清空剪贴板和 [14] macOS 系统级 10808 代理只在本机执行,不会要求登录 VPS。[14] 配置前保存当前 HTTP/HTTPS/SOCKS、旁路、PAC/WPAD 系统代理,撤销或恢复会还原这份设置;macOS 可能弹出一次管理员授权提示,授权范围只限本机系统网络设置。

在任一目标上运行 [7] 显示当前凭据交接单 时,CLI 会先用当前 SSH 会话校验完整的 VPS/面板登录凭据,再把完整交接单通过 macOS pbcopy 写入系统剪贴板,并用 pbpaste 做字节级回读;回读不一致会明确失败,不会伪报“已复制”。运行日志只保留“已复制”和安全的文件路径提示,不显示密码、私钥或令牌。原生 GUI 会显示“保存好以后按 Enter”和“是否清空含秘密的剪贴板”的明确提示;需要粘贴时选择 N 保留内容,粘贴完成后可运行 [12] 清空,若一直无人操作则由安全超时自动清理。发行前验收必须分别对每台 VPS 做一次 [7],确认剪贴板非空、包含 REQUIRED LOGIN CREDENTIALS 及四个账号/密码字段,然后立即清空剪贴板。

应用设置中的“卸载应用”会清理当前用户的应用、缓存、日志、偏好和安装收据;如果 [14] 曾保存系统代理快照,会先恢复原设置再清理。它不会触碰 VPS 上的节点配置,也不会删除仍由用户管理的 SSH key。

支持范围与构建

  • Windows 10/11:x64、x86、ARM64;
  • Android 7.0 及以上:universal APK;
  • VPS:Ubuntu / Debian,独立公网 IPv4,root 或可 sudo 账户;
  • 推荐:KVM、1 GB 以上内存、10 GB 以上磁盘、可用的服务商 Console/VNC 救援入口。

源码构建见 BUILD.md 和 ANDROID.md。发布前必须扫描源码、EXE/APK、内嵌 tar 及说明文档,确认没有真实部署数据或私钥。

特别鸣谢

  • Archify(tt-a1i,MIT):上面的架构图用它生成,并通过了它的布局校验和视觉检查。Archify 只用于文档,不是本工具的组成部分;许可证见 ThirdPartyLicenses/Archify/LICENSE。

使用声明

本项目仅用于管理本人拥有或已获明确授权的服务器。使用者应遵守当地法律、VPS/域名/CDN 服务条款和网络服务规则。

About

全图形 Windows/Android VPS 节点部署、维护、排障与恢复工具;隐私优先、失败关闭、幂等升级。

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages