【導(dǎo)語】:inlets 是一個基于 WebSocket 隧道實現(xiàn)的內(nèi)網(wǎng)穿透工具,可以將本地服務(wù)暴露到公網(wǎng)。
簡介
inlets 利用反向代理和 Websocket 隧道,將內(nèi)部或開發(fā)中的服務(wù)通過出口節(jié)點暴露到公網(wǎng)。出口節(jié)點可以是一個 VPS,也可以是任何帶有公網(wǎng) IPv4 的電腦。
類似的工具還有 Ngrok、Argo Tunnel 等,但這兩者都是閉源的,有其本身的限制,價格不菲,以及對 arm/arm64 的支持有限。Ngrok 還經(jīng)常會被公司防火墻策略攔截而導(dǎo)致無法使用。而其它開源的隧道工具,基本只考慮到靜態(tài)地配置單個隧道。inlets 旨在動態(tài)地發(fā)現(xiàn)本地服務(wù),通過 Websocket 隧道將它們暴露到公網(wǎng) IP 或域名,并自動化配置 TLS 證書。
inlets 已完成以下功能:
-
基于客戶端的定義,自動在出口節(jié)點創(chuàng)建服務(wù)入口
- 通過 DNS / 域名實現(xiàn)單端口、單 Websocket 承載多站點
- 利用 SSL over Websockets 實現(xiàn)鏈路加密(wss://)
- 自動重連
-
通過 Service Account 或 HTTP Basic Auth 實現(xiàn)權(quán)限認(rèn)證
- 通過 HTTP01 challenge 使用 LetsEncrypt Staging 或 Production 簽發(fā)證書
- 原生跨平臺支持,包括 ARMHF 和 ARM64 架構(gòu)
- 提供 Dockerfile 以及 Kubernetes YAML 文件
- 自動發(fā)現(xiàn)并實例化 Kubernetes 集群內(nèi) LoadBalancer 類型的 Service - inlets-operator
- 除 HTTP(s) 以外,還支持在隧道內(nèi)傳輸 Websocket 流量
項目地址:
https://github.com/inlets/inlets
簡單使用
詳細(xì)的安裝部署步驟參考官網(wǎng),小秋這里簡單介紹一下上手安裝的步驟(也是參考官網(wǎng)的操作),省去了token的生成。
安裝inlets服務(wù)
官網(wǎng)推薦使用 brew 或 curl 安裝:
#安裝到當(dāng)前目錄
curl-sLShttps://get.inlets.dev|sh
#安裝到/usr/local/bin/
curl-sLShttps://get.inlets.dev|sudosh
#使用brew安裝
brewinstallinlets
小秋在windows上使用,直接下載inlets.exe文件并在命令行中執(zhí)行,下載地址為:
https://github.com/inlets/inlets/releases
啟動隧道服務(wù)端
這一步需要在有公網(wǎng)IP的機器上操作,以達到將內(nèi)網(wǎng)服務(wù)映射出網(wǎng)的目的。(小秋沒有這樣的服務(wù)器,直接在本機安裝,無法映射出公網(wǎng),但是也能完成代理映射的過程,而過程都是一樣的。)
下載了 inlets.exe,放到 F 盤下,執(zhí)行命令啟動:
/f/inlets/inlets.exeserver--port=8090
如下圖:
運行HTTP服務(wù)
使用Python內(nèi)置的HTTP服務(wù)做測試:
mkdirinlets-test
cd/inlets-test
touchhello-world
python-mhttp.server3000
如下圖:
訪問localhost:3000
啟動inlets客戶端
在和HTTP服務(wù)同一臺機器上啟動inlets客戶端,執(zhí)行以下命令:
/f/inlets/inlets.execlient--remote=192.168.244.1:8090--upstream=http://127.0.0.1:3000
如下圖:
訪問出口節(jié)點:
其他
以上可以說是 inlets 最基本也最常用的功能,inlets還有更多高級功能,感興趣的童鞋可以試試:
- 支持Docker安裝部署
- 單出口節(jié)點多服務(wù)
- 為控制平面設(shè)定篤定端口
責(zé)任編輯:xj
原文標(biāo)題:7200 Star!開源免費的內(nèi)網(wǎng)穿透工具
文章出處:【微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
-
內(nèi)網(wǎng)
+關(guān)注
關(guān)注
0文章
25瀏覽量
8963 -
WebSocket
+關(guān)注
關(guān)注
0文章
25瀏覽量
3698 -
外網(wǎng)
+關(guān)注
關(guān)注
0文章
5瀏覽量
3344
原文標(biāo)題:7200 Star!開源免費的內(nèi)網(wǎng)穿透工具
文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論