LanProxy内网穿透工具
搭建
lanproxy 是一个将局域网个人电脑、服务器代理到公网的内网穿透工具
准备
- 公网服务器
- 两个域名,一个用作后台控制面板,一个用作反向代理查看域名
- 环境 Java, Maven, Docker, Nginx
公网服务器
docker run -d \
--name lanproxy-server \
-p 8090:8090 \
-p 4900:4900 \
-p 4993:4993 \
-p 9000-9100:9000-9100 \
biodwhu/lanproxy
输入默认账号密码 admin/admin.
修改配置. 则需要进入docker内docker exec -it 7f2 sh
cd ..
cd conf
cat config.properties
server.bind=0.0.0.0
server.port=4900
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
config.server.bind=0.0.0.0
config.server.port=8090
config.admin.username=admin
Nginx反向代理配置域名
准备域名确定可以访问
配置Nginx, 然后重启配置。
server
{
listen 80;
listen 443 ssl http2;
server_name proxy.569781231.xyz;
charset utf-8;
index index.php index.html index.htm default.php default.htm default.html;
root /www/wwwroot/proxy.569781231.xyz;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:8090;
client_max_body_size 35m;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
。。。
。。。
}
配置电脑的Nginx域名
server
{
listen 80;
server_name mac.569781231.xyz;
index index.php index.html index.htm default.php default.htm default.html;
root /www/wwwroot/mac.569781231.xyz;
charset utf-8;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
# 这里根据你的lanproxy配置,改成 外网接口 的值,在lanproxy后台网页上配置,后面配置
proxy_pass http://127.0.0.1:9000;
client_max_body_size 35m;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
配置后台服务
- 添加一个客户端
- 添加配置
内网电脑配置
我的电脑是Mac。确保有JDK环境
➜ java -version
java version "1.8.0_271"
Java(TM) SE Runtime Environment (build 1.8.0_271-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.271-b09, mixed mode)
Maven环境
➜ mvn -v
Apache Maven 3.6.1 (d66c9c0b3152b2e69ee9bac180bb8fcc8e6af555; 2019-04-05T03:00:29+08:00)
Maven home: /Users/inisl/software/maven
Java version: 1.8.0_271, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac"
Java方式启动lanproxy client
1. 克隆项目
git clone https://github.com/ffay/lanproxy.git lanproxy
2. 打包项目
$ cd lanproxy
$ mvn package
3. 修改配置文件信息
打包完成之后,客户端文件会出现在 distribution/proxy-client-0.1 目录下,打开之后有是个文件夹:bin、conf、lib和log,配置信息在 conf/config.properties 文件内,根据前面服务端的配置信息修改一下。
client.key=b51c135d0e284b0f88914f5f51ff0cbc
ssl.enable=true
ssl.jksPath=test.jks
ssl.keyStorePassword=123456
server.host=123.57.160.114
#proxy-server ssl默认端口4993,默认普通端口4900
#ssl.enable=true时这里填写ssl端口,ssl.enable=false时这里填写普通端口
server.port=4993
然后就可以启动客户端了。
➜ bin git:(master) ✗ ./startup.sh
Starting the proxy client ...started
PID: 13947
查看状态
数据统计