# lanproxy-server **Repository Path**: zhu260824/lanproxy-server ## Basic Information - **Project Name**: lanproxy-server - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-07-03 - **Last Updated**: 2026-07-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # lanproxy-server lanproxy 是一个将局域网个人电脑、服务器代理到公网的内网穿透工具,支持 TCP 流量转发,可支持任何 TCP 协议。 ## 项目简介 lanproxy-server 是 lanproxy 的服务端组件,采用 Java 开发,基于 Netty 实现高性能网络通信。项目采用 Maven 进行构建和管理依赖。 ## 技术栈 - **Java** - 后端开发语言 - **Netty** - 高性能网络通信框架 - **Maven** - 项目构建工具 - **Layui** - 前端 UI 框架 - **SLF4J + Log4j** - 日志框架 ## 项目结构 ``` lanproxy-server/ ├── proxy-common/ # 公共组件 │ └── src/main/java/org/fengfei/lanproxy/common/ │ ├── Config.java # 配置管理 │ ├── JsonUtil.java # JSON 工具类 │ ├── LangUtil.java # 语言工具类 │ └── container/ # 容器接口 ├── proxy-protocol/ # 协议定义 │ └── src/main/java/org/fengfei/lanproxy/protocol/ │ ├── Constants.java # 常量定义 │ ├── IdleCheckHandler.java # 空闲检测处理器 │ ├── ProxyMessage.java # 代理消息 │ ├── ProxyMessageDecoder.java # 消息解码器 │ └── ProxyMessageEncoder.java # 消息编码器 ├── proxy-server/ # 服务端核心 │ └── src/main/java/org/fengfei/lanproxy/server/ │ ├── ProxyServerContainer.java # 服务容器 │ ├── ProxyChannelManager.java # 通道管理 │ ├── SslContextCreator.java # SSL 上下文创建 │ ├── config/ # 配置模块 │ │ ├── ProxyConfig.java # 代理配置 │ │ └── web/ # Web 配置管理 │ ├── handlers/ # 处理器 │ │ ├── ServerChannelHandler.java # 服务端通道处理 │ │ └── UserChannelHandler.java # 用户通道处理 │ └── metrics/ # 监控指标 │ ├── Metrics.java # 指标数据 │ ├── MetricsCollector.java # 指标收集器 │ └── handler/ # 指标处理器 └── distribution/ # 发行版本 └── proxy-server-0.1/ ├── bin/ # 启动脚本 ├── conf/ # 配置文件 ├── lib/ # 依赖库 ├── logs/ # 日志目录 └── webpages/ # Web 前端页面 ``` ## 功能特性 - **TCP 端口转发** - 支持将内网服务端口映射到公网 - **SSL/TLS 支持** - 支持加密传输 - **心跳检测** - 自动检测连接状态 - **Web 管理界面** - 提供可视化配置管理 - **流量监控** - 实时监控流量和连接数 - **多客户端支持** - 支持多个客户端同时连接 ## 快速开始 ### 环境要求 - JDK 1.8+ - Maven 3.0+ ### 编译项目 ```bash # 克隆项目后,进入项目目录 cd lanproxy-server # 使用 Maven 编译 mvn clean package # 或者编译指定模块 mvn clean install -pl proxy-common,proxy-protocol,proxy-server ``` ### 配置说明 编辑 `proxy-server/src/main/resources/config.properties` 或发行版中的配置文件: ```properties # 服务器绑定地址 server.bind=0.0.0.0 # 服务端口 server.port=8090 # 配置服务器绑定地址 config.server.bind=0.0.0.0 # 配置服务器端口(Web 管理界面) config.server.port=8091 # 管理用户名 config.admin.username=admin # 管理密码 config.admin.password=admin ``` ### 启动服务 ```bash # Linux/Mac chmod +x distribution/proxy-server-0.1/bin/startup.sh ./distribution/proxy-server-0.1/bin/startup.sh # Windows distribution\proxy-server-0.1\bin\startup.bat ``` ### 访问管理界面 启动成功后,访问 `http://localhost:8091` 进入 Web 管理界面,默认用户名和密码均为 `admin`。 ## 客户端配置 服务端配置完成后,需要在内网机器上运行客户端程序。客户端从服务端获取代理配置,将内网服务暴露到公网。 ## 安全说明 1. 修改默认的管理用户名和密码 2. 生产环境建议启用 SSL/TLS 加密 3. 妥善保管客户端密钥 ## 许可证 本项目采用 Apache License 2.0 许可证开源。