1.安装go
sudo apt-get remove golang-go -y
cd /opt
sudo wget https://dl.google.com/go/go1.11.2.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.11.2.linux-amd64.tar.gz
#配置环境变量
source /etc/profile
1.安装git 和Golang,Golang,Go语言支持,因为Ngrok是基于Go语言编写的
apt-get install build-essential golang mercurial git -y
2.使用Git下载下载源码
git clone https://github.com/tutumcloud/ngrok.git ngrok
3.生成自签名证书
cd ngrok
NGROK_DOMAIN=“sum.free.idcfengye.com”
openssl genrsa -out base.key 1300
openssl req -new -x509 -nodes -key base.key -days 10000 -subj “/CN=$NGROK_DOMAIN” -out base.pemopenssl genrsa -out server.key 1300
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
cp server.crt assets/server/tls/snakeoil.crt
cp server.key assets/server/tls/snakeoil.key
4.编译server和client端
#linux服务端(bin/linux_386/ngrokd)
GOOS=linux GOARCH=386 make release-server
#linux客户端(路径 bin/linux_386/ngrok)
GOOS=linux GOARCH=386 make release-client
make release-server release-client
编译成功后在ngrok目录下的bin目录。
6.新建ngrok.cfg
vi ngrok.cfg
5.server端启动
./ngrok -subdomain sum.free.idcfengye.com -proto=http -config=ngrok.cfg 1300
./ngrokd -domain=“sum.free.idcfengye.com” -httpAddr=":1300"-config=ngrok.cfg
httpAddr、httpsAddr 分别是 ngrok 用来转发 http、https 服务的端口,可以随意指定。ngrokd 还会开一个 4443 端口用来跟客户端通讯(可通过 -tunnelAddr=”:xxx” 指定)。