linux搭建ngrok

环境准备 一台Linux服务器 一个域名(国内服务器需备案)
域名解析配置
关闭@解析
新建A dev 你的服务器地址
新建A dev.* 你的服务器地址
准备一个端口 阿里云需要配置安全组默认可4443 也可自定义


全局操作/opt目录
git
git依赖环境
yum -y install zlib-devel openssl-devel perl hg cpio expat-devel gettext-devel curl curl-devel perl-ExtUtils-MakeMaker hg wget gcc gcc-c++
git2.6
wget https://www.kernel.org/pub/software/scm/git/git-2.6.0.tar.gz
解压编译
tar zxvf git-2.6.0.tar.gz
./configure --prefix=/opt/git
make
make install
创建git软连接
ln -s /opt/git/* /usr/bin/


go 64位
wget https://www.golangtc.com/static/go/1.9.2/go1.9.2.linux-amd64.tar.gz
tar -zxvf go1.9.2.linux-amd64.tar.gz
ln -s /opt/go/bin/* /usr/bin/


克隆ngrok项目 
git clone https://github.com/inconshreveable/ngrok.git
export GOPATH=/opt/ngrok/
export NGROK_DOMAIN="dev.域名全称"


删除已有证书 防止入坑
rm -rf assets/client/tls/ngrokroot.crt
rm -rf assets/server/tls/snakeoil.crt
rm -rf assets/server/tls/snakeoil.key


生成证书 
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 server.key 2048
openssl req -new -key server.key -subj "/CN=$NGROK_DOMAIN" -out server.csr
openssl x509 -req -in server.csr -CA rootCA.pem -CAkey rootCA.key -CAcreateserial -out server.crt -days 5000


将生成证书放入位置
cp rootCA.pem assets/client/tls/ngrokroot.crt
cp server.crt assets/server/tls/snakeoil.crt
cp server.key assets/server/tls/snakeoil.key


vim /usr/local/ngrok/src/ngrok/log/logger.go
国内服务器需要 log "github.com/keepeye/log4go"


go编译客户端 可以用go env查看系统
cd /opt/go/src
GOOS=linux GOARCH=amd64 ./make.bash
cd /opt/ngrok/
GOOS=linux GOARCH=amd64 make release-server


Windows的客户端编译
cd /opt/go/src
GOOS=windows GOARCH=amd64 ./make.bash
cd /opt/ngrok/
GOOS=windows GOARCH=amd64 make release-client


服务器启动 httpAddr http访问端口 这个可随意 到时候穿透地址 tunnelAddr为隧道端口 默认为4443 自己改变才需要配置 我这里用了8080
/opt/ngrok/bin/ngrokd -domain="$NGROK_DOMAIN" -httpAddr=":80" -tunnelAddr=:8080


windows配置文件 这里server_addr的端口与tunnelAddr保持一致即可
server_addr: dev.域名:8080
trust_host_root_certs: false


windows启动
ngrok -config=ngrok.cfg -subdomain=test 8080


用我师傅的话来说 主要在于 证书 编译 然后客户端下载windows就好了。

用阿里云的坑 安全组 防火墙(这个有的服务器关闭的 有的是开的 开的注意端口放行)

下一篇写pm2 守护ngrok

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值