Skip to content

BloretCrew/OnlineClient

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

自定义内网穿透服务器

一个基于Python实现的简单内网穿透解决方案,无需依赖第三方服务如ngrok。

功能特点

  • 纯Python实现,无额外依赖
  • 支持端口转发配置
  • 提供Web界面管理穿透服务
  • 跨平台兼容(Windows/Linux/macOS)

系统架构

  • 服务器端:运行在具有公网IP的服务器上,监听指定端口并转发流量
  • 客户端:运行在本地内网环境,连接到服务器并转发本地服务
  • Web界面:用于启动/停止穿透服务和显示连接状态

部署步骤

1. 环境准备

  • Python 3.7+
  • 公网服务器(需要有固定IP和开放端口权限)
  • 本地内网服务(需要被穿透的服务)

2. 安装依赖

pip install -r requirements.txt

3. 服务器配置

3.1 修改配置

编辑 app.py 文件,修改默认配置:

DEFAULT_CONFIG = {
    'local_host': '127.0.0.1',    # 本地服务IP
    'local_port': 5000,           # 本地服务端口
    'remote_host': '0.0.0.0',     # 服务器监听IP(0.0.0.0表示所有接口)
    'remote_port': 8080           # 服务器监听端口
}

3.2 启动服务器

python app.py

3.3 访问Web管理界面

打开浏览器访问:http://服务器IP:5000

4. 客户端配置

4.1 修改客户端配置

编辑 local_client.py 文件,设置服务器信息:

client.set_config(
    remote_host='公网服务器IP',  # 替换为你的服务器公网IP
    remote_port=8080,            # 服务器监听端口
    local_host='127.0.0.1',      # 本地服务IP
    local_port=5000              # 本地服务端口
)

4.2 启动客户端

python local_client.py

使用方法

  1. 在Web界面点击"启动穿透"按钮
  2. 查看显示的内网穿透地址
  3. 通过该地址访问内网服务
  4. 不需要时点击"停止穿透"按钮

注意事项

  1. 防火墙设置:确保服务器防火墙已开放配置的remote_port端口
  2. 端口转发:如果服务器在路由器后,需要配置端口转发将外部端口映射到服务器
  3. 安全性:此为基础实现,生产环境使用需添加认证和加密机制
  4. 多端口支持:如需转发多个端口,可修改代码支持多实例或配置多个转发规则

故障排除

  • 无法访问Web界面:检查服务器IP、端口是否正确,防火墙是否开放
  • 连接服务器失败:确认服务器是否启动,网络是否可达
  • 转发失败:检查本地服务是否正常运行,端口是否正确

自定义开发

  • 如需添加认证,可在服务器端实现简单的令牌验证
  • 如需支持HTTPS,可集成SSL/TLS配置
  • 可扩展配置文件支持,实现更灵活的端口转发设置

About

Bloret Launcher 联机模块服务器,内网穿透服务器。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages