ngrok_from_lwen_x.md
阿里云镜像快照
ngrok_from_lwen_x
服务器端
服务器根目录位置:
/usr/local/src/ngrok
运行服务器
服务器根目录下- 配置$NGROK_DOMAIN
NGROK_DOMAIN=ngrok.bxxxx.top
- 运行
bin/ngrokd -domain="$NGROK_DOMAIN" -httpAddr=":80"
监听端口为80
- 配置$NGROK_DOMAIN
编译客户端
- 进入ngrok目录
cd /usr/local/src/ngrok
- 设置参数
win32:GOOS=windows GOARCH=386
win36:GOOS=windows GOARCH=amd64
osX:GOOS=darwin GOARCH=amd64
- 编译
win32:GOOS=windows GOARCH=386 make release-client
win36:GOOS=windows GOARCH=amd64 make release-client
osX:GOOS=darwin GOARCH=amd64 make release-client
- 生成客户端位置
/usr/local/src/ngrok/bin
运行客户端
- 客户端目录:
/usr/local/src/ngrok/bin
- 下载对应客户端到本地
可运行文件名ngrok.exe
- 配置参数文件
文件名:ngrok.cfg
server_addr: "ngrok.bxxxx.top:443"
trust_host_root_certs: false
- 运行
- cmd下,切换到’ngrok.exe’所在目录
ngrok -config=ngrok.cfg -subdomain=mike 80
- 监听80端口
- cmd下,切换到’ngrok.exe’所在目录
搭建服务器
安装git
克隆ngrok项目
cd /usr/local/src/
git clone https://github.com/inconshreveable/ngrok.git
export GOPATH=/usr/local/src/ngrok/
export NGROK_DOMAIN="ngrok.bxxxx.top"
- 生成自签名SSL证书,ngrok为ssl加密连接
cd ngrok
openssl genrsa -out rootCA.key 2048
openssl req -x509 -new -nodes -key rootCA.key -subj "/CN=$NGROK_DOMAIN" -days 5000 -out rootCA.pem
openssl genrsa -out device.key 2048
openssl req -new -key device.key -subj "/CN=$NGROK_DOMAIN" -out device.csr
openssl x509 -req -in device.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out device.crt -days 5000
cp rootCA.pem assets/client/tls/ngrokroot.crt
cp device.crt assets/server/tls/snakeoil.crt
cp device.key assets/server/tls/snakeoil.key
GOOS=linux GOARCH=386
make clean
make release-server
域名配置
域名需要设置泛解析
例如:
$NGROK_DOMAIN 对应的域名为’ngrok.bxxxx.top’
则域名解析中需要添加’*.ngrok.bxxxx.top’