https://github.com/zhitrend/zhitrend_cpolar
与cpolar功能类似的内网穿透方案。免费版,可自定义域名
https://github.com/zhitrend/zhitrend_cpolar
Last synced: 8 months ago
JSON representation
与cpolar功能类似的内网穿透方案。免费版,可自定义域名
- Host: GitHub
- URL: https://github.com/zhitrend/zhitrend_cpolar
- Owner: zhitrend
- Created: 2024-12-15T01:28:28.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-12-15T02:57:28.000Z (over 1 year ago)
- Last Synced: 2024-12-27T08:15:45.031Z (over 1 year ago)
- Language: Python
- Size: 40 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 内网穿透管理系统
一个基于 FastAPI 的内网穿透管理系统,支持用户认证、隧道管理等功能。
## 功能特性
- 用户认证(JWT)
- 隧道管理
- 实时监控
- 自定义域名支持
## 系统要求
- Python 3.7+
- pip(Python 包管理器)
- 现代浏览器(支持 ES6+)
## 安装部署
1. 克隆项目:
```bash
git clone [项目地址]
cd zhitrend_cpolar
```
2. 安装依赖:
```bash
pip install -r requirements.txt
```
3. 配置环境变量:
创建 `.env` 文件并设置以下变量:
```
SERVER_HOST=0.0.0.0
SERVER_PORT=8080
JWT_SECRET=your_jwt_secret_key
SERVER_URL=ws://localhost:8080
LOCAL_PORT=8000
PUBLIC_PORT=8888
```
4. 启动服务:
```bash
uvicorn server:app --host 0.0.0.0 --port 8080 --reload
```
## 验证指南
### 1. 用户注册和登录
1. 访问 http://localhost:8080/admin
2. 点击"注册",填写用户信息
3. 使用注册的账号登录系统
### 2. 创建隧道
1. 登录后,在管理界面填写隧道信息:
- 本地端口:要暴露的本地服务端口(如 8000)
- 公网端口:外部访问端口(如 8888)
- 自定义域名:(可选)
2. 点击"创建隧道"按钮
### 3. 验证隧道
1. **本地服务验证**:
```bash
# 启动一个测试服务在本地端口
python -m http.server 8000
```
2. **隧道连接验证**:
- 通过公网端口访问:http://localhost:8888
- 如果配置了自定义域名:http://your-domain:8888
3. **检查连接状态**:
- 在管理界面查看隧道状态
- 检查服务器日志:`tail -f server.log`
### 4. 常见问题排查
1. **端口被占用**:
```bash
# 检查端口占用
lsof -i :8000
lsof -i :8888
```
2. **连接失败**:
- 检查防火墙设置
- 确认本地服务是否正常运行
- 查看服务器日志中的错误信息
## API 文档
### 认证接口
- POST `/api/register` - 用户注册
- POST `/api/login` - 用户登录
### 隧道管理
- GET `/api/tunnels` - 获取隧道列表
- POST `/api/tunnels` - 创建新隧道
- DELETE `/api/tunnels/{client_id}` - 删除隧道
## 安全建议
1. 修改默认的 JWT 密钥
2. 使用强密码
3. 定期更新系统和依赖
4. 限制可用端口范围
5. 启用 HTTPS
## 监控和维护
1. **日志监控**:
```bash
tail -f server.log
```
2. **系统状态**:
- 访问管理界面查看实时状态
- 检查资源使用情况
3. **备份**:
定期备份用户数据和配置文件:
```bash
cp users.json users.json.backup
cp .env .env.backup
```
## 贡献指南
1. Fork 项目
2. 创建功能分支
3. 提交更改
4. 发起 Pull Request
## 许可证
[许可证类型]
## 联系方式
[联系信息]