Files
flvx/vitepress/guide.md
T
2025-06-27 14:49:43 +08:00

354 lines
11 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 使用指南
哆啦A梦是一个基于 go-gost 的现代化转发面板,提供了直观的 Web 界面来管理网络流量转发。
::: tip 需要帮助?
📱 [加入 Telegram 群组](https://t.me/+wdVDni1fdyI0YzE1) | 🐛 [GitHub Issues](https://github.com/bqlpfy/forward-panel/issues) | 🤝 [参与贡献](https://github.com/bqlpfy/forward-panel/pulls)
:::
## 项目介绍
### 核心功能
- 🔄 **TCP/UDP/TLS 端口转发**: 支持多种协议的流量转发
- 👥 **用户管理**: 按账号级别管理流量转发数量和流量限额
- 📊 **流量统计**: 支持双向/单向计费模式,实时监控
- ⚡ **限速控制**: 可创建限速规则进行精细化流量控制
- 🖥️ **节点管理**: 分布式节点部署和监控
- 🚇 **隧道管理**: 灵活的隧道配置和管理
- 🔒 **安全可控**: 内置认证系统,权限分级管理
### 技术架构
- **前端**: Vue.js 2 + Element UI
- **后端**: Spring Boot + MySQL
- **转发引擎**: go-gost
- **部署方式**: Docker Compose
## 第一步:登录系统
安装完成后,打开浏览器访问面板地址:
```
http://your-server-ip:6366
```
使用默认管理员账号登录:
- **用户名**: `admin_user`
- **密码**: `admin_user`
## 第二步:修改默认密码
登录后**务必立即修改默认密码**:
## 第三步:创建节点
节点是运行转发服务的服务器,需要先创建节点才能部署转发服务。
### 添加节点
1. 在左侧菜单点击 **"节点管理"**
2. 点击 **"新增节点"** 按钮
3. 填写节点信息:
- **节点名称**: 自定义名称(如:香港节点-01)
- **服务器IP**: 节点服务器的IP地址
- **入口IP**: 节点服务器的IP地址
4. 点击 **"确定"** 保存节点
### IP地址说明
**服务器IP**:
- 用于创建隧道转发时入口-出口两台服务器之间的通信地址
- 通常是服务器的主要通信IP
- 确保入口和出口节点能够通过此IP互相访问
**入口IP**:
- 用于展示在转发页面,面向用户的访问地址
- 适用于有多个IP的服务器(如多线BGP)
**兜底**:
- 实在理解不到说明你没这个需求,都填节点的公网ip就行
### 节点状态说明
- 🟢 **在线**: 节点正常运行,可以查看CPU、内存等系统信息
- 🔴 **离线**: 节点未连接或agent未安装
## 第四步:安装节点Agent
创建节点后,需要在对应的服务器上安装agent程序。
### 获取安装命令
1. 在节点列表中找到刚创建的节点
2. 点击节点卡片中的 **"复制安装命令"** 按钮
3. 系统会自动复制安装命令到剪贴板
### 执行安装
在目标服务器上执行复制的安装命令:
```bash
# 示例安装命令(实际命令请从面板复制)
curl -L https://your-panel-server:6365/agent/install | bash -s -- --server=your-panel-server:6365 --token=your-node-token
```
### 须知
- 安装或者更新时如果/etc/gost/下存在gost.json和config.json,安装命令会跳过生成,使用当前存在的配置
- gost执行文件会强制更新
### 验证安装
安装完成后,回到面板查看节点状态:
- 节点状态应该变为 🟢 **在线**
- 可以看到CPU使用率、内存使用率等系统信息
## 第五步:创建隧道
隧道定义了流量的入口和出口节点。
### 添加隧道
1. 在左侧菜单点击 **"隧道管理"**
2. 点击 **"新增隧道"** 按钮
3. 配置隧道参数:
**基本信息**:
- **隧道名称**: 自定义名称(如:Web服务隧道)
- **隧道类型**:
- **端口转发**: 在单个节点上进行直接端口映射
- **隧道转发**: 在入口节点和出口节点之间建立隧道连接
- **流量计算**:
- 单向计算(仅上传):仅计算上传流量
- 双向计算:计算上传和下载的总流量
- **流量倍率**: 计费倍率(默认1.0,设置为2.0表示按实际流量的2倍计费,范围:0.0-100.0)
**入口配置**:
- **入口节点**: 选择流量入口节点
- **起始端口**: 端口范围起始值(默认1)
- **结束端口**: 端口范围结束值(默认65535)
- **监听地址**: 部分专线需要,如果不理解保持默认即可
**出口配置**(仅隧道转发类型需要):
- **协议类型**: 保持默认即可,如有特殊需求可选择:
- TLS:数据过墙推荐选择
- TCP:普通场景
- MTLS: 多路复用的TLS
- **出口节点**: 选择流量出口节点
- **起始端口**: 出口端口范围起始值(默认1)
- **结束端口**: 出口端口范围结束值(默认65535)
4. 点击 **"创建"** 保存隧道
### 隧道流程图
创建后可以在隧道列表中看到流程图:
```
入口节点 → 出口节点 → 目标服务
```
## 第六步:创建转发
转发规则定义了具体的端口映射关系。
### 添加转发
1. 在左侧菜单点击 **"转发管理"**
2. 点击 **"新增转发"** 按钮
3. 配置转发参数:
**基本信息**:
- **转发名称**: 自定义名称(如:SSH转发)
- **选择隧道**: 选择已创建的隧道
**端口配置**:
- **入口端口**:
- **端口**: 手动指定端口号
- **留空自动分配**: 系统自动分配可用端口
- 建议:先选择隧道以查看端口范围,留空将自动分配可用端口
**目标配置**:
- **远程地址**: 最终目标服务地址,支持多种格式:
- IPv4:`192.168.1.100:8080`
- IPv6:`[2001:db8::1]:8080`
- 域名:`example.com:8080`
**示例配置**:
```
转发名称: SSH服务转发
选择隧道: Web服务隧道
入口端口: 留空自动分配(或手动指定如 2222)
远程地址: 192.168.1.100:22
```
4. 点击 **"确定"** 保存转发规则
## 第七步:用户管理(可选)
如果需要多用户使用,可以创建普通用户账号并分配资源。
### 创建用户
1. 在左侧菜单点击 **"用户管理"**
2. 点击 **"新增用户"** 按钮
3. 填写用户信息:
**基本信息**:
- **用户名**: 登录用户名(如:15284851274)
- **密码**: 登录密码(系统会自动加密显示)
**资源限制**:
- **流量(GB)**: 总流量限额,如需无限制可设置较大数值(如999999)
- **转发数量**: 可创建的转发数量,如需无限制可设置较大数值(如999999)
- **过期时间**: 账号有效期,可选择具体日期
- **流量重置**: 流量重置周期,默认"每月1号(0点重置)"
**账号状态**:
- **正常**: 用户可正常使用
- **禁用**: 暂停用户使用
**示例配置**:
```
用户名: user001
密码: ********
流量(GB): 100(或999999表示无限制)
转发数量: 10(或999999表示无限制)
过期时间: 2025-12-31
流量重置: 每月1号(0点重置)
状态: 正常
```
4. 点击 **"确定"** 创建用户
### 分配隧道权限
创建用户后,需要为用户分配具体的隧道使用权限:
1. 在用户列表中找到目标用户
2. 点击用户的 **"隧道权限管理"** 按钮
3. 在弹出窗口中配置权限:
**分配新隧道权限**:
- **选择隧道**: 选择要分配给用户的隧道
- **流量限制(GB)**: 该隧道的流量限额
- **转发数量**: 该隧道允许创建的转发数量
- **到期时间**: 该隧道权限的有效期
- **限速规则**: 选择是否应用限速(默认"不限速")
4. 点击 **"分配权限"** 保存配置
**权限管理**:
- 在"已有隧道权限"列表中可以查看用户的所有隧道权限
- 显示每个隧道的状态、流量统计、转发数量、限速规则、到期时间
- 可以编辑或删除现有权限
### 权限优先级说明
系统采用两级权限管理,优先级如下:
**用户级别权限(优先级最高)**:
- 用户的流量限额和转发数量限制影响该用户的所有转发
- 即使隧道权限设置更大的限额,也不能超过用户级别的总限制
- 例如:用户总流量100GB,即使单个隧道分配200GB,用户实际最多只能使用100GB
**隧道级别权限**:
- 隧道的流量和转发数量限制只影响对应的隧道
- 在用户总限额范围内,进一步细分到具体隧道的使用限制
- 例如:用户总流量100GB,可以分配给隧道A 60GB,隧道B 40GB
## 第八步:限速规则(可选)
如果需要对特定用户或隧道进行限速,需要先创建限速规则。
### 创建限速规则
1. 在左侧菜单点击 **"限速规则"**
2. 点击 **"新增限速"** 按钮
3. 配置限速参数:
**基本配置**:
- **规则名称**: 自定义限速规则名称(如:游戏隧道限速)
- **速度限制**: 设置带宽限制值
- 单位:Mbps(兆比特每秒)
- 范围:1-1000000 Mbps
- 例如:100 表示限制带宽为100Mbps
- **绑定隧道**: 选择要应用此限速规则的隧道
**示例配置**:
```
规则名称: 普通用户限速
速度限制: 100 Mbps
绑定隧道: Web服务隧道
```
4. 点击 **"确定"** 保存限速规则
## 获取帮助
### 社区支持
如果在使用过程中遇到问题或有功能建议,推荐以下方式获取帮助:
1. **💬 Telegram 群组**(推荐)
- [立即加入](https://t.me/+wdVDni1fdyI0YzE1)
- 实时讨论,快速回复
- 与其他用户交流经验
2. **🐛 GitHub Issues**
- [报告问题](https://github.com/bqlpfy/forward-panel/issues/new)
- 查看 [已知问题](https://github.com/bqlpfy/forward-panel/issues)
- 提交功能建议
3. **📖 文档资源**
- [快速开始指南](/getting-started)
- [常见问题解答](/faq)
- [项目架构说明](/project-structure)
### 故障排除
#### 安装相关问题
**问题**: Agent 安装失败
- 检查服务器网络连接
- 确认防火墙设置(开放 6365 端口)
- 使用 `sudo` 权限执行安装命令
**问题**: 节点显示离线
- 检查 Agent 服务状态:`systemctl status gost-agent`
- 查看 Agent 日志:`journalctl -u gost-agent -f`
- 确认面板地址和端口可访问
#### 转发相关问题
**问题**: 转发无法正常工作
- 检查端口是否被占用
- 确认目标地址可达性
- 验证隧道状态是否正常
**问题**: 流量统计异常
- 确认转发规则配置正确
- 检查流量计算方式设置
- 重启相关服务进行重置
#### 权限相关问题
**问题**: 用户无法创建转发
- 检查用户账号状态
- 确认隧道权限分配
- 验证流量和转发数量限制
### 联系开发者
对于紧急问题:
- **GitHub**: [@bqlpfy](https://github.com/bqlpfy)
- **Telegram**: [加入群组](https://t.me/+wdVDni1fdyI0YzE1) 直接联系
## 免责声明
本项目仅供个人学习与研究使用,基于开源项目进行二次开发。使用本项目所带来的任何风险由使用者自行承担。请确保在合法、合规、安全的前提下使用本项目。