部署用户门户
用户门户(freenet-user-portal)是 FreeNet 部署的面向消费者层。用户使用邮箱注册,系统自动在面板上开通 WireGuard 账号,并在 Web 控制台自助完成配置下载、二维码、用量与到期查询。
门户与面板完全解耦:仅通过面板管理 API(HMAC API key)和公开订阅链接通信,状态全部保存在自己的 Postgres 中,不触碰面板代码。面板升级不会影响门户。
用户 ──▶ 用户门户 :8082 ──▶ 控制面板 :48088 ──▶ WireGuard 节点 │ └──▶ freenet-sub-convert :8081 ──▶ /api/v1/sub/{token}两层身份,永不混淆:
- 门户用户 —— 真实的人:邮箱、密码、订单。
- 面板账号 —— WireGuard 服务实例:配额、到期、peers。
两者通过绑定表关联(user_id ↔ account_id 加上账号的订阅 token,静态加密存储)。门户只是一个代理:把用户意图翻译成面板 API 调用,门户用户从不直接接触面板。
配合 freenet-sub-convert 部署后,同一条订阅链接可以服务所有主流客户端:WireGuard、Clash / mihomo、sing-box 和 Surge。用户在门户中选择格式,或直接把链接粘贴进客户端由内容协商决定。