使用lanproxy搭建内网穿透,让你的内网更好玩!

往往现在大家对于怎么把本地的服务穿透到互联网,让互联网上其他人也可以访问得到,是一个刚需。

可以实现这个的有很多技术手段,比如花生壳等,但是我用下来,还是lanproxy最稳了,接下来我就来说一下怎么搭建,也是自己搭建过程的一个总结记录。

准备工作:

1、一台云服务器,用于搭建lanproxy服务端;

优惠上云,来阿里云·云小站​www.aliyun.com/minisite/goods?userCode=g1kq6hlr

2、一台本地的服务,用于搭建lanproxy客户端;

本教程中的系统环境:

Ubuntu 20.04 LTS

Lanproxy介绍

lanproxy是一个将局域网个人电脑、服务器代理到公网的内网穿透工具,支持tcp流量转发,可支持任何tcp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面...)。目前市面上提供类似服务的有花生壳、TeamView、GoToMyCloud等等,但要使用第三方的公网服务器就必须为第三方付费,并且这些服务都有各种各样的限制,此外,由于数据包会流经第三方,因此对数据安全也是一大隐患。

ffay/lanproxy​github.com/ffay/lanproxy

搭建步骤:

1、安装服务端:

跑这个程序需要JAVA环境,因此先安装JAVA环境:

sudo apt install openjdk-8-jdk

下载后,解压,修改配置文件

server的配置文件放置在conf目录中,配置 config.properties

server.bind=0.0.0.0 #与代理客户端通信端口 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= server.ssl.keyManagerPassword= #这个配置可以忽略 server.ssl.needsClientAuth=false #WEB在线配置管理相关信息 config.server.bind=0.0.0.0 config.server.port=8090 #上面的都可以默认,只需要改下面的用户名和密码,这个是你登录管理后台的用户名和密码 config.admin.username=admin config.admin.password=admin

修改完毕,直接启动:

启动脚本在解压目录的/bin 目录

./startup.sh

启动成功,直接访问::8090,使用上面配置中配置的用户名密码登录,进入如下代理配置界面

至此,服务端搭建完毕,在管理后台添加客户端,就可以了。

2、搭建客户端

同样需要JAVA环境,直接:

sudo apt install openjdk-8-jdk

下载客户端,开始配置客户端配置文件:

client的配置文件放置在conf目录中,配置 config.properties

其他啥也不用动,只需要配置client.key和server.host就行

#与在proxy-server配置后台创建客户端时填写的秘钥保持一致; client.key= ssl.enable=false ssl.jksPath=test.jks ssl.keyStorePassword= #这里填写实际的proxy-server地址;没有服务器默认即可,自己有服务器的更换为自己的proxy-server(IP)地址 server.host=lp.thingsglobal.org #proxy-server ssl默认端口4993,默认普通端口4900 #ssl.enable=true时这里填写ssl端口,ssl.enable=false时这里填写普通端口 server.port=4993

配置好后,启动!

./startup.sh

启动成功,就可以在管理后台,看到配置的客户端已经在线,说明已经成功!

3、结果验收

现在你就可以配置本地的端口映射到这台云服务器了,比如把本地22端口映射到云服务器的10022端口,你就可以直接通过云服务器远程ssh到本地服务器了!

注意事项:

1、一定要把端口都开了,切记!发现有问题,第一时间检查端口有没有开!

2、Ubuntu 20.04 LTS桌面版本默认没有装sshserver,导致我想了很久,为什么明明都通了,还不能ssh登录,直接安装:

sudo apt install openssh-server

看到最后的都是想搞的!必须有Bonus Time:

如何设置客户端的开机启动,应为客户端有时候要重启是经常的事。

方法:

1、新建一个文件:/etc/rc.local

内容如下:

#!/bin/sh sh /path/to/proxy-java-client-0.1/bin/startup.sh exit 0

2、设置文件可执行:

sudo chmod +x /etc/rc.local

设置完成,你可以手动重启一下客户端的服务器,看看是否会自动连接上服务器!