vNodesV/vOps
GitHub: vNodesV/vOps
vProx 是面向 Cosmos SDK 节点的生产级反向代理,解决多链环境下 API 流量路由、限流保护与运维管理问题。
Stars: 0 | Forks: 0
# vProx
为 Cosmos SDK 节点服务(RPC、REST、gRPC、WebSocket 和 API 别名)打造的生产级反向代理 —— 具备按链路由、速率限制、地理信息增强以及自动化日志管理功能。
## ✨ 功能
- **按链路由** — 通过 Host 头匹配;路由至路径前缀(`/rpc`、`/rest`、`/grpc`、`/grpc-web`、`/api`)或子域名(`rpc.`、`api.`)。
- **WebSocket 代理** — 支持双向通信,可配置空闲超时和最大生命周期。
- **速率限制** — 基于每 IP 的令牌桶算法,支持可选的自动隔离和 JSONL 审计日志。
- **地理信息增强** — 通过 MMDB 查询记录每个请求的国家和 ASN(可选)。
- **HTML 横幅注入** — 在 RPC 索引和 REST swagger 页面上自定义横幅。
- **自动化备份** — 通过 TOML 配置定时备份,支持多文件归档。
- **服务管理** — 支持 `start -d`、`stop`、`restart`,并集成了免密 sudoers。
- **兼容 Systemd** — `make install` 会渲染并选择性安装 service unit 和 sudoers 规则。
## 📦 环境要求
- Go **1.25+**(参见 `go.mod`)
- Linux(用于生产环境/systemd);支持 macOS 用于开发
## ⚡ 快速开始
```
git clone https://github.com/vNodesV/vProx.git
cd vProx
make install
```
然后创建一个链配置:
```
cp $HOME/.vProx/config/chains/chain.sample.toml $HOME/.vProx/config/chains/my-chain.toml
$EDITOR $HOME/.vProx/config/chains/my-chain.toml
```
启动代理:
```
vProx start # foreground, listens on :3000 by default
vProx start -d # start as systemd service (daemon)
vProx stop # stop the service
vProx restart # restart the service
```
## 📚 文档
| 文档 | 描述 |
|---|---|
| [`INSTALLATION.md`](./INSTALLATION.md) | 完整安装指南:构建、配置、systemd、故障排除 |
| [`MODULES.md`](./MODULES.md) | 逐模块的操作与配置参考 |
| [`CLI_FLAGS_GUIDE.md`](./CLI_FLAGS_GUIDE.md) | 包含示例的完整 CLI flag 参考 |
| [`docs/UPGRADE.md`](./docs/UPGRADE.md) | 升级指南(v0.x → v1.x 迁移说明) |
| [`CHANGELOG.md`](./CHANGELOG.md) | 版本历史 |
## 📄 许可证
Apache-2.0。参见 [`LICENSE`](./LICENSE)。
标签:Cosmos, EVTX分析, Go语言, Python安全, 区块链节点, 反向代理, 日志审计, 程序破解, 运维工具, 限流