背景介紹:之前使用的ngrok服務掛了
搭建環境 Ubuntu Server 16.04 LTS 64位
安裝git
sudo apt-get install build-essential golang mercurial git
擷取源碼
git clone https://github.com/tutumcloud/ngrok.git ngrok
產生替換認證
cd ngrokNGROK_DOMAIN="ngrok.itcuc.cc"openssl genrsa -out base.key 2048openssl req -new -x509 -nodes -key base.key -days 10000 -subj "/CN=$NGROK_DOMAIN" -out base.pemopenssl genrsa -out server.key 2048openssl req -new -key server.key -subj "/CN=$NGROK_DOMAIN" -out server.csropenssl x509 -req -in server.csr -CA base.pem -CAkey base.key -CAcreateserial -days 10000 -out server.crtcp base.pem assets/client/tls/ngrokroot.crt
編譯源碼(產生用戶端)
sudo make release-server release-client
產生windows下的用戶端
GOOS=windows GOARCH=amd64 make release-client
啟動服務
sudo ./bin/ngrokd -tlsKey=server.key -tlsCrt=server.crt -domain="ngrok.itcuc.cc" -httpAddr=":8081" -httpsAddr=":8082"
佈建網域名解析
image.png
配置nginx代理
在nginx.conf中加入
server { listen 80; server_name *.ngrok.itcuc.cc ngrok.itcuc.cc; location / { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host:8081; proxy_set_header X-Nginx-Proxy true; proxy_set_header Connection ""; proxy_pass http://127.0.0.1:8081; } }
reload Nginx
驗證安裝
在瀏覽器開啟http://ngrok.itcuc.cc/,如果出現Tunnel ngrok.itcuc.cc:8081 not found就表示安裝好了
安裝用戶端
下載第5步儲存的windows用戶端
在同目錄建立ngrok設定檔,名稱隨便,例如ngrok.conf
在設定檔中加入代碼
server_addr: ngrok.itcuc.cc:4443trust_host_root_certs: false
建立bat檔案,加入代碼
cd %cd%ngrok -config=ngrok.cfg -subdomain=wxtest 8080
subdomain是你要使用的網域名稱和連接埠
沒了