系统要求
在开始之前,请确保您的系统满足以下要求:
- 操作系统: Linux (推荐 Ubuntu 18.04+, CentOS 7+) 或 macOS,推荐纯净系统安装
- Docker: 20.10+
- Docker Compose: 1.29+ 或 Docker 内置 compose 命令
- 内存: 至少 1GB RAM
- 存储: 至少 1GB 可用空间
- 网络: 确保相关端口未被占用
一键安装(推荐)
我们提供了交互式安装脚本,会自动检测系统环境并引导您完成配置:
curl -L https://raw.githubusercontent.com/bqlpfy/forward-panel/refs/heads/main/panel_install.sh -o panel_install.sh && chmod +x panel_install.sh && ./panel_install.sh
安装流程说明
- 运行脚本后选择操作:
=============================================== 面板管理脚本 =============================================== 请选择操作: 1. 安装面板 ← 选择这个 2. 更新面板 3. 卸载面板 4. 退出 ===============================================
- 输入配置参数:
- 面板服务器地址: 需要节点服务器能正常访问的地址
- 前端端口: 默认 6366
- 后端端口: 默认 6365
- 自动化处理:
- 检测 Docker 环境
- 自动检测 IPv6 支持并选择合适的配置
- 生成随机的数据库配置
- 下载并启动服务
配置示例
当前面板服务器地址: 192.168.1.100 # 或您的公网IP
前端端口(默认 6366): 6366 # 直接回车使用默认值
后端端口(默认 6365): 6365 # 直接回车使用默认值
验证安装
1. 检查服务状态
# 使用 docker-compose
docker-compose ps
# 或使用 docker compose
docker compose ps
您应该看到以下服务都处于 Up
状态:
gost-mysql
- 数据库服务springboot-backend
- 后端 API 服务vue-frontend
- 前端 Web 界面
2. 访问 Web 界面
打开浏览器访问:http://your-server-ip:6366
3. 登录系统
使用默认管理员账号登录:
- 用户名:
admin_user
- 密码:
admin_user
⚠️ 重要: 首次登录后请立即修改默认密码!
IPv6 支持
脚本会自动检测系统的 IPv6 支持:
- ✅ 支持 IPv6: 自动使用 IPv6 配置文件并配置 Docker IPv6 支持
- ⚠️ 不支持 IPv6: 使用 IPv4 配置文件
Docker IPv6 配置
如果检测到 IPv6 支持,脚本会自动配置:
{
"ipv6": true,
"fixed-cidr-v6": "fd00::/80"
}
端口说明
端口 | 服务 | 说明 | 可配置 |
---|---|---|---|
6366 | Web 界面 | 前端管理界面 | ✅ |
6365 | API 服务 | 后端 REST API | ✅ |
3306 | MySQL | 数据库服务(容器内部) | ❌ |
动态分配 | 转发端口 | 用户创建的转发规则 | ✅ |
获取帮助
如果在安装过程中遇到问题:
- 💬 Telegram 群组(推荐)
- 立即加入
- 实时技术支持,快速响应
- 🔍 故障排除
- 查看安装日志和错误信息
- 检查系统要求是否满足
- 验证 Docker 和网络配置
- 🐛 GitHub Issues
- 📖 文档资源
项目介绍
核心功能
- 🔄 TCP/UDP/TLS 端口转发: 支持多种协议的流量转发
- 👥 用户管理: 按账号级别管理流量转发数量和流量限额
- 📊 流量统计: 支持双向/单向计费模式,实时监控
- ⚡ 限速控制: 可创建限速规则进行精细化流量控制
- 🖥️ 节点管理: 分布式节点部署和监控
- 🚇 隧道管理: 灵活的隧道配置和管理
- 🔒 安全可控: 内置认证系统,权限分级管理
技术架构
- 前端: Vue.js 2 + Element UI
- 后端: Spring Boot + MySQL
- 转发引擎: go-gost
- 部署方式: Docker Compose
第一步:登录系统
安装完成后,打开浏览器访问面板地址:
http://your-server-ip:6366
使用默认管理员账号登录:
- 用户名:
admin_user
- 密码:
admin_user
第二步:修改默认密码
登录后务必立即修改默认密码:
第三步:创建节点
节点是运行转发服务的服务器,需要先创建节点才能部署转发服务。
添加节点
- 在左侧菜单点击 "节点管理"
- 点击 "新增节点" 按钮
- 填写节点信息:
- 节点名称: 自定义名称(如:香港节点-01)
- 服务器IP: 节点服务器的IP地址
- 入口IP: 节点服务器的IP地址
- 端口范围: 该节点允许分配的端口范围(如:20000-30000),用于后续转发端口的分配和管理
特殊情况
如果NAT服务器端口范围不连续,可以输入 1-65535
,然后在添加转发时手动指定端口。
- 点击 "确定" 保存节点
IP地址说明
服务器IP:
- 用于创建隧道转发时入口-出口两台服务器之间的通信地址
- 通常是服务器的主要通信IP
- 确保入口和出口节点能够通过此IP互相访问
入口IP:
- 用于展示在转发页面,面向用户的访问地址
- 适用于有多个IP的服务器(如多线BGP)
兜底:
- 实在理解不到说明你没这个需求,都填节点的公网ip就行
第四步:安装节点Agent
创建节点后,需要在对应的服务器上安装agent程序。
获取安装命令
- 在节点列表中找到刚创建的节点
- 点击节点卡片中的 "复制" 按钮
- 系统会自动复制安装命令到剪贴板
执行安装
在目标服务器上执行复制的安装命令:
# 示例安装命令(实际命令请从面板复制)
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使用率、内存使用率等系统信息
第五步:创建隧道
隧道定义了流量的入口和出口节点。
添加隧道
- 在左侧菜单点击 "隧道管理"
- 点击 "新增隧道" 按钮
- 配置隧道参数:
基本信息:
- 隧道名称: 自定义名称(如:Web服务隧道)
- 隧道类型:
- 端口转发: 在单个节点上进行直接端口映射
- 隧道转发: 在入口节点和出口节点之间建立隧道连接
- 流量计算:
- 单向计算(仅上传):仅计算上传流量
- 双向计算:计算上传和下载的总流量
- 流量倍率: 计费倍率(默认1.0,设置为2.0表示按实际流量的2倍计费,范围:0.0-100.0)
入口配置:
- 入口节点: 选择流量入口节点
- 监听地址:
说明
部分专线需要监听指定内网IP才能成功转发端口,所以才诞生了这两个配置。如果不理解就按照说明填写,服务器只有v4就填写
0.0.0.0
,支持v6或者只有v6就填写[::]
出口配置(仅隧道转发类型需要):
- 协议类型: 保持默认即可,如有特殊需求可选择:
- 出口节点: 选择流量出口节点
- 点击 "创建" 保存隧道
第六步:创建转发
转发规则定义了具体的端口映射关系。
添加转发
- 在左侧菜单点击 "转发管理"
- 点击 "新增转发" 按钮
- 配置转发参数:
基本信息:
- 转发名称: 自定义名称(如:SSH转发)
- 选择隧道: 选择已创建的隧道
端口配置:
- 入口端口:
- 端口: 手动指定端口号
- 留空自动分配: 系统自动分配可用端口
- 建议:先选择隧道以查看端口范围,留空将自动分配可用端口
目标配置:
- 远程地址: 最终目标服务地址,支持多种格式:
- IPv4:
192.168.1.100:8080
- IPv6:
[2001:db8::1]:8080
- 域名:
example.com:8080
TIP
支持输入多个远程地址,多个地址时可选择负载均衡模式。
- IPv4:
- 点击 "确定" 保存转发规则
第七步:用户管理(可选)
如果需要多用户使用,可以创建普通用户账号并分配资源。
创建用户
- 在左侧菜单点击 "用户管理"
- 点击 "新增用户" 按钮
- 填写用户信息:
基本信息:
- 用户名: 登录用户名
- 密码: 登录密码(系统会自动加密显示)
资源限制:
- 流量(GB): 总流量限额,如需无限制可设置较大数值(如999999)
- 转发数量: 可创建的转发数量,如需无限制可设置较大数值(如999999)
- 过期时间: 账号有效期,可选择具体日期
- 流量重置: 流量重置周期,默认"每月1号(0点重置)"
账号状态:
- 正常: 用户可正常使用
- 禁用: 暂停用户使用
- 点击 "确定" 创建用户
分配隧道权限
创建用户后,需要为用户分配具体的隧道使用权限:
- 在用户列表中找到目标用户
- 点击用户的 "隧道权限管理" 按钮
- 在弹出窗口中配置权限:
分配新隧道权限:
- 选择隧道: 选择要分配给用户的隧道
- 流量限制(GB): 该隧道的流量限额
- 转发数量: 该隧道允许创建的转发数量
- 到期时间: 该隧道权限的有效期
- 限速规则: 选择是否应用限速(默认"不限速")
- 点击 "分配权限" 保存配置
权限管理:
- 在"已有隧道权限"列表中可以查看用户的所有隧道权限
- 显示每个隧道的状态、流量统计、转发数量、限速规则、到期时间
- 可以编辑或删除现有权限
权限优先级说明
系统采用两级权限管理,优先级如下:
用户级别权限(优先级最高):
- 用户的流量限额和转发数量限制影响该用户的所有转发
- 即使隧道权限设置更大的限额,也不能超过用户级别的总限制
- 例如:用户总流量100GB,即使单个隧道分配200GB,用户实际最多只能使用100GB
隧道级别权限:
- 隧道的流量和转发数量限制只影响对应的隧道
- 在用户总限额范围内,进一步细分到具体隧道的使用限制
- 例如:用户总流量100GB,可以分配给隧道A 60GB,隧道B 40GB
第八步:限速规则(可选)
如果需要对特定用户或隧道进行限速,需要先创建限速规则。
创建限速规则
- 在左侧菜单点击 "限速规则"
- 点击 "新增限速" 按钮
- 配置限速参数:
基本配置:
- 规则名称: 自定义限速规则名称(如:游戏隧道限速)
- 速度限制: 设置带宽限制值
- 单位:Mbps(兆比特每秒)
- 范围:1-1000000 Mbps
- 例如:100 表示限制带宽为100Mbps
- 绑定隧道: 选择要应用此限速规则的隧道
- 点击 "确定" 保存限速规则
联系开发者
对于紧急问题:
- GitHub: @bqlpfy
- GitHub项目地址:https://github.com/bqlpfy/forward-panel
- Telegram: 加入群组 直接联系
文章转发自:https://tes.cc/getting-started.html
文章评论