Skip to content

icecliffs/marbleproxy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MarbleProxy

红队多级协议跳板配置与代理管理平台,支持策略调度、规则分流、健康检查、REST API / WebSocket 自动化。

特别说明:

公开版本为历史遗留版本,最新版本仅圈内共享,公开版本有bug是正常的,因为没有进行维护,默认别启用这个版本的TUN,贼血妈难用,相关代码可自行fork修改并pr

功能概览

功能 说明
多协议 HTTP / SOCKS5 上游
策略引擎 轮询、随机、定时、按请求、按流量、故障转移、Geo
规则引擎 域名 / IP / 端口 / 进程 / 时间段分流
应用分流 域名规则在本地代理层生效;TUN 需 tun2socks
链式代理 代理 JSON 字段 chain 配置多级 detour
健康检查 逐个检测每个上游代理
GUI Wails + Nuxt UI 亮色界面
API REST + WebSocket,供脚本 / 浏览器插件联动

image-20260720113133156

image-20260720113140074

image-20260720113144328

image-20260720113150993

快速开始

1. 添加代理

  1. 打开 代理 页 → 添加代理
  2. 快速导入:粘贴 http://user:pass@1.2.3.4:8080socks5://1.2.3.4:1080
  3. 高级协议填写 UUID、加密方式、Extra JSON
  4. 点击 保存 → 顶部 启动

3. 使用本地代理

类型 地址
HTTP 127.0.0.1:7890
SOCKS5 127.0.0.1:7891
Mixed 127.0.0.1:7892

浏览器 / curl 示例:

curl -x http://127.0.0.1:7890 https://api.ipify.org

4. TUN 全局模式

  1. tun2socks Releases 下载 tun2socks-windows-amd64.exe
  2. 重命名为 tun2socks.exe,放到 build\bin\bin\
  3. 以管理员身份运行 MarbleProxy → 设置开启 TUN → 启动

流量路径:系统 → TUN 网卡 → tun2socks → 本地 SOCKS → 上游节点

策略说明

策略 行为 配置项
round_robin 顺序轮换
random 随机
by_time 定时切换 interval_sec(秒)
by_request 每 N 次请求切换 request_count
by_traffic 每 N MB 切换 traffic_mb
failover 跳过不可用代理 需开启健康检查
geo 按国家序列 sequence: ["US","JP","HK"]

策略 页选择并配置后点击 应用。手动切换:顶部 切换 IP 或 API。

API 参考

Base URL: http://127.0.0.1:8080

# 启动 / 停止
curl -X POST http://127.0.0.1:8080/api/start
curl -X POST http://127.0.0.1:8080/api/stop

# 切换 IP(空 name = 按策略选下一个)
curl -X POST http://127.0.0.1:8080/api/change -H "Content-Type: application/json" -d "{}"
curl -X POST http://127.0.0.1:8080/api/change -H "Content-Type: application/json" -d '{"name":"my-proxy"}'

# 添加代理
curl -X POST http://127.0.0.1:8080/api/proxies -H "Content-Type: application/json" -d '{
  "name": "hk-01",
  "type": "http",
  "server": "1.2.3.4",
  "port": 8080,
  "enabled": true
}'

# 设置策略
curl -X POST http://127.0.0.1:8080/api/strategy -H "Content-Type: application/json" -d '{
  "type": "by_time",
  "config": "{\"interval_sec\":30}"
}'

# 热重载
curl -X POST http://127.0.0.1:8080/api/reload

# 状态
curl http://127.0.0.1:8080/api/status

WebSocket 实时事件:ws://127.0.0.1:8080/api/ws

{"action":"change","name":""}
{"action":"ping"}

仅 API 模式(无 GUI)

.\MarbleProxy.exe serve

配置与数据目录

首次启动时,程序会在 可执行文件所在目录 自动生成 config.yaml(默认端口、健康检查等)。

文件 位置 说明
config.yaml MarbleProxy.exe 同目录 端口、TUN、健康检查等(可手动编辑)
marbleproxy.db MarbleProxy.exe 同目录 代理 / 规则 / 策略 / 日志
sing-box.json MarbleProxy.exe 同目录 自动生成的 sing-box 配置

例如 GUI 版路径:build\bin\config.yaml

可在 设置 页修改端口/TUN/健康检查,或手动编辑 config.yaml 后点 热重载

规则引擎

规则 页:按域名后缀、IP CIDR、端口、进程名等分流(direct / proxy / block)。

应用分流 页:域名匹配时自动切换 IP(配合 auto_switch 插件)。

local 模式下规则在本地 HTTP/SOCKS 代理层生效;sing-box 模式下写入 sing-box 路由。

链式代理

添加代理时在 链式代理 字段填写 JSON 数组,例如:

["hop-socks", "hop-vmess"]

数组中的名称必须是已添加的其他代理名称。sing-box 模式下会生成 detour 链。

构建

# 依赖: Go 1.24+, Node.js 18+, Wails v2
cd frontend && npm install && npm run build && cd ..
$env:CGO_ENABLED=0
wails build
# 输出: build\bin\MarbleProxy.exe

跨平台:

GOOS=linux GOARCH=amd64 wails build
GOOS=darwin GOARCH=amd64 wails build

项目结构

nextproxy/
├── main.go                 # Wails 入口 + API
├── internal/
│   ├── app/                # 编排层、策略调度
│   ├── core/               # sing-box / 本地引擎
│   ├── strategy/           # 7 种切换策略
│   ├── route/              # 规则匹配
│   ├── inbound/            # 本地 HTTP/SOCKS
│   ├── api/                # REST + WebSocket
│   ├── health/             # 健康检查
│   ├── plugin/             # 插件系统
│   └── database/           # SQLite
└── frontend/               # Nuxt UI

常见问题

Q: 界面无样式?

重新 npm run buildwails build,确保 assets/css/main.css 存在。

Q: 添加代理没反应?

填写名称、服务器、端口,看 Toast 错误提示。名称不可重复。

Q: VMess 不工作?

需 sing-box 模式。检查仪表盘是否显示 mode: sing-box

Q: TUN 模式?

设置页开启 TUN → 需 sing-box + 管理员权限运行。

Q: 我该怎么用这玩意?

自己摸索自己理解

警告

免责声明: 本工具仅用于网络安全技术研究、教学及合规的渗透测试,旨在帮助提升系统安全性。使用者在使用本工具时须严格遵守当地法律法规,严禁将本工具用于任何未经授权的非法活动或破坏性攻击,因滥用本工具所导致的任何直接或间接法律责任及后果,均由使用者本人承担,开发者对此不承担任何责任,使用本工具即视为您已理解并同意本声明。

Gh0xE9实验室出品

License

MIT

About

红队多协议跳板代理管理平台,支持 HTTP/SOCKS5 代理链、10 种策略调度、域名/IP/进程规则分流、健康检查自动故障转移、TUN 全局模式、REST API + WebSocket 自动化

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors