《微信本地调试》一文中,小编提到了使用ngrok、natapp和花生壳进行内网穿透。可是,想要使用自定义域名,都是要收费的。java
本文中,咱们要搭建一个免费的内网穿透服务器。内网穿透服务器,可选的软件有lanproxy、frp、n2n等等,今天咱们选择的是lanproxy。node
原文地址:http://www.voidking.com/dev-lanproxy/nginx
一、一台公网服务器(阿里云)(运行proxy-server)。
二、一台内网pc或服务器(用来被穿透的本地电脑)(运行proxy-client)。git
一、删除自带jdkgithub
rpm -e --nodeps `rpm -qa | grep java`
二、查看yum库中有哪些jdk版本。yum search java | grep jdk
web
三、选择java-1.8.0-openjdk-devel.x86_64 : OpenJDK Development Environment版本进行安装。vim
yum install java-1.8.0-openjdk-devel.x86_64
segmentfault
默认安装目录为/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64
。安全
四、配置环境变量vim /etc/profile
ruby
在最后添加:
#set java environment JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.141-1.b16.el7_3.x86_64 JRE_HOME=$JAVA_HOME/jre CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin export JAVA_HOME JRE_HOME CLASS_PATH PATH
五、让修改当即生效source /etc/profile
六、查看安装结果java
,javac
,java -version
一、访问lanproxy下载地址,下载proxy-server-0.1.zip,上传到公网服务器(阿里云)。
或者,直接在服务器上下载wget https://github.com/ffay/lanproxy/files/1274739/proxy-server-0.1.zip
curl -C - -O -L https://github.com/ffay/lanproxy/files/1274739/proxy-server-0.1.zip
二、解压安装unzip proxy-server-0.1.zip
mv proxy-server-0.1 /usr/local/
三、修改配置文件vim /usr/local/proxy-server-0.1/conf/config.properties
修改管理员的用户名和密码(不修改直接使用默认)。
四、启动服务cd /usr/local/proxy-server-0.1/bin
chmod +x startup.sh
./startup.sh
五、访问 http://host_ip:8090 ,便可看到登陆界面(lanproxy后台)。(host_ip为阿里云公网ip 或者 也可使用域名访问)
(若是你改端口了,就用自定义的端口)访问lanproxy后台,而后按照以下图示操做。
到此为止,咱们在lanproxy后台配置好了lanproxy客户端(被穿透的本地电脑),而且配置了一台客户端的密钥和穿透端口。须要注意的是,以上用到的端口都须要在防火墙中对外开放(我用的阿里云,须要在阿里云后台配置安全组策略)。
一、添加域名解析local
到公网ip。
二、在nginx虚拟主机配置目录中,添加 web.xingfeng.cool
,内容以下:
{ server { listen 80; server_name web.xingfeng.cool; location / { proxy_pass http://127.0.0.1:8090; } } }
三、测试nginx./nginx -t
,也许会提示缺乏目录,那么新建目录。mkdir -p /usr/local/nginx/data/client_body_temp
mkdir -p /usr/local/nginx/data/proxy_temp
四、重启nginx
配置完成后重启 nginx -s reload
,你就能够可使用你配置代理域名服务访问你阿里云的本地的服务了
之后若是再有本地的服务须要穿透出去的,能够按照相同的方法进行配置
五、访问 web.xingfeng.cool ,便可看到lanproxy后台登陆界面。
一、登陆lanproxy,添加客户端,输入客户端备注名称,生成随机密钥,提交添加。
二、客户端列表中,配置管理中,都会出现新添加的客户端。
三、单击配置管理中的客户端,添加配置(每一个客户端能够添加多个配置)。
接下来咱们须要配置客户端(被穿透的本地电脑)。
一、访问lanproxy下载地址,下载proxy-java-client-0.1,解压到喜欢的目录。
二、进入proxy-java-client-0.1/conf目录,修改config.properties为:
#与在proxy-server配置后台建立客户端时填写的密钥保持一致;没有服务器能够登陆 https://lanproxy.org/ 建立客户端获取秘钥 client.key=7533f855416741d88732954991668715 ssl.enable=true ssl.jksPath=test.jks ssl.keyStorePassword=123456 #这里填写实际的proxy-server地址;没有服务器默认便可,本身有服务器的更换为本身的proxy-server(IP)地址 server.host=local.voidking.com #proxy-server ssl默认端口4993,默认普通端口4900 #ssl.enable=true时这里填写ssl端口,ssl.enable=false时这里填写普通端口 server.port=4993
三、进入proxy-java-client-0.1/bin目录,执行 ./startup.sh,便可启动lanproxy客户端。
四、访问地址 http://web.xingfeng.cool:50000 ,便可看到本地(用来被穿透的本地电脑)访问客户端80端口相同的页面。
至此,代理成功!