Commit Graph
21 Commits
Author SHA1 Message Date
opsx eb3861bbe8 Fetch Feishu tenant identity from app credentials 2026-10-22 14:31:39 +08:00
opsx 0528bc4b9a Sync managed gateway routes on startup and fix layout initialization 2026-10-22 10:49:32 +08:00
opsx 5ef1cb48cf Clarify Feishu app setup and OpenVPN OIDC source 2026-10-22 10:12:06 +08:00
opsx 63cdda4ae1 Add opt-in built-in Feishu OIDC issuer for OpenVPN 2026-10-22 09:47:54 +08:00
opsx 6ca609fde4 Suggest configured HTTPS domain for OpenVPN OIDC entry 2026-10-22 09:00:11 +08:00
opsx 16955c3126 Redesign console navigation and settings tabs 2026-10-22 08:09:41 +08:00
opsx ea9c885a15 Show OpenVPN OIDC prerequisites and exposed management port 2026-10-22 08:03:08 +08:00
opsx 64f1d89a2f Record HTTPS gateway deployment and renewal verification 2026-10-22 06:54:16 +08:00
opsx cb28b235ef Add managed Nginx HTTP-01 gateway activation and certificate status 2026-10-22 01:08:14 +08:00
opsx 6a1bace3e9 Refresh tunnel actions promptly and clarify Feishu OIDC setup 2026-10-22 00:01:12 +08:00
opsx 41fb9d5631 Refine WireGuard client routing and authentication UI 2026-10-21 21:10:53 +08:00
opsx eabb3e4472 Add bundled WireGuard diagnostics and application proxy 2026-10-21 18:00:21 +08:00
opsx 6dd3c7dd45 feat(client): add authorized WireGuard device enrollment and desktop connection 2026-10-21 14:53:55 +08:00
opsx d2f1f5040e feat(tls): add optional nginx setup and gateway preview 2026-10-21 11:33:44 +08:00
opsx 9f743e19ad feat(client): replace placeholder connection data with live status 2026-10-21 11:32:41 +08:00
opsx 00f6c876cf feat(tls): manage ACME domain and add desktop client settings 2026-10-21 10:25:55 +08:00
opsx 003f755b37 feat(openvpn): suggest available OIDC ports and add deployment assets 2026-10-21 01:19:49 +08:00
opsx d6a9a92ad0 feat(openvpn): add OIDC browser authentication and setup guide 2026-10-20 23:31:46 +08:00
opsx 5107f134dd fix(openvpn): 依赖检测纳入 easy-rsa,避免「已就绪」却无法下发客户端配置
现象:装了 openvpn 但缺 easy-rsa 时,协议状态显示已就绪;创建 OpenVPN 隧道后
生成客户端配置报 open .../pki/ca.crt: no such file or directory。

原因:PKI 自动初始化要求 easyRSAPath() != "",缺 easy-rsa 时静默跳过;
而 binmgr.CheckBinary(openvpn) 只检测 openvpn 二进制,未校验 easy-rsa。

修复:
- binmgr 新增 easyRSAAvailable(),兼容 PATH 与 /usr/share/easy-rsa/*
- CheckBinary(openvpn) 在 easy-rsa 缺失时置 installed=false(前端即显示未就绪)
- README 依赖清单补 easy-rsa、xl2tpd

验证:隐藏 /usr/share/easy-rsa 后 /api/binaries/status 中 openvpn installed=false,
恢复后 true。
2026-10-20 21:48:05 +08:00
opsx a15786ea84 feat: 主机环境一键初始化(页面内装依赖 + 修转发/GRE)
- 新增 GET /api/system/env:主机环境体检
  * 运行权限 / IPv4 转发 / GRE 内核模块 / 包管理器 / 各协议依赖 / xl2tpd
  * 返回 failed/blocking/ready 汇总,供前端渲染与门控
- 新增 POST /api/system/fix:白名单修复动作
  * ip_forward:sysctl 开启 + 持久化到 /etc/sysctl.d/99-opsx-vpn.conf
  * gre_module:modprobe + 持久化到 /etc/modules-load.d/opsx-vpn.conf
  * install:<协议>:复用 binmgr.InstallViaPackageManager(apt/yum/dnf/apk/pacman)
  * tool:xl2tpd:L2TP 依赖补齐
  * 仅 admin 可调用;actions 与协议名均走白名单,绝不接受调用方传入命令串;全部写审计日志
- Dashboard:协议「安装命令」按钮改为「一键安装」(调 /binaries/install,含包管理器降级)
- Dashboard:主机前提警告条新增「一键修复」按钮(按缺失项逐项修复)
- i18n:中英文补齐 oneClickInstall / oneClickFix / fixSuccess / fixFailed / fixNeedRoot / fixNothing
2026-10-20 21:32:53 +08:00
opsx ef7eb378d2 feat: 新增 GRE 隧道协议,管理端口调整为 18080
- backend: 新增 GRE 隧道实现(ip tunnel 点对点互联),binmgr 支持 iproute2
- backend: api/identity 调整,各协议 service(gre/ikev2/ipsec/l2tp/openvpn)统一改动
- backend: OpenVPN 认证辅助与用户口令同步逻辑完善
- frontend: 协议图标/向导/编辑器支持 GRE,VPN 用户页重构(234 行)
- frontend: 新增 RouteListInput 路由列表输入组件,Dashboard/Layout 优化
- i18n: 中英文文案同步更新
- test: 新增 binmgr/common/gre 单测,openvpn 测试补充
- docs: README 补充 GRE 说明,默认监听端口 8080 → 18080
- chore: .gitignore 增加 opsx-vpn.previous(构建备份二进制)
2026-10-20 20:58:58 +08:00