树莓派内网穿透 Ngrok

部署准备

    1.vps主机一台(我用的是搬瓦工vps,一年100多点,很实惠)
    2. 顶级域名一个 并泛解析到vps的独立ip地址
    3.树莓派一个

go语言安装 树莓派和vps安装go的方式有所不同,树莓派下需要编译

  对于64位Linux:
 $ wget https://storage.googleapis.com/golang/go1.4.1.linux-amd64.tar.gz
 对于32位Linux:
 $ wget https://storage.googleapis.com/golang/go1.4.1.linux-386.tar.gz
 在/usr/local下安装程序
  $ sudo tar -xzf go1.4.1.linux-xxx.tar.gz -C /usr/local
 在/etc/profile中添加系统范围的PATH环境变量。
 $ sudo vi /etc/profile
 export PATH=$PATH:/usr/local/go/bin
检查Go语言的版本
$ go version

树莓派安装go参考 http://www.jianshu.com/p/4c79aec8b5e7

ngrok安装与配置

在vps上下载ngrok源码  xxxx.com换成自己的域名
 git clone https://github.com/inconshreveable/ngrok.git ~/ngrok
 export GOPATH=~/ngrok/
 export NGROK_DOMAIN="xxxx.com"
 cd ~/ngrok

生成证书,Ngrok会使用此证书加密通讯
openssl genrsa -out base.key 2048
openssl req -new -x509 -nodes -key base.key -days 10000 -subj "/CN=$NGROK_DOMAIN" -out base.pem
openssl genrsa -out server.key 2048
openssl req -new -key server.key -subj "/CN=$NGROK_DOMAIN" -out server.csr
openssl x509 -req -in server.csr -CA base.pem -CAkey base.key -CAcreateserial -days 10000 -out server.crt

将证书文件复制到指定位置
cp rootCA.pem assets/client/tls/ngrokroot.crt -i
cp server.crt assets/server/tls/snakeoil.crt -i
cp server.key assets/server/tls/snakeoil.key -i

编译服务器端与客户端
服务器端为linux-x86-64   
export GOOS=linux
export GOARCH=386
make release-server
客户端为arm
export GOOS=linux
export GOARCH=arm
make release-client

~/ngrok/bin目录下会产生两个文件如图

QQ截图20170731210641.png

linux_386是服务器用的文件, linux _arm是树莓派上用的文件

vps上部署ngrok服务

 cp ~/ngrok/bin/linux_386/ngrokd /usr/bin/
 单独开个线程
 yum install -y screen
 screen -S ngrokd
 sudo ngrokd -domain="xxxx.com" -httpAddr=":80" -httpsAddr=":443"
如果80  443被的程式占用的话,修改端口号即可,或者kill掉占用进程

树莓派上部署ngrok客户端

      在树莓派上新建个文件夹sudo mkdir  ~/ngrok  
     cd ~/ngrok
     sudo nano ngrok.cfg
     里面加入 server_addr: xxxxxx.com:4443
                     trust_host_root_certs: false
      然后ctrl+o ent 保存  ctrl+X 离开
      
     把在vps上编译的liunx_arm里面的ngrok文件弄到树莓派~/ngrok里面。
      sudo  ./ngrok -subdomain test -proto=http -config=ngrok.cfg 80
树莓派内网穿透 Ngrok_第1张图片
QQ截图20170731212603.png
树莓派内网穿透 Ngrok_第2张图片
QQ截图20170731212711.png

你可能感兴趣的:(树莓派内网穿透 Ngrok)