内网穿透项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

84 lines
1.8 KiB

7 years ago
### Lanproxy
[README](README_en.md) | [中文文档](README.md)
Lanproxy is a reverse proxy to help you expose a local server behind a NAT or firewall to the internet. it supports any protocols over tcp (http https ssh ...)
### Features
- Secure tunnels to localhost
- Supports any protocols over tcp (http https ssh ...)
- Supports web config pages, easy to configure management
- Written by java netty framework, high performance
### What can I do with Lanproxy
- Demo without deploying
- Simplify mobile device testing
- Build webhook integrations with ease
- Run personal cloud services from your own private network
### Architecture
![lanproxy](lanproxy.png)
### Configure
#### Server
proxy-server config file is **conf/config.properties**
```properties
server.bind=0.0.0.0
#Plain tcp port
server.port=4900
#ssl
server.ssl.enable=true
server.ssl.bind=0.0.0.0
server.ssl.port=4993
server.ssl.jksPath=test.jks
server.ssl.keyStorePassword=123456
server.ssl.keyManagerPassword=123456
server.ssl.needsClientAuth=false
#web config pages
config.server.bind=0.0.0.0
config.server.port=8090
config.admin.username=admin
config.admin.password=admin
```
> Visit your config web service using url http://ip:8090
![webconfig](readme_en_client_list.png)
![webconfig](readme_en_proxy_list.png)
![webconfig](readme_en_stat_list.png)
#### client
proxy-client config file is **conf/config.properties**
```properties
#get from proxy-server client list page
client.key=
ssl.enable=true
ssl.jksPath=test.jks
ssl.keyStorePassword=123456
#your proxy server ip
server.host=
#proxy-server ssl port is 4993,plain port is 4900
server.port=4993
```
### Run
- Get release package from https://github.com/ffay/lanproxy/releases
- Java env is required
- Linux(mac)run bin/startup.sh
- Windows run bin/startup.bat