未上传_ngrok搭建
安装依赖
yum install gcc mercurial git bzr subversion golang golang-pkg-windows-amd64 golang-pkg-windows-386 -y
下载源码
git clone https://github.com/inconshreveable/ngrok.git
安装证书
cd ngrok
mkdir cert
cd cert
export NGROK_DOMAIN="ngrok.dean0731.top"
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
编译服务端与客户端
切回ngrok目录,(GOARCH=386是32位软件,GOARCH=amd64是64位软件)
生成在ngrok/bin下
<!--linux服务端/客户端-->
GOOS=linux GOARCH=386 make release-server
GOOS=linux GOARCH=amd64 make release-server
GOOS=linux GOARCH=386 make release-client
GOOS=linux GOARCH=amd64 make release-client
<!--Mac OS服务端/客户端-->
GOOS=darwin GOARCH=386 make release-server
GOOS=darwin GOARCH=amd64 make release-server
GOOS=darwin GOARCH=386 make release-client
GOOS=darwin GOARCH=amd64 make release-client
<!--windows服务端/客户端-->
GOOS=windows GOARCH=386 make release-server
GOOS=windows GOARCH=amd64 make release-server
GOOS=windows GOARCH=386 make release-client
GOOS=windows GOARCH=amd64 make release-client
GOOS=linux GOARCH=amd64 make release-server
GOOS=windows GOARCH=amd64 make release-client
启动服务端
./bin/ngrokd -domain="ngrok.dean0731.top" -httpAddr=":60080" -httpsAddr=":60443" -tunnelAddr=":64443"
启动客户端
ngrok.cfg
<!--配置服务端连接地址,也就是基础域名。端口则与服务端-tunnelAddr配置相同-->
server_addr: "ngrok.dean0731.top:64443"
trust_host_root_certs: false
ngrok -config=ngrok.cfg -log=ngrok.log -subdomain=first 8080
-config指向配置文件,-log存放日志文件位置,-subdomain为自定义的域名前缀,8080为本地端口号。
评论已关闭