仓库
一个桌面代理管理工具,提供现代化的基于 Web 的管理界面,用于管理 HTTP/HTTPS 、WebSocket 和 Stream ( TCP/UDP )反向代理。
SSLProxyManager 基于 Tauri 2 + Rust,提供管理界面(前端:Vue 3 + Vite + Element Plus),用于配置与管理:
功能概览
HTTP/HTTPS 代理( rules/routes )
WebSocket 代理( ws_proxy )
Stream 代理( TCP/UDP ,stream )
访问控制
指标与监控
应用功能
技术栈
核心库:
程序界面





目录结构
环境要求
本地开发
1) 安装前端依赖
cd frontend
npm install
2) 启动 Tauri 开发模式
在项目根目录执行:
npm run tauri:dev
该命令会根据 tauri.conf.json:
构建发布
在项目根目录执行:
npm run tauri:build
该命令会:
配置说明( config.toml )
项目使用 TOML 进行配置。
建议直接参考 config.toml.example。
1) HTTP/HTTPS 代理( rules )
[[rules]]:监听节点
[[rules.routes]]:路由
2) WS 代理( ws_proxy )
**ws_proxy_enabled**:WS 全局开关(默认 true)
[[ws_proxy]]:WS 监听规则列表
[[ws_proxy.routes]]
3) Stream ( TCP/UDP )代理( stream )
Stream 用于四层代理:监听一个 TCP/UDP 端口并转发到上游。
[stream]
[[stream.upstreams]]
[[stream.upstreams.servers]]
[[stream.servers]]
Nginx 示例对照
你可以用下面的 Nginx stream 配置理解对应关系:
stream {
upstream sendimage {
hash $remote_addr consistent;
server 59.xx.xx.xx:8089 max_fails=1 fail_timeout=30s;
}
server {
listen 50002;
proxy_pass sendimage;
proxy_connect_timeout 300s;
proxy_timeout 600s;
}
}
在本项目中等价配置可参考 config.toml.example 的 [stream] 片段。
4) 全局配置
5) 访问控制(白名单)
[[whitelist]]:IP 白名单条目
6) 指标存储
[metrics_storage]:指标存储配置
7) 更新配置
[update]:自动更新配置
界面功能
应用程序提供了全面的基于 Web 的管理界面:
常见问题
Q: 前端开发服务器使用什么端口?
A: 默认端口是 5173(见 tauri.conf.json 的 devUrl)。
Q: 如何更改前端 dev/build 命令?
A: 修改根目录 tauri.conf.json 的 build.beforeDevCommand / build.beforeBuildCommand。
Q: 配置文件位于哪里?
A: 开发模式下,如果项目根目录存在 config.toml,则优先读取。生产模式( Linux )下,默认位置是 ~/.config/SSLProxyManager/config.toml。
Q: 如何启用系统启动时自动运行?
A: 在 config.toml 中设置 auto_start = true,应用启动时会自动启动代理服务。
Q: 可以将应用隐藏到系统托盘吗?
A: 可以,点击关闭按钮会将窗口隐藏到系统托盘而不是退出。可以从托盘菜单退出。
Q: 如何查看历史指标?
A: 在配置中启用指标存储,然后在 UI 中使用"指标存储"标签页查询历史数据。
Q: 如何配置访问控制?
A: 使用"访问控制"标签页管理 IP 白名单/黑名单,或在 config.toml 中编辑 [[whitelist]] 条目。
免责声明
本项目仅用于学习与合法合规的网络代理/反向代理配置管理场景。使用本软件可能涉及网络访问控制、证书管理、流量转发等操作,存在但不限于数据泄露、服务中断、配置错误导致安全风险等潜在风险。你在使用本项目时需自行评估并承担全部风险与责任。
如果你不同意上述条款,请勿使用、分发或基于本项目进行二次开发。
许可证
本项目采用 MIT 许可证 - 详见 LICENSE 文件。
仓库
贡献
欢迎贡献!请随时提交 Pull Request 。

