搭建ngrok服务器
-
配置go环境(如已配置,则忽略)
下载地址:
https://studygolang.com/dl/golang/go1.8.linux-amd64.tar.gz
解压:
tar -zxvf go1.8.linux-amd64.tar.gz
编辑配置文件
vi /etc/profile
文件末尾追加
export GOROOT=<你的go解压地址> export PATH=$PATH:$GOROOT/bin
让配置文件生效
source /etc/profile
验证go是否安装成功
go version
-
安装git(如已配置,则忽略)
yum install git
-
下载ngro源码
git clone https://github.com/inconshreveable/ngrok.git
-
生成证书,在ngrok根目录下执行
NGROK_DOMAIN="你的域名" 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 base.pem assets/client/tls/ngrokroot.crt
-
编译生成服务端
make release-server release-client
启动ngrok服务
./bin/ngrokd -tlsKey=server.key -tlsCrt=server.crt -domain="你的域名" -httpAddr=":80" -httpsAddr=":43"
生成客户端
windows
GOOS=windows GOARCH=amd64 make release-client
ngrok配置文件
文件名:ngrok.cfg
可以转发http协议、tcp协议
server_addr: "你的域名:4443"
trust_host_root_certs: false
tunnels:
<http协议配置名称>:
subdomain: <二级域名>
proto:
http: <本地端口>
<tcp协议配置名称>
remote_port: <转发后的端口>
proto:
tcp: <本地端口>
ngrok启动脚本
ngrok -config=ngrok.cfg start-all