巅云智能建站平台搭建版(创业流派版)火爆上线,毕生受权!新增:文章智能收罗+全站真静态打包+都会分站+智能小法式+不法词过滤+H5自顺应+智能链词等功效功效概况
建站专提News

详解基于docker搭建lanproxy内网穿透办事

一佰互联网站开辟设想(www.taishanly.com) 颁布发表日期 2020-04-23 09:20:22 阅读数: 157

文档更新申明

2018年04月06日 v1.0

内网穿透信任是后端开辟者常常碰到的须要,可是怎样完成呢?实在有现成的办事:花生壳、ngrok等,可是,比来花生壳颁布发表,收费版的内网穿透将不撑持80端口映照了,而收费版的ngrok也不够不变,因而乎,我就起头需找新的处理计划了

本文利用了docker、nginx,要全数搞懂的话须要必然的后端根本(固然,根基上入个门就能够了),小我以为仍是有必然阅读门坎的,可是你若是只是想把办事搭建起来,根据步骤来做是不难的

1、概述

内网穿透实在便是用办事器做一其中转,将要求转发,本文记实了在 ubuntu 16.04 上,基于 docker 搭建的内网穿透办事

1.1、道理

内网穿透的道理以下图所示:

  1. 用户拜候咱们的办事器,这个办事器是有公网IP的,以是用户能够无压力拜候
  2. 办事器与本地电脑坚持长链接,当有要求的时辰,办事器将要求转发到咱们的本地电脑
  3. 本地电脑将呼应答复给办事器
  4. 办事器将呼应答复给用户

1.2、完成

要搭建内网穿透,咱们得完成两个使命

在公网能拜候的办事器上运转咱们的内网穿透办事; 在本地电脑上面运转内网穿透客户端。

固然,你能够本身根据道理完成一套,不过咱们有现成的三方开源东西,能够帮咱们完成这一套功效。这个便是咱们明天的配角 lanproxy 。

2、完成步骤

现成的东西已找到,接上去便是简略的搭建一下了,搭建进程分为办事端和本地电脑端

2.1、办事端流程:

  1.  在办事器上装置 dockernginx
  2. 在办事器上经由过程 docker 运转 lanproxy server
  3. 将域名剖析到咱们的办事器
  4. 设置装备摆设 nginx 反向代办署理
  5. 翻开 lanproxy 背景页面,增加客户端和映照信息

2.2、本地电脑流程:

  1. 运转要被映照的办事
  2. 运转本地电脑映照客户端法式( lanproxy client )

上面起头办事真个设置装备摆设:

2.1.1、在办事器上装置 dockernginx

nginx 的装置是很简略的,一个号令就搞定

docker 也能够利用剧本装置,也是一句号令的事

# 1、装置nginx$ sudo apt-get install nginx# 2、装置docker$ curl -fsSL http://get.docker.com | bash -s docker --mirror Aliyun# 可选步骤,建docker源点窜成阿里云$ sudo mkdir -p /etc/docker$ sudo tee /etc/docker/daemon.json <<-"EOF"{ # 上面的链接须要到阿里云背景检查,每小我的加快地点是不一样的 "registry-mirrors": ["http://abcdefg.mirror.aliyuncs.com"]}EOF$ sudo systemctl daemon-reload$ sudo systemctl restart docker

2.1.2 在办事器上经由过程 docker 运转 lanproxy server

办事装置终了以后,就能够用docker跑办事了,能够本身写一个 Dockerfile ,这里,我就把本身写的放出来吧,大师能够拿去用着,gayhub 传递门

这里我点窜了 proxy-server-0.1 的局部文件,由于在 docker 中,须要保管办事前台运转,不然容器会被 kill 掉,而官网默许的启动剧本是背景启动的,把 bin/startup.sh 外面的启动号令点窜成前台启动便可(去掉nohub和后面的1&2 &)

# 1、克隆docker设置装备摆设,若是要点窜设置装备摆设能够编辑 conf/config.properties 文件,设置装备摆设体例见lanproxy官网$ git clone http://github.com/fengqiangboy/lanproxy-docker.git lanproxy-docker# 2、build docker镜像$ cd lanproxy-docker$ sudo bash build_container.sh# 3、运转docker容器$ bash run_container.sh

2.1.3 将域名剖析到咱们的办事器

须要两个域名,一个用来拜候咱们的 lanproxy 背景,一个用来拜候咱们须要内网穿透的办事

比方:

lanproxy.fengqiangboy.com -> 用来拜候lanproxy后端test.fengqiangboy.com -> 用来拜候内网穿透办事

2.1.4设置装备摆设 nginx 反向代办署理

将两个域名剖析到咱们的办事器以后,再经由过程反向代办署理,将其反代到咱们的lanproxy端口

上面设置装备摆设的终究结果便是:

  1. 咱们能够经由过程 lanproxy.fengqiangboy.com 拜候 lanproxy
  2. 咱们能够经由过程 test.fengqiangboy.com 拜候本地电脑映照的办事

lanproxy.fengqiangboy.com.conf:

server {  listen 80;  # 这里利用本身的域名  server_name lanproxy.fengqiangboy.com;  charset utf-8;  location / {    proxy_set_header  X-Real-IP $remote_addr;    proxy_set_header  Host   $http_host;    # 这里根据你的lanproxy设置装备摆设,改成 config.server.port的值    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";  }}

test.fengqiangboy.com.conf:

server {  listen 80;  # 这里利用本身的域名  server_name test.fengqiangboy.com;  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:50000;    client_max_body_size 35m;    proxy_http_version 1.1;    proxy_set_header Upgrade $http_upgrade;    proxy_set_header Connection "upgrade";  }}

2.1.5 翻开 lanproxy 背景页面,增加客户端和映照信息

  1. 翻开 http://lanproxy.fengqiangboy.com
  2. 用后面 conf/config.properties 文件中设置装备摆设的账号和暗码登录背景
  3. 增加一个客户端,记着客户端密钥
  4. 增加完客户端以后增加一个设置装备摆设,设置装备摆设以下图

到此,办事真个设置装备摆设就完成了。上面起头本地电脑的设置装备摆设。

2.2.1 运转要被映照的办事

既然要把内网的办事映照进来,那起首就要把本地电脑的办事跑起来吧,不然拿甚么来映照?这里就良多操纵体例了,各个说话都不一样,把本身的办事跑起来就行

2.2.2 运转本地电脑映照客户端法式( lanproxy client )

这里有两个体例,一个体例是利用官网供给的 go 版本,不须要装置 java 环境在本地电脑上,别的一种是利用官网供给的 java 版本,这里我利用 java 版本的。

克隆 lanproxy 代码到本地电脑

$ git clone http://github.com/ffay/lanproxy.git lanproxy

打包 lanproxy

打包之前须要确保你装置了 maven

$ cd lanproxy$ mvn package

点窜设置装备摆设文件信息

打包完成以后,客户端文件会呈此刻 distribution/proxy-client-0.1 目次下,翻开以后有是个文件夹: binconfliblog ,设置装备摆设信息在 conf/config.properties 文件内,根据后面办事真个设置装备摆设信息点窜一下。

# 这里是在lanproxy背景设置装备摆设的密钥client.key=key# 设置装备摆设ssl信息,根据办事真个设置装备摆设填写ssl.enable=truessl.jksPath=test.jksssl.keyStorePassword=123456# 办事器的ipserver.host=163.162.161.160#根据办事端设置装备摆设,开启ssl的话填写ssl的端口,不然填写通俗端口server.port=4993

启动客户端

客户端信息设置装备摆设完成以后就能够启动客户端了

# mac/linux利用这个$ bash bin/startup.sh# Windows 间接运转 bin/startup.bat

拜候测试

根据后面的设置装备摆设,这时辰咱们应当是能够经由过程 test.fengqiangboy.com 来拜候咱们的内网办事了的,用阅读器翻开看看

3、一点补充

为甚么要利用docker?

利用docker首要是为了不粉碎办事端环境,只是给 lanproxy 装置了一个 jdk8 的环境,不影响其余办事持续运转;并且利用 docker 还能够很便利的转移到别的机械上面安排,只需把 Dockerfile 拷贝曩昔就能够了。

如许搭建,办事重视启的话须要手动重启 lanproxy 吗?

不须要,在办事端启动 docker 容器的剧本下,我增加了 --restart unless-stopped 参数,只需 docker 办事启动了,容器就会跟着启动,若是你不须要这个须要,能够去掉这个参数

为甚么不必花生壳?

前未几看到花生壳的通知布告,说从4月1日起头,收费版将不供给80端口映照,现实上我用这个映照最大的须要便是做微信调试,去掉80端口就不能做微信调试了,不知足我的须要了,固然,花生壳仍是不错的,若是能知足你的须要,仍是能够省时省力完成内网穿透的

以上便是本文的全数内容,但愿对大师的进修有所赞助,也但愿大师多多撑持网页设想。

一佰互联是天下着名建站品牌办事商,咱们有九年、网站建造、网页设想、php开辟和域名注册及假造主机办事经历,供给的办事更是天下着名。最近几年来还整合团队上风自立开辟了可视化多用户”“3.0平台版,拖拽排版网站建造设想,轻松完成pc站、手机微网站、小法式、APP一体化全网营销网站扶植 ,已胜利的为天下上百家收集公司供给自助建站平台搭建办事。更多资讯:tags标签

相干消息more

23
04月
Tomcat之web利用的目次构成布局_能源

甚么是web利用的构成布局?简略的说便是若何寄存网站中的各个文件。开辟web利用时,差别范例的文件有严酷的寄存法则,文件放错地位时能够会使w... >>概况

24
07月
导购:美国主机侦察评测比拟排名,保举asp美

美国主机侦察 带你一路玩转美国主机空间,经由过程美国主机比拟,美国主机评测推出美国主机排名!保举好的美国主机租用网,可做为美国主机导购参考以据!... >>概况

14
04月
重庆建网站,网站扶植阐发网站红利形式

重庆建网站,网站扶植阐发网站红利形式?做网站扶植的目标便是为了红利,那末红利的详细形式上风甚么样的呢?上面网奇网站扶植的小编详细将网站红利的... >>概况

15
04月
高端网站扶植-小我扶植网站前要斟酌的几个题目

此刻跟着互联网和电子商务的成长,各种网站愈来愈多,几近天天都有良多新的小我和企业网站建成,让人目炫狼籍,但好的网站却很少。就由于如许,作为个... >>概况

高端网站扶植

美工统筹SEO,为企业电子商务营销助力!

德律风:

023-85725751
建站

产物

域名注册 假造主机 云办事器 企业邮局
智能建站 APP打包 微站/小法式 创业平台
网站推行 媒体营销 智能收罗 AI机械人
400德律风 短信营销 店销机械人
私家定制 流派网站