真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

為施秉等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計制作服務(wù),及施秉網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為做網(wǎng)站、網(wǎng)站建設(shè)、施秉網(wǎng)站設(shè)計,以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!

原理
ngrok 建立一個隧道,將主機A的http請求 傳遞給 主機B,從而實現(xiàn)內(nèi)網(wǎng)穿透。

ngrok分為client端(ngrok)和服務(wù)端(ngrokd)

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

實際使用中的部署如下:

圖中內(nèi)網(wǎng)主機上安裝客戶端。
公網(wǎng)主機 安裝服務(wù)端。
client public 則代表 訪問你電腦的用戶或者朋友。

實踐
現(xiàn)在都云時代,各種服務(wù)都能找到提供商。內(nèi)網(wǎng)穿透也是如此。ngrok服務(wù)端相當(dāng)麻煩,如果你只是簡單的穿透,又不是什么敏感信息,可以找到很多 服務(wù)提供商。

  • 下載客戶端

         根據(jù)你的個人電腦系統(tǒng)下載匹配的客戶端。下載地址: https://ngrok.com/download

  • 啟動

  1. ./ngrok http 4444 


ngrok by @inconshreveable                                                                                                                                                                                                     (Ctrl+C to quit)  Session Status                online Session Expires               7 hours, 59 minutes Version                       2.2.8 Region                        United States (us) Web Interface                 http://127.0.0.1:4040 Forwarding                    http://ada02116.ngrok.io -> localhost:4444 Forwarding                    https://ada02116.ngrok.io -> localhost:4444  Connections                   ttl     opn     rt1     rt5     p50     p90                               0       0       0.00    0.00    0.00    0.00

如果此時訪問 http://ada02116.ngrok.io 則等于訪問了 localhost:4444

自建ngrok服務(wù)
使用別人的服務(wù),存在一些限制。例如不穩(wěn)定、安全問題,費用昂貴等。因此可能需要自己搭建ngrok服務(wù)端。
自建服務(wù)需要具備的條件:
1、具備獨立ip的服務(wù)器。例如阿里云、騰訊云等。
2、需要域名。如果是國內(nèi)則需要備案。

  • 配置域名

  • 增加2條A記錄,指向你的服務(wù)器。

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

添加安全組。
開放3個端口。這里我選擇4443、4444、8081端口。
其中4443是ngrok自身通信使用。
4444 后面tcp端口轉(zhuǎn)發(fā)使用。
8081 則是http請求轉(zhuǎn)發(fā)使用。默認是80 但是這里80端口我分配給nginx了。
截圖中少截圖了4444的配置。

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

  • 編譯服務(wù)端。

         這里采用docker鏡像來實現(xiàn)。

  • 登錄服務(wù)器,創(chuàng)建文件夾 ngrok-server ,包含2個文件

         文件Dockerfile 內(nèi)容如下

FROM golang:1.7.1-alpine ADD build.sh / RUN apk add --no-cache git make openssl RUN git clone https://github.com/inconshreveable/ngrok.git --depth=1 /ngrok RUN sed -i "109,109s/tcp/tcp4/g" /ngrok/src/ngrok/server/tunnel.go RUN sed -i  "57,57s/tcp/tcp4/g" /ngrok/src/ngrok/conn/conn.go RUN sh /build.sh EXPOSE 8081 VOLUME [ "/ngrok" ] CMD [ "/ngrok/bin/ngrokd"]

文件build.sh內(nèi)容如下

export NGROK_DOMAIN="ngrok.xxxx.com" 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  make release-server GOOS=linux GOARCH=386 make release-client GOOS=linux GOARCH=amd64 make release-client GOOS=windows GOARCH=386 make release-client GOOS=windows GOARCH=amd64 make release-client GOOS=darwin GOARCH=386 make release-client GOOS=darwin GOARCH=amd64 make release-client GOOS=linux GOARCH=arm make release-client

需要修改的地方是
export NGROK_DOMAIN="ngrok.xxxx.com"
修改為你自己的域名。

  • 構(gòu)建鏡像。

         運行

docker build -t ngrok .

注意 最后一個 . 別少了。

  • 啟動容器

         運行

docker run -it  -p 8081:8081 -p 4443:4443 -p 4444:4444  -d ngrok /ngrok/bin/ngrokd -domain="ngrok.xxxx.com" -httpAddr=":8081"

到這里ngrok服務(wù)端已經(jīng)完成。

下載客戶端。
進入上面啟動的容器,下載對應(yīng)的客戶端。例如容器id c71b99a242fa運行 docker inspect c71 可以查看這個容器的具體信息。

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

進入圖中劃線的目錄下,再進入Bin下。

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

這里就是客戶端。對應(yīng)的不同系統(tǒng)的版本。
386代表是 32系統(tǒng)。amd64表示 64位。
linux和window無需多言。

下載命令可以通過很多方式。例如ftp或者scp命令。

scp -P 你的服務(wù)端端口 -r  root@你的服務(wù)端ip地址:/var/lib/docker/volumes/6e5383924c5caf1b1b61250f31aa002308dcb371ebd9a7efad2419e20107a362/_data/bin/darwin_amd64/ngrok  ./ngrok

這里要注意下權(quán)限,如果你不是用root,可能沒法子拷貝。

  • 配置客戶端

         創(chuàng)建配置文件 config.yml,其中內(nèi)容如下

server_addr: "ngrok.xxxx.com:4443" trust_host_root_certs: false tunnels:   webapp:    proto:      http: 8081    subdomain: test   tcp12345:     remote_port: 4444     proto:       tcp: 12345

這里配置了2個隧道。一個http的請求,一個tcp轉(zhuǎn)發(fā)。

  • 啟動客戶端

  1. ./ngrok  -config=config.yml start-all 


ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

在瀏覽器訪問 上圖中地址即可看到本地內(nèi)容。

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

增加tcp的轉(zhuǎn)發(fā)截圖。

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

測試下12345端口的功能。

  • 監(jiān)聽12345端口。

         執(zhí)行

nc -l 12345
  • 在其他電腦或者本地執(zhí)行

nc ngrok.xxxx.com 4444

這樣就可以了。輸入和輸出都會顯示。
如圖

ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透

上述就是小編為大家分享的ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


分享名稱:ngrok服務(wù)中怎么實現(xiàn)內(nèi)網(wǎng)穿透
文章轉(zhuǎn)載:http://weahome.cn/article/jjposj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部