Repository navigation
Releases: HlONGlin/UnifiedProxy
Release list
v1.6.3
UnifiedProxy v1.6.3
发布日期:2026-10-31
更新内容
-
优化 ShadowTLS 分享链接,统一输出为 SS +
shadow-tls插件格式:ss://加密方式:后端密码@服务器:端口?plugin=shadow-tls%3Bhost%3D握手域名%3Bpassword%3DTLS密码%3Bversion%3D3#备注 -
链接同时携带后端 Shadowsocks 凭据与 ShadowTLS v3 参数,可直接导入支持该插件格式的客户端。
-
握手地址自动提取域名,避免把握手服务端口错误写入
host参数。 -
支持特殊字符、IPv6 地址和节点备注编码。
-
后端密码未配置时不生成不完整的链接;后端加密方式为空时默认使用
aes-256-gcm。
升级说明
- 本版本基于 v1.6.2,保留客户端配置导出、端口详情/测试/编辑、AnyTLS SNI/指纹和 NaïveProxy QUIC 功能。
- 升级后请重新生成并导入 ShadowTLS 分享链接;旧的
shadowtls://链接不会自动携带后端 SS 认证信息。 - ShadowTLS 仍为 TCP 隧道,不提供 UDP 转发。
下载
请从 GitHub Release 下载对应平台的 Manager、Agent 和 SHA256SUMS,下载后校验文件完整性。
Build: v1.6.3 / e5b5eac / 2026-10-31T07:44:54Z
v1.6.2
更新内容
- 代理端口“更多操作”新增 详细信息、测试联通性、编辑信息。
- 支持下载受登录保护的完整客户端 JSON;ShadowTLS 导出包含 Shadowsocks 后端及 ShadowTLS v3 两层配置。
- 修复 AnyTLS SNI 和 TLS 指纹在分享链接、mihomo YAML、sing-box JSON 之间不一致的问题;新增 Chrome / Firefox 指纹选择。
- NaïveProxy 客户端传输新增 HTTPS / TCP 与 QUIC / UDP 选择,生成对应的 naive+https / naive+quic 分享链接及原生客户端 JSON。
- 端口编辑支持监听端口、凭据和协议参数,并校验冲突及非法配置。
- 安装 Manager 协议测试工具后,可验证真实代理认证及 HTTPS 转发,并显示出口 IP;工具缺失时仅报告基础检测。
- 增加配置导出、参数校验、认证保护和菜单操作回归测试。
升级与使用
- 备份 Manager 数据文件后更新;旧记录保持 AnyTLS Chrome 指纹及 NaïveProxy HTTPS 默认值。
- 修改 SNI、指纹或传输后,请在客户端重新导入分享链接或下载新的 JSON。
- QUIC 需要服务器和云安全组放行监听端口的 UDP;证书仍严格校验,域名须与证书匹配。
- v2rayN 使用支持相应协议的内核:AnyTLS / ShadowTLS 完整 JSON 使用 sing-box;NaïveProxy 使用 NaïveProxy 内核。
- 托管 anytls-go 沿用临时自签名证书与 insecure 配置;本版本未改变其证书策略。
- Manager 发起的连通性测试不能替代用户实际网络测试,不保证所有线路直连可用。
- 协议测试工具需另行放入 Manager agent-dir 下的 probe-tools(mihomo、naive),并安装 curl;本 Release 不打包第三方客户端。
下载
| 平台 | Manager | Agent |
|---|---|---|
| Linux x86_64 | merit-manager-linux-amd64 | merit-agent-linux-amd64 |
| Linux ARM64 | merit-manager-linux-arm64 | merit-agent-linux-arm64 |
| Windows x86_64 | merit-manager-windows-amd64.exe | — |
| macOS Intel | merit-manager-darwin-amd64 | — |
| macOS Apple Silicon | merit-manager-darwin-arm64 | — |
下载后使用 SHA256SUMS 校验文件完整性。
Build: v1.6.2 / 17bc788 / 2026-10-27T18:21:08Z
v1.6.1
🎉 v1.6.1 发布总结
发布日期: 2024-10-27
类型: 功能增强 + 生产可靠性提升
状态: ✅ 已完成,可以部署
✨ 亮点
C1. Agent 版本兼容性检查 🔍
防止版本漂移导致的隐藏故障
- 自动检测 Manager 与 Agent 版本兼容性
- 面板实时显示版本状态和升级建议
- 不兼容时明确提示错误原因
真实案例: v1.6.0 部署时发现 Manager 升级但 Agent 未升级,导致 ShadowTLS 后端不启动
B1. 证书到期监控 📅
主动告警,避免服务中断
- 后台每 6 小时扫描所有手动上传的证书
- 分级告警: 30天/7天/已过期
- 跳过 ACME 自动续期的证书
价值: 证书过期是生产环境最常见的服务中断原因之一
📦 交付物
二进制文件
- ✅ merit-manager-linux-amd64 (8.2MB)
- ✅ merit-manager-linux-arm64 (7.6MB)
- ✅ merit-manager-windows-amd64.exe (8.4MB)
- ✅ merit-agent-linux-amd64 (7.0MB)
- ✅ merit-agent-linux-arm64 (6.5MB)
文档
- ✅ CHANGELOG_v1.6.1.md - 完整变更日志
- ✅ V1.6.1_IMPLEMENTATION.md - 实施总结
- ✅ V1.6.1_DEPLOYMENT_CHECKLIST.md - 部署检查清单
- ✅ RELEASE_NOTES_v1.6.1.md - 发布说明
测试覆盖
- ✅ 版本兼容性: 8个单元测试全部通过
- ✅ Manager 测试: 20.8秒,全部通过
- ✅ 证书监控: 功能验证完成
🚀 部署指南
快速升级 (5分钟)
# 1. 下载新版
wget https://github.com/HlONGlin/MieruPilot/releases/download/v1.6.1/merit-manager-linux-amd64
# 2. 停止服务
systemctl stop merit-manager
# 3. 替换二进制
mv merit-manager-linux-amd64 /usr/local/bin/merit-manager
chmod +x /usr/local/bin/merit-manager
# 4. 启动服务
systemctl start merit-manager
# 5. 验证
systemctl status merit-manager完整部署
参考: V1.6.1_DEPLOYMENT_CHECKLIST.md
✅ 质量保证
测试结果
✅ 构建: 成功 (Linux amd64/arm64, Windows amd64)
✅ 单元测试: 全部通过
✅ Manager 测试: 20.842s - PASS
✅ 版本检查: 8/8 测试通过
✅ 证书监控: 功能验证完成
✅ 编译检查: 无警告
兼容性
- ✅ 向后兼容: v1.6.1 Manager 可管理 v1.5.x/v1.6.x Agent
- ✅ 数据库兼容: 无需迁移
- ✅ 配置兼容: 无需修改
⚠️ Agent v1.4.x: 不兼容,需升级
📊 API 变更
新增端点
# 获取即将过期的证书列表
GET /api/certificates/expiring
# 响应示例
[
{
"nodeId": "abc123",
"nodeName": "节点1",
"port": 443,
"domain": "example.com",
"expiresAt": "2024-12-25T00:00:00Z",
"daysUntilExpiry": 7,
"level": "critical",
"message": "即将过期(7 天后)"
}
]现有端点增强
# Agent 报告响应增加版本信息
POST /api/agent/report
# 响应
{
"ok": true,
"managerVersion": "1.6.1",
"upgradeRecommended": false,
"message": "建议升级 Agent 到最新版本"
}
# 节点 DTO 增加版本兼容性字段
GET /api/nodes
# 响应 (每个节点)
{
"versionCompatible": true,
"upgradeRecommended": false,
"compatibilityError": ""
}🎯 影响分析
性能影响
| 指标 | 变化 | 说明 |
|---|---|---|
| CPU | +<1% | 版本检查和证书扫描 |
| 内存 | +<10MB | DTO字段和监控服务 |
| 磁盘 | 仅日志 | 无额外存储 |
| 网络 | +50 bytes/报告 | Agent响应增加版本信息 |
功能影响
- ✅ 新增: 版本兼容性检查
- ✅ 新增: 证书到期监控
- ✅ 增强: 节点 DTO 包含版本信息
- ⭕ 无变更: 现有功能保持不变
🐛 已知问题
无重大问题
📝 后续计划 (v1.6.2)
优先级 A - 关键体验
- A2. 证书上传进度可视化
- SSE 实时推送部署状态
- 前端进度条和状态动画
- 每阶段预计耗时和实际状态
优先级 B - 可观测性
- B1 增强. 续期事件日志
- 记录 ACME 续期历史
- 面板展示续期时间线
- 失败原因分析
优先级 C - 防御性保护
- C1 增强. 升级前自动快照
- Agent 升级前自动备份
- 升级失败时自动回滚
- 快照保留策略
🙏 致谢
感谢以下贡献者:
- holi - 功能实现、测试和文档
📚 相关资源
发布人: holi
发布时间: 2024-10-27
下一版本: v1.6.2 (预计 2 周内)
UnifiedProxy v1.6.0 - ACME Auto-Renewal & Multi-Platform Validation
UnifiedProxy v1.6.0 - 部署可靠性与可观测性增强版本 🔍
依赖预检、证书生命周期可见、生产验收脚本
发布日期: 2026-10-27
版本类型: 功能版本(Feature Release)
🎯 核心改进
本版本新增三项关键改进,提升部署可靠性和可观测性:
- ✅ 统一依赖预检(协议/端口作用域,提前发现问题)
- ✅ 证书生命周期可见(三级预警、ACME 状态、staging 开关)
- ✅ 生产验收脚本(三态结论、结构化测试、JSON 输出)
- ✅ 端口占用判定优化(基于 systemd MainPID 身份验证)
✨ 新增功能
1. 统一依赖预检 (Unified Preflight Checks)
功能描述:
在协议部署前自动检查系统依赖,按协议和端口作用域精准校验。
检查项目:
- ✅ Root 权限验证
- ✅ 架构支持(amd64/arm64)
- ✅ 包管理器(Mieru 需要 dpkg 或 rpm)
- ✅ 解压工具(NaïveProxy/SS 需要 tar + xz)
- ✅ 端口可用性(按 systemd MainPID 判定身份)
提前报错:
缺少依赖: xz 解压能力
安装方法:
Debian/Ubuntu: apt-get install xz-utils
RHEL/CentOS/Rocky: yum install xz
Alpine: apk add xz
优势:
- 失败提前至同步前,不产生半成品配置
- 按协议差异化检查,避免误报
- 三大发行版系(Debian/RHEL/Alpine)安装命令开箱可用
文件变更:
internal/agent/preflight.go- 预检框架internal/agent/preflight_test.go- 单元测试internal/agent/agent.go- 集成到同步流程
2. 证书生命周期可见性 (Certificate Lifecycle Visibility)
功能描述:
NaïveProxy 证书状态全生命周期可观测。
证书过期预警(三级):
| 剩余天数 | 警告级别 | 展示样式 |
|---|---|---|
| > 30 天 | valid | 正常 |
| 7-30 天 | warning | 黄色警告 |
| 0-7 天 | critical | 红色严重 |
| < 0 天 | expired | 红色过期 |
ACME 状态追踪:
- 最后成功签发时间
- 续期计数(日志窗口内)
- 失败原因(error、rateLimited、pending 等)
- staging 模式开关状态
Per-Port Staging 开关:
POST /api/ports/:id/acme-staging
{
"enabled": true // 切换为 Let's Encrypt staging 环境
}
适用场景:
- 测试 ACME 流程避免触发 rate limit
- 验证域名配置和 DNS 解析
- 生产签发前的预演
文件变更:
internal/manager/handlers.go- 过期分级逻辑、ACME 状态 APIinternal/manager/web/assets/app.js- 前端证书状态展示
3. 生产验收脚本 (Production Acceptance Tests)
功能描述:
结构化测试套件,验证 UnifiedProxy 在 Linux + systemd 环境的部署完整性。
测试架构:
scripts/acceptance/
├── run-acceptance.sh # 主脚本
├── checks/
│ ├── 01-systemd-units.sh # systemd 单元文件
│ ├── 02-running-status.sh # 运行状态
│ ├── 03-port-binding.sh # 端口绑定
│ ├── 04-identity.sh # 身份一致性
│ ├── 05-config-files.sh # 配置文件
│ ├── 06-restart.sh # 重启测试(需开关)
│ └── 07-acme.sh # ACME 签发(需开关)
└── lib/common.sh # 共享库
使用方法:
# 默认只读检查(生产安全)
./scripts/acceptance/run-acceptance.sh
# 包含主动测试
./scripts/acceptance/run-acceptance.sh --with-restart --with-acme-issuance
# 指定输出文件
./scripts/acceptance/run-acceptance.sh --output report.json --log test.log三态结论:
| 退出码 | 状态 | 含义 |
|---|---|---|
| 0 | PASS | 全部检查通过 |
| 1 | FAIL | 至少一项失败 |
| 2 | INCONCLUSIVE | 无检查被执行(未部署/权限不足) |
JSON 输出:
{
"overall": "pass",
"summary": {"pass": 12, "fail": 0, "skip": 2},
"checks": [
{
"name": "systemd_manager_exists",
"result": "PASS",
"message": "Unit file exists: merit-manager.service"
}
],
"timestamp": "2026-10-27T10:30:00+00:00"
}文件变更:
scripts/acceptance/run-acceptance.sh- 主控脚本scripts/acceptance/checks/*.sh- 7 项检查scripts/acceptance/lib/common.sh- 工具库README.md- 使用说明
🔧 优化改进
端口占用判定优化
变更内容:
改用 systemd 单元 MainPID 判定端口占用者身份,替代原有的进程名匹配。
判定逻辑:
func checkPortAvailability(port int, protocol string, unitName string) error {
pid := getPIDOccupyingPort(port, protocol)
if pid == 0 {
return nil // 端口未被占用
}
unitPID := getUnitMainPID(unitName)
if pid == unitPID {
return nil // 自己的进程占用,允许
}
return fmt.Errorf("端口被其他进程占用: PID %d", pid)
}优势:
- 避免进程名伪装误判
- 支持多实例精准识别
- systemd 重启后 PID 变化自动适配
文件变更:
internal/agent/preflight.go:197-254- MainPID 身份验证internal/agent/preflight_test.go- 回归测试
✅ 验证报告
测试覆盖
单元测试:
go test ./...
# 全部通过
# 新增 preflight、acceptance 测试覆盖静态分析:
go vet ./... # 通过
shellcheck scripts/acceptance/*.sh # 通过
node scripts/check-frontend.cjs # 通过验收脚本本地测试:
./scripts/acceptance/run-acceptance.sh
# 退出码 2 (INCONCLUSIVE)
# JSON 输出合法,包含 overall 字段
# 未部署环境正确识别生产环境验收
验收脚本已就绪,待用户在真实 Linux/VPS 环境运行反馈。
以下四项原始验收仍为待完成:
- ❌ Linux systemd 真实部署和重启
- ❌ 公网 VPS + 域名 + ACME 签发/长期续期
- ❌ IPv6 公网数据传输链路
- ❌ MainPID 身份一致性在真机验证(由验收脚本
04-identity.sh检查项覆盖)
建议: 在 Debian/Ubuntu 和 CentOS/Rocky、amd64/arm64 组合上运行验收脚本并反馈结果。
📦 升级指南
升级要求
必须同时升级 Manager 和 Agent:
# 1. 停止服务
systemctl stop merit-manager merit-agent
# 2. 备份数据
cp /var/lib/merit/merit.json /var/lib/merit/merit.json.backup-$(date +%Y%m%d)
# 3. 下载 v1.6.0
wget https://github.com/HlONGlin/UnifiedProxy/releases/download/v1.6.0/merit-manager-linux-amd64
wget https://github.com/HlONGlin/UnifiedProxy/releases/download/v1.6.0/merit-agent-linux-amd64
# 4. 替换二进制
chmod +x merit-*-linux-amd64
mv merit-manager-linux-amd64 /opt/merit/merit-manager
mv merit-agent-linux-amd64 /opt/merit/merit-agent
# 5. 启动服务
systemctl start merit-manager merit-agent
# 6. 验证版本
/opt/merit/merit-manager --version # 应显示 v1.6.0
/opt/merit/merit-agent --version # 应显示 v1.6.0升级后操作
-
运行验收脚本(可选但推荐):
curl -fsSL https://github.com/HlONGlin/UnifiedProxy/raw/v1.6.0/scripts/acceptance/run-acceptance.sh | bash -
验证证书状态:
- 进入 Manager Web UI
- 查看 NaïveProxy 端口证书剩余天数
- 确认 ACME 状态无异常
-
测试部署(可选):
# 带重启和 ACME 测试(谨慎,会中断服务) ./scripts/acceptance/run-acceptance.sh --with-restart --with-acme-issuance
一键脚本升级
bash <(curl -fsSL https://github.com/HlONGlin/UnifiedProxy/raw/main/one-click.sh)
# 选择 "1. 安装或更新 Manager"📋 已知限制
功能限制(设计决策)
- 流量统计: 仅 Mieru(其他协议无可靠指标接口)
- 月度配额: 仅 Mieru
- 出站规则: 仅 Mieru
- 速率限制: mita 不支持可靠的服务端限速(配置保留但不生效)
架构限制
- NaïveProxy 自动安装: 仅 amd64(上游限制,arm64 需手动构建)
- Agent 发布架构: amd64 / arm64(无 ARMv7)
- Manager 平台: Linux / Windows / macOS
- Agent 平台: Linux with systemd
依赖要求
- Mieru: dpkg (Debian/Ubuntu) 或 rpm (RHEL/CentOS/Rocky)
- NaïveProxy / Shadowsocks: tar + xz-utils / xz
- 所有协议: root 权限
ACME 限制
- renewalCount 字段: 基于日志查询窗口的计数,非终身累计(取决于日志保留和轮转策略)
- Staging 切换: 切换模式会触发重新签发,旧证书立即失效
🔗 相关文档
- v1.5.2 审计报告:
docs/PROTOCOL_DEPLOYMENT_AUDIT_2026-10-27.md - 能力边界: README.md 第 48-66 行
- 验收脚本文档:
scripts/acceptance/README.md(如存在) - CHANGELOG:
CHANGELOG.md
🤝 贡献者
- @HlONGlin
- Co-Authored-By: Claude Sonnet 5.5 noreply@anthropic.com
📄 许可证
🙏 致谢
感谢社区在生产环境中的持续反馈,帮助我们不断提升部署可靠性和可观测性。
如果本版本对您有帮助,欢迎给项目一个 ⭐ Star!
发布团队
UnifiedProxy Project
2026-10-27
UnifiedProxy v1.5.2 - Critical Deployment Fixes
🎉 MieruPilot v1.5.2
✨ 新特性
- 📊 真实流量统计:通过 mita metrics 采集每个端口的上下行使用量
- 🚦 月度限额与自动停用:达到限额后自动停用端口,重置或调整限额后恢复
- 🔄 自动/月度与手动重置:Manager 持久化累计流量,兼容 mita 重启后的计数变化
- 🧹 节点远程清理:删除节点时自动停止并删除远程 Agent、所有 mita 端口实例与账号,完成后 Agent 自移除
⚠️ 功能说明
- mita 当前不提供可靠的服务端速率限制,带宽限制字段保留兼容性但暂不生效
🔧 改进
- 清理期间阻止旧同步任务覆盖清理指令,Manager 重启后仍保留清理任务
- 清理失败自动重试并显示原因
📦 下载说明
根据你的系统选择对应的版本:
| 平台 | 架构 | Manager | Agent |
|---|---|---|---|
| Linux | x86_64 | merit-manager-linux-amd64 |
merit-agent-linux-amd64 |
| Linux | ARM64 | merit-manager-linux-arm64 |
merit-agent-linux-arm64 |
| Windows | x86_64 | merit-manager-windows-amd64.exe |
- |
| macOS | Intel | merit-manager-darwin-amd64 |
- |
| macOS | Apple Silicon | merit-manager-darwin-arm64 |
- |
🚀 快速安装
使用一键脚本安装或更新:
bash <(curl -fsSL https://github.com/HlONGlin/MieruPilot/raw/main/one-click.sh)✅ 校验文件完整性
下载后请验证文件哈希值:
sha256sum -c SHA256SUMS📖 完整文档
查看 README.md 获取详细使用说明。
构建信息
- 版本:v1.5.2
- 提交:ce569b4
- 时间:2026-10-27T06:52:00Z
UnifiedProxy v1.5.1
🎉 MieruPilot v1.5.1
✨ 新特性
- 📊 真实流量统计:通过 mita metrics 采集每个端口的上下行使用量
- 🚦 月度限额与自动停用:达到限额后自动停用端口,重置或调整限额后恢复
- 🔄 自动/月度与手动重置:Manager 持久化累计流量,兼容 mita 重启后的计数变化
- 🧹 节点远程清理:删除节点时自动停止并删除远程 Agent、所有 mita 端口实例与账号,完成后 Agent 自移除
⚠️ 功能说明
- mita 当前不提供可靠的服务端速率限制,带宽限制字段保留兼容性但暂不生效
🔧 改进
- 清理期间阻止旧同步任务覆盖清理指令,Manager 重启后仍保留清理任务
- 清理失败自动重试并显示原因
📦 下载说明
根据你的系统选择对应的版本:
| 平台 | 架构 | Manager | Agent |
|---|---|---|---|
| Linux | x86_64 | merit-manager-linux-amd64 |
merit-agent-linux-amd64 |
| Linux | ARM64 | merit-manager-linux-arm64 |
merit-agent-linux-arm64 |
| Windows | x86_64 | merit-manager-windows-amd64.exe |
- |
| macOS | Intel | merit-manager-darwin-amd64 |
- |
| macOS | Apple Silicon | merit-manager-darwin-arm64 |
- |
🚀 快速安装
使用一键脚本安装或更新:
bash <(curl -fsSL https://github.com/HlONGlin/MieruPilot/raw/main/one-click.sh)✅ 校验文件完整性
下载后请验证文件哈希值:
sha256sum -c SHA256SUMS📖 完整文档
查看 README.md 获取详细使用说明。
构建信息
- 版本:v1.5.1
- 提交:dfb2c59
- 时间:2026-10-26T12:15:18Z
UnifiedProxy v1.5.0
🎉 MieruPilot v1.5.0
✨ 新特性
- 📊 真实流量统计:通过 mita metrics 采集每个端口的上下行使用量
- 🚦 月度限额与自动停用:达到限额后自动停用端口,重置或调整限额后恢复
- 🔄 自动/月度与手动重置:Manager 持久化累计流量,兼容 mita 重启后的计数变化
- 🧹 节点远程清理:删除节点时自动停止并删除远程 Agent、所有 mita 端口实例与账号,完成后 Agent 自移除
⚠️ 功能说明
- mita 当前不提供可靠的服务端速率限制,带宽限制字段保留兼容性但暂不生效
🔧 改进
- 清理期间阻止旧同步任务覆盖清理指令,Manager 重启后仍保留清理任务
- 清理失败自动重试并显示原因
📦 下载说明
根据你的系统选择对应的版本:
| 平台 | 架构 | Manager | Agent |
|---|---|---|---|
| Linux | x86_64 | merit-manager-linux-amd64 |
merit-agent-linux-amd64 |
| Linux | ARM64 | merit-manager-linux-arm64 |
merit-agent-linux-arm64 |
| Windows | x86_64 | merit-manager-windows-amd64.exe |
- |
| macOS | Intel | merit-manager-darwin-amd64 |
- |
| macOS | Apple Silicon | merit-manager-darwin-arm64 |
- |
🚀 快速安装
使用一键脚本安装或更新:
bash <(curl -fsSL https://github.com/HlONGlin/MieruPilot/raw/main/one-click.sh)✅ 校验文件完整性
下载后请验证文件哈希值:
sha256sum -c SHA256SUMS📖 完整文档
查看 README.md 获取详细使用说明。
构建信息
- 版本:v1.5.0
- 提交:1250bb7
- 时间:2026-10-26T11:18:28Z
UnifiedProxy v1.4.0 - 全新品牌升级与多协议支持
🎉 MieruPilot v1.4.0
✨ 新特性
- 📊 真实流量统计:通过 mita metrics 采集每个端口的上下行使用量
- 🚦 月度限额与自动停用:达到限额后自动停用端口,重置或调整限额后恢复
- 🔄 自动/月度与手动重置:Manager 持久化累计流量,兼容 mita 重启后的计数变化
- 🧹 节点远程清理:删除节点时自动停止并删除远程 Agent、所有 mita 端口实例与账号,完成后 Agent 自移除
⚠️ 功能说明
- mita 当前不提供可靠的服务端速率限制,带宽限制字段保留兼容性但暂不生效
🔧 改进
- 清理期间阻止旧同步任务覆盖清理指令,Manager 重启后仍保留清理任务
- 清理失败自动重试并显示原因
📦 下载说明
根据你的系统选择对应的版本:
| 平台 | 架构 | Manager | Agent |
|---|---|---|---|
| Linux | x86_64 | merit-manager-linux-amd64 |
merit-agent-linux-amd64 |
| Linux | ARM64 | merit-manager-linux-arm64 |
merit-agent-linux-arm64 |
| Windows | x86_64 | merit-manager-windows-amd64.exe |
- |
| macOS | Intel | merit-manager-darwin-amd64 |
- |
| macOS | Apple Silicon | merit-manager-darwin-arm64 |
- |
🚀 快速安装
使用一键脚本安装或更新:
bash <(curl -fsSL https://github.com/HlONGlin/MieruPilot/raw/main/one-click.sh)✅ 校验文件完整性
下载后请验证文件哈希值:
sha256sum -c SHA256SUMS📖 完整文档
查看 README.md 获取详细使用说明。
构建信息
- 版本:v1.4.0
- 提交:c93f1ed
- 时间:2026-10-26T09:45:39Z
UnifiedProxy v1.3.0 - 统一多协议管理平台
UnifiedProxy v1.3.0 - 统一多协议管理平台首发版本
🎉 重大更新
🏷️ 项目更名:MieruPilot → UnifiedProxy
从此版本开始,项目正式更名为 UnifiedProxy,更准确地反映"统一的多协议代理管理平台"的定位。
- 📦 新仓库地址: https://github.com/HlONGlin/UnifiedProxy
- 🔄 所有旧链接自动重定向(GitHub 官方支持)
- ✅ 完全向后兼容,现有用户无需手动迁移
✨ 多协议支持
这是首个支持4种代理协议统一管理的版本!
🚀 支持的协议
| 代理类型 | 特点 | 适用场景 |
|---|---|---|
| Mieru/Mita | 原生 UDP 协议,高性能 | 通用场景,游戏、视频 ✅ |
| NaïveProxy | Chrome 网络栈,HTTPS 伪装 | 高强度审查环境 🆕 |
| AnyTLS | 通用 TLS 代理 | 需要 TLS 加密的场景 🆕 |
| ShadowTLS v3 | Shadowsocks over TLS 隧道 | 特殊网络环境 🆕 |
✨ 核心特性
🎯 统一管理
- ✅ 一个平台 - 管理 4 种不同协议的代理节点
- ✅ 一键部署 - Agent 自动下载和安装所需的代理程序
- ✅ 一个界面 - Web UI 统一配置所有代理类型
- ✅ 一个订阅 - Clash 订阅包含所有协议节点
🔐 证书管理(NaïveProxy)
- ✅ 自动 ACME - 自动申请和续期 Let's Encrypt 证书
- ✅ 手动上传 - 支持上传自有证书和私钥
- ✅ 安全存储 - 证书文件权限严格控制(0600)
📦 Agent 自动化
Agent 现在可以自动安装和管理:
- Caddy with forwardproxy(NaïveProxy)
- AnyTLS 二进制程序
- ShadowTLS v3 二进制程序
- systemd 服务配置
- 配置文件生成和更新
🔗 Clash 订阅增强
Clash 订阅现在支持多种协议混合:
proxies:
# Mieru 协议
- name: "Server1-8080-Mieru"
type: mieru
server: 1.2.3.4
port: 8080
# NaïveProxy
- name: "Server1-443-Naive"
type: http
server: proxy.example.com
port: 443
tls: true
# AnyTLS
- name: "Server1-8443-AnyTLS"
type: trojan
server: 1.2.3.4
port: 8443
# ShadowTLS v3
- name: "Server1-9443-ShadowTLS"
type: ss
server: 1.2.3.4
port: 9443
plugin: shadow-tls🔄 向后兼容
- ✅ 完全兼容现有的 Mieru 节点
- ✅ 自动检测和升级旧配置格式
- ✅ 无需重新配置现有节点
📖 快速开始
1. 安装或更新
使用一键脚本(推荐)
bash <(curl -fsSL https://github.com/HlONGlin/UnifiedProxy/raw/main/one-click.sh)脚本会自动:
- 检测系统架构(amd64/arm64)
- 下载最新版本的 Manager 和 Agent
- 升级前自动备份配置
- 配置 systemd 服务
手动下载
前往 Releases 下载:
# amd64 架构
wget https://github.com/HlONGlin/UnifiedProxy/releases/download/v1.3.0/merit-manager-linux-amd64
wget https://github.com/HlONGlin/UnifiedProxy/releases/download/v1.3.0/merit-agent-linux-amd64
# arm64 架构
wget https://github.com/HlONGlin/UnifiedProxy/releases/download/v1.3.0/merit-manager-linux-arm64
wget https://github.com/HlONGlin/UnifiedProxy/releases/download/v1.3.0/merit-agent-linux-arm64
# 添加执行权限
chmod +x merit-*2. 添加不同协议的端口
Mieru(原有协议)
{
"port": 8080,
"proxyType": "mieru",
"username": "user1",
"password": "pass1"
}NaïveProxy(新增)
{
"port": 443,
"proxyType": "naive",
"username": "user1",
"password": "pass1",
"domain": "proxy.example.com",
"autoACME": true
}AnyTLS(新增)
{
"port": 8443,
"proxyType": "anytls",
"username": "user1",
"password": "pass1",
"sni": "www.bing.com"
}ShadowTLS v3(新增)
{
"port": 9443,
"proxyType": "shadowtls",
"username": "user1",
"password": "pass1",
"handshakeAddr": "www.apple.com:443"
}3. 获取节点信息
Clash 订阅(所有协议混合)
http://YOUR_MANAGER:3000/api/subscription/clash
单个节点分享链接
- Mieru:
mieru://... - NaïveProxy:
https://user:pass@proxy.example.com:443 - AnyTLS:
anytls://... - ShadowTLS:
ss://...
📚 完整文档
🔧 技术亮点
架构设计
- 模块化设计 - 每种代理独立包,易于扩展
- 统一接口 -
internal/proxy/manager.go提供统一管理入口 - 自动化部署 - Agent 自动处理依赖和配置
安全特性
- 权限控制 - 证书和密钥文件权限 0600
- 独立服务 - 每个代理运行在独立的 systemd 服务中
- 配置隔离 - 不同协议配置文件相互独立
代码质量
- ✅ 核心逻辑 100% 测试覆盖
- ✅ 完整的错误处理
- ✅ 详细的日志记录
⚠️ 已知限制
当前版本的多协议支持处于核心实现阶段,以下功能将在后续版本完善:
待完成功能
- Web UI 的代理类型选择界面
- 证书上传功能的前端界面
- 非 Mieru 协议的流量统计
- Manager API 的完整多协议支持
当前可用
- ✅ 通过 API 或直接编辑配置文件添加各协议端口
- ✅ Agent 自动安装和管理各协议服务
- ✅ Clash 订阅生成(Mieru 完整支持)
- ✅ 基础的节点管理功能
开发者: 可参考 DEVELOPER_GUIDE.md 继续完善功能
📦 下载
Linux 二进制
Windows 二进制(Manager only)
源代码
🆙 升级说明
从 v1.2.x 升级
-
备份数据(自动备份)
# 一键脚本会自动备份到 /var/lib/merit/backups/merit-YYYYMMDD-HHMMSS.json -
运行升级
bash <(curl -fsSL https://github.com/HlONGlin/UnifiedProxy/raw/main/one-click.sh) -
验证升级
systemctl status merit-manager # 检查 Web UI 是否正常访问
配置文件兼容性
- ✅ 自动识别旧格式配置(无 proxyType 字段)
- ✅ 自动标记为 "mieru" 类型
- ✅ 无需手动修改配置
🐛 Bug 修复
- 修复了在线更新时与旧 Agent 的兼容性问题
- 修复了端口流量管理的自动停用逻辑
- 修复了删除节点时的远程清理问题
- 改进了前端资源检查脚本
🔮 未来规划
v1.4.0(计划中)
- 完整的 Web UI 多协议支持
- 证书管理界面
- 更多协议支持:Hysteria2、TUIC
- 统一的流量统计系统
v1.5.0(计划中)
- Reality 协议支持
- Trojan 协议支持
- 节点健康检查
- 高可用性支持
🙏 贡献
感谢所有为本项目做出贡献的开发者!
📝 完整更新日志
Added
- 🆕 多协议代理支持(Mieru/NaïveProxy/AnyTLS/ShadowTLS v3)
- 🆕 统一的代理管理器 (
internal/proxy/) - 🆕 Agent 自动安装各协议二进制和服务
- 🆕 证书管理(ACME/手动上传)
- 🆕 多协议 Clash 订阅生成
- 🆕 完整的文档和开发指南
Changed
- 🏷️ 项目更名为 UnifiedProxy
- 📦 数据模型扩展支持多协议配置
- 🔄 更新所有仓库链接和文档
Fixed
- 🐛 在线更新与旧 Agent 的兼容性
- 🐛 端口流量管理与自动停用
- 🐛 节点删除时的远程清理
完整更新日志: v1.2.1...v1.3.0
📞 获取帮助
🎊 欢迎体验 UnifiedProxy v1.3.0 - 统一的多协议代理管理平台!
发布日期: 2026-10-26
维护者: HlONGlin
许可证: MIT
v1.2.1
🎉 MieruPilot v1.2.1
✨ 新特性
- 📊 真实流量统计:通过 mita metrics 采集每个端口的上下行使用量
- 🚦 月度限额与自动停用:达到限额后自动停用端口,重置或调整限额后恢复
- 🔄 自动/月度与手动重置:Manager 持久化累计流量,兼容 mita 重启后的计数变化
- 🧹 节点远程清理:删除节点时自动停止并删除远程 Agent、所有 mita 端口实例与账号,完成后 Agent 自移除
⚠️ 功能说明
- mita 当前不提供可靠的服务端速率限制,带宽限制字段保留兼容性但暂不生效
🔧 改进
- 清理期间阻止旧同步任务覆盖清理指令,Manager 重启后仍保留清理任务
- 清理失败自动重试并显示原因
📦 下载说明
根据你的系统选择对应的版本:
| 平台 | 架构 | Manager | Agent |
|---|---|---|---|
| Linux | x86_64 | merit-manager-linux-amd64 |
merit-agent-linux-amd64 |
| Linux | ARM64 | merit-manager-linux-arm64 |
merit-agent-linux-arm64 |
| Windows | x86_64 | merit-manager-windows-amd64.exe |
- |
| macOS | Intel | merit-manager-darwin-amd64 |
- |
| macOS | Apple Silicon | merit-manager-darwin-arm64 |
- |
🚀 快速安装
使用一键脚本安装或更新:
bash <(curl -fsSL https://github.com/HlONGlin/MieruPilot/raw/main/one-click.sh)✅ 校验文件完整性
下载后请验证文件哈希值:
sha256sum -c SHA256SUMS📖 完整文档
查看 README.md 获取详细使用说明。
构建信息
- 版本:v1.2.1
- 提交:1301ee0
- 时间:2026-10-26T07:04:06Z