日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

概述

ngrok是一款開源的網絡服務,能夠為在本地運行的網絡應用提供公開的、基于互聯網的URL。這使得網絡開發人員可以將自己正在開發的網頁或者API暴露到互聯網上,方便進行演示、測試和共享等。

ngrok的工作原理

ngrok-內網穿透神器,開發人員必備

ngrok.NETwork

  • 首先,你需要在本地機器上啟動ngrok,并指定一個或多個端口。
  • ngrok會在你的本地機器上建立一個隧道,這個隧道連接到ngrok服務器。
  • ngrok服務器會給你的隧道分配一個公開的URL,并將所有發送到這個URL的請求轉發到你的本地機器上。
  • 你的本地應用程序處理請求并發送響應,響應通過ngrok隧道返回到原始請求者。

ngrok的主要特性

  • HTTP/HTTPS隧道:ngrok支持創建HTTP和HTTPS隧道,這意味著你可以使用它來分享Web應用、API等。
  • TCP隧道:除了HTTP和HTTPS之外,ngrok也支持創建TCP隧道,允許你分享任何類型的網絡服務,比如數據庫服務、SSH服務等。
  • Web界面:ngrok提供了一個本地的Web界面,你可以通過這個界面查看隧道的狀態,以及所有的HTTP請求和響應詳細信息。
  • 支持多平臺:ngrok支持linux、windows、mac等多種操作系統。

總之,ngrok是一款強大而靈活的工具,對于網絡開發人員來說,無論是進行本地開發,還是需要將本地服務暴露給互聯網用戶,都非常有幫助。

域名配置

申請一個自己的域名,假設用到的域名是ngrok.xxx.com,需要將ngrok.xxx.com和*.ngrok.xxx.com解析到自己的服務器上面

配置Go語言環境

ngrok是go語音寫的,服務器上需要配置go語言環境,相關配置命令如下:

  • 下載
#下載
wget https://storage.googleapis.com/golang/go1.9.1.linux-amd64.tar.gz
#解壓
tar -zxvf go1.9.1.linux-amd64.tar.gz
#移動到local目錄
mv go /usr/local
  • 創建軟連接
#創建軟連接
ln -s /usr/local/go/bin/* /usr/bin/

#測試是否配置成功
go env

安裝ngrok

  • 下載源碼
cd /usr/local
# 源碼參考:git clone https://Github.com/inconshreveable/ngrok.git
wget http://www.sunnyos.com/ngrok.zip
unzip ngrok.zip
  • 生成證書

如果已有ssl證書,則可以跳過這步

# 進入ngrok源碼的目錄
cd ngrok
# 設置域名,這里使用  ngrok.xxx.com
export NGROK_DOMAIN="ngrok.xxx.com"
# 然后依次執行以下命令即可
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
  • 編譯服務端
cd /usr/local/ngrok
GOOS=$GOOS GOARCH=$GOARCH make release-server
  • 編譯各大平臺客戶端
# 1、Linux 32位:linux 386
# 2、Linux 64位:linux amd64
# 3、Windows 32位:windows 386
# 4、Windows 64位:windows amd64
# 5、Mac OS 32位:darwin 386
# 6、Mac OS 64位:darwin amd64
# 7、Linux ARM:linux arm

# 對應以上各平臺,將$1、$2替換成對應的值
cd /usr/local/ngrok/
# GOOS=$1 GOARCH=$2 make release-client
# 如編譯Mac OS 64位客戶端
GOOS=darwin GOARCH=amd64 make release-client
  • 生成的客戶端文件示例
.../ngrok/bin$tree
.
|-- darwin_amd64
|   `-- ngrok
|-- go-bindata
|-- linux_386
|   |-- ngrok
|   `-- ngrokd
|-- linux_arm
|   `-- ngrok
`-- windows_amd64
    `-- ngrok.exe

啟動服務端

  • 如有自定義證書,提前創建軟連接,如certbot申請的免費證書,注意將xxx.com替換成自己的域名路徑
ln -s /etc/letsencrypt/live/xxx.com/fullchain.pem /usr/local/ngrok/server.crt
ln -s /etc/letsencrypt/live/xxx.com/privkey.pem /usr/local/ngrok/server.key
  • 開啟后臺運行,注意端口8001,8443和4443開啟防火墻或安全規則放行,端口也可自行定義,注意將-domain替換成自己的域名路徑
nohup /usr/local/ngrok/bin/ngrokd -domain="ngrok.xxx.com" -tlsCrt="/usr/local/ngrok/server.crt" -tlsKey="/usr/local/ngrok/server.key" -httpAddr=":8001" -httpsAddr=":8443" -tunnelAddr=":4443" -log-level="INFO" >/var/log/ngrok.log 2>&1 &

客戶端配置

將上面生成的客戶端可執行文件拷貝到需要內網穿透的設備上即可,這里直接說多域名和多TCP內網穿透配置文件,直接在客戶端同級目錄下創建ngrok.cfg配置文件,注意server_addr端口要與tunnelAddr對應,內容如下:

server_addr: ngrok.xxx.com:4443
tRust_host_root_certs: false
tunnels:
 weixin:
  subdomain: weixin
  proto:
   http: 8002
 about:
  subdomain: about
  proto:
   http: 192.168.0.1:80
 ssh:
  remote_port: 2020
  proto:
   tcp: 22

內網穿透

  • 啟動特定轉發
./ngrok -config ngrok.cfg -log ngrok.log start weixin

注:-log ngrok.log可以查看客戶端日志,可去掉

  • 將所有配置轉發
./ngrok -config ngrok.cfg -log ngrok.log start-all

啟動后出現online字樣說明內網穿透成功,如圖所示:

ngrok-內網穿透神器,開發人員必備

ngrok連接成功示例

分享到:
標簽:穿透 內網
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定