『壹』 Ngrok有時很不穩定,有什麼更好的內網穿透方法
以下內容來自公眾號逆鋒起筆,關注每日干貨及時送達
原文:v0w.top/2020/08/11/IntranetProxy
前言
本文以滲透的視角,總結幾種個人常用的內網穿透,內網代理工具,介紹其簡單原理和使用方法。
1、nps-npc1.1 簡介
nps是一款輕量級、高性能、功能強大的內網穿透代理伺服器。目前支持tcp、udp流量轉發,可支持任何tcp、udp上層協議(訪問內網網站、本地支付介面調試、ssh訪問、遠程桌面,內網dns解析等等……),此外還支持內網http代理、內網socks5代理、p2p等,並帶有功能強大的web管理端。
一台有公網IP的伺服器(VPS)運行服務端(NPS)
一個或多個運行在內網的伺服器或者PC運行客戶端(NPC)
Go語言編寫
支持跨平台
支持多種協議的代理
web管理端
https://github.com/ehang-io/nps/releases
NPS
安裝配置
找到自己伺服器相應版本的server:
cd ~
wget https://github.com/cnlh/nps/releases/download/v0.23.2/linux_amd64_server.tar.gz
tar xzvf linux_amd64_server.tar.gz
cd ~/nps
在nps目錄下面會有一個nps可執行文件、conf配置目錄和web網頁目錄,我們只需要修改conf/nps.conf即可:
vim conf/nps.conf
需要改一下#web下面的幾個參數,
web_host= 伺服器IP或者域名
web_username= admin(登錄用戶名)
web_password= 你的密碼
web_port=8080(web管理埠)
修改#bridge可以更改 NPC的連接埠。比如我們拿到一台許可權受限的伺服器,有防火牆,可能只有部分埠(80,443)可以出網,就需要修改成出網埠。
##bridge
bridge_type=tcp
bridge_port=443 # 修改連接埠
bridge_ip=0.0.0.0
啟動
#Mac/Linux
./nps test|start|stop|restart|status 測試配置文件|啟動|停止|重啟|狀態
#Windows
nps.exe test|start|stop|restart|status 測試配置文件|啟動|停止|重啟|狀態
NPC
./npc -server=你的IP:8024 -vkey=唯一驗證密碼 -type=tcp
新建好客戶端後,也可以在+中看到,詳細的客戶端連接命令:
在客戶端界面可以通過新增的方式添加客戶端連接,每一個連接的vkey都是唯一區分的。
每一個客戶端,在建立連接後,都可以建立多個不同協議的隧道,這一個個隧道就是不同的代理了。
通過不同的協議和埠就可以連接代理的內網機器。
2、frp
2.1 簡介
客戶端服務端通信支持 TCP、KCP 以及 Websocket 等多種協議。
埠復用,多個服務通過同一個服務端埠暴露。
跨平台,但是支持的比nps少一點
多種插件,提供很多功能
下載: https://github.com/fatedier/frp/releases
1.修改 frps.ini 文件,為了安全起見,這里最好配置一下身份驗證,服務端和客戶端的 common 配置中的token參數一致則身份驗證通過:
# frps.ini
[common]
bind_port = 7000
# 用於身份驗證,請自行修改,要保證服務端與客戶端一致
token = abcdefgh
2.啟動 frps:
./frps -c ./frps.ini
3.修改 frpc.ini 文件,假設 frps 所在伺服器的公網 IP 為 x.x.x.x:
# frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
# 用於身份驗證,請自行修改,要保證服務端與客戶端一致
token = abcdefgh
[rdp]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 6000
4.啟動 frpc:
./frpc -c ./frpc.ini
5.通過 rdp 訪問遠程的機器,地址為:
x.x.x.x:6000
開機自啟
針對 Windows 系統,為了便於使用,可以配置一下開機的時候靜默啟動。
1.在 frpc.exe 的同級目錄創建一個 start_frpc.vbs:
'start_frpc.vbs
'請根據實際情況修改路徑
CreateObject("WScript.Shell").Run """D:Program Filesfrp_windows_amd64frpc.exe""" & "-c" & """D:Program Filesfrp_windows_amd64frpc.ini""",0
2.復制 start_frpc.vbs 文件,打開以下目錄,注意將
改為你的用戶名:
C:Users\ MenuProgramsStartup
3.滑鼠右擊,粘貼為快捷方式即可。
2. 通過 SSH 訪問公司內網機器
frps 的部署步驟同上。
1.啟動 frpc,配置如下:
# frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
# 用於身份驗證,請自行修改,要保證服務端與客戶端一致
token = abcdefgh
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
2.通過 SSH 訪問內網機器,假設用戶名為 test:
ssh -oPort=6000 [email protected]
3. 通過自定義域名訪問部署於內網的 Web 服務
1.修改 frps.ini 文件,設置 http 訪問埠為 8080:
# frps.ini
[common]
bind_port = 7000
vhost_http_port = 8080
# 用於身份驗證,請自行修改,要保證服務端與客戶端一致
token = abcdefgh
2.啟動 frps:
./frps -c ./frps.ini
3.修改 frpc.ini 文件,假設 frps 所在的伺服器的 IP 為 x.x.x.x,local_port 為本地機器上 Web 服務對應的埠, 綁定自定義域名www.yourdomain.com:
# frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
# 用於身份驗證,請自行修改,要保證服務端與客戶端一致
token = abcdefgh
[web]
type = http
local_port = 80
custom_domains = www.yourdomain.com
4.啟動 frpc:
./frpc -c ./frpc.ini
5 .將www.yourdomain.com的域名 A 記錄解析到 IPx.x.x.x,如果伺服器已經有對應的域名,也可以將 CNAME 記錄解析到伺服器原先的域名。
6.通過瀏覽器訪問http://www.yourdomain.com:8080即可訪問到處於內網機器上的 Web 服務。
4. 對外提供簡單的文件訪問服務
通過static_file插件可以對外提供一個簡單的基於 HTTP 的文件訪問服務。
frps 的部署步驟同上。
1.啟動 frpc,啟用static_file插件,配置如下:
# frpc.ini
[common]
server_addr = x.x.x.x
server_port = 7000
# 用於身份驗證,請自行修改,要保證服務端與客戶端一致
token = abcdefgh
[test_static_file]
type = tcp
remote_port = 6000
plugin = static_file
# 要對外暴露的文件目錄
plugin_local_path = /tmp/file
# 訪問 url 中會被去除的前綴,保留的內容即為要訪問的文件路徑
plugin_strip_prefix = static
plugin_http_user = abc
plugin_http_passwd = abc
2.通過瀏覽器訪問http://x.x.x.x:6000/static/來查看位於/tmp/file目錄下的文件,會要求輸入已設置好的用戶名和密碼。
常用功能
統計面板(Dashboard)
通過瀏覽器查看 frp 的狀態以及代理統計信息展示。
註:Dashboard 尚未針對大量的 proxy 數據展示做優化,如果出現 Dashboard 訪問較慢的情況,請不要啟用此功能。
需要在 frps.ini 中指定 dashboard 服務使用的埠,即可開啟此功能:
[common]
dashboard_port = 7500
# dashboard 用戶名密碼,默認都為 admin
dashboard_user = admin
dashboard_pwd = admin
打開瀏覽器通過http://[server_addr]:7500訪問 dashboard 界面,用戶名密碼默認為admin。
這兩個功能默認是不開啟的,需要在 frpc.ini 中通過配置來為指定的代理啟用加密與壓縮的功能,壓縮演算法使用 snappy:
# frpc.ini
[ssh]
type = tcp
local_port = 22
remote_port = 6000
use_encryption = true
use_compression = true
如果公司內網防火牆對外網訪問進行了流量識別與屏蔽,例如禁止了 SSH 協議等,通過設置use_encryption = true,將 frpc 與 frps 之間的通信內容加密傳輸,將會有效防止流量被攔截。
如果傳輸的報文長度較長,通過設置use_compression = true對傳輸內容進行壓縮,可以有效減小 frpc 與 frps 之間的網路流量,加快流量轉發速度,但是會額外消耗一些 CPU 資源。
[TLS
從 v0.25.0 版本開始 frpc 和 frps 之間支持通過 TLS 協議加密傳輸。通過在frpc.ini的common中配置tls_enable = true來啟用此功能,安全性更高。
為了埠復用,frp 建立 TLS 連接的第一個位元組為 0x17。
注意:啟用此功能後除 xtcp 外,不需要再設置 use_encryption。
代理限速
目前支持在客戶端的代理配置中設置代理級別的限速,限制單個 proxy 可以佔用的帶寬。
# frpc.ini
[ssh]
type = tcp
local_port = 22
remote_port = 6000
bandwidth_limit = 1MB
在代理配置中增加bandwidth_limit欄位啟用此功能,目前僅支持MB和KB單位。
范圍埠映射
在 frpc 的配置文件中可以指定映射多個埠,目前只支持 tcp 和 udp 的類型。
這一功能通過range:段落標記來實現,客戶端會解析這個標記中的配置,將其拆分成多個 proxy,每一個 proxy 以數字為後綴命名。
例如要映射本地 6000-6005, 6007 這 6 個埠,主要配置如下:
# frpc.ini
[range:test_tcp]
type = tcp
local_ip = 127.0.0.1
local_port = 6000-6006,6007
remote_port = 6000-6006,6007
實際連接成功後會創建 8 個 proxy,命名為test_tcp_0, test_tcp_1 ... test_tcp_7。
3、ew3.1 簡介
輕量級,C語言編寫
可以設置多級代理
跨平台
但是只支持Socks5代理
以下所有樣例,如無特殊說明代理埠均為1080,服務均為SOCKSv5代理服務.
該工具共有 6 種命令格式(ssocksd、rcsocks、rssocks、lcx_slave、lcx_listen、lcx_tran)。
1. 正向 SOCKS v5 伺服器
$ ./ew -s ssocksd -l 1080
2. 反彈 SOCKS v5 伺服器
這個操作具體分兩步:
a) 先在一台具有公網 ip 的主機A上運行以下命令:
$ ./ew -s rcsocks -l 1080 -e 8888
b) 在目標主機B上啟動 SOCKS v5 服務 並反彈到公網主機的 8888埠
$ ./ew -s rssocks -d 1.1.1.1 -e 8888
成功。
3. 多級級聯
工具中自帶的三條埠轉發指令, 它們的參數格式分別為:
$ ./ew -s lcx_listen -l 1080 -e 8888
$ ./ew -s lcx_tran -l 1080 -f 2.2.2.3 -g 9999
$ ./ew -s lcx_slave -d 1.1.1.1 -e 8888 -f 2.2.2.3 -g 9999
通過這些埠轉發指令可以將處於網路深層的基於TCP的服務轉發至根前,比如 SOCKS v5。首先提供兩個「二級級聯」本地SOCKS測試樣例:
a)lcx_tran的用法
$ ./ew -s ssocksd -l 9999
$ ./ew -s lcx_tran -l 1080 -f 127.0.0.1 -g 9999
b)lcx_listen、lcx_slave的用法
$ ./ew -s lcx_listen -l 1080 -e 8888
$ ./ew -s ssocksd -l 9999
$ ./ew -s lcx_slave -d 127.0.0.1 -e 8888 -f 127.0.0.1 -g 9999
再提供一個「三級級聯」的本地SOCKS測試用例以供參考
$ ./ew -s rcsocks -l 1080 -e 8888
$ ./ew -s lcx_slave -d 127.0.0.1 -e 8888 -f 127.0.0.1 -g 9999
$ ./ew -s lcx_listen -l 9999 -e 7777
$ ./ew -s rssocks -d 127.0.0.1 -e 7777
數據流向:SOCKS v5 -> 1080 -> 8888 -> 9999 -> 7777 -> rssocks
4、ngrok4.1 簡介
官方維護,一般較為穩定
跨平台,閉源
有流量記錄和重發功能
進入ngrok官網(https://ngrok.com/),注冊ngrok賬號並下載ngrok;
根據官網給定的授權碼,運行如下授權命令;
./ngrok authtoken 1hAotxhmORtzCYvUc3BsxDBPh1H_******************
./ngrok http 80即可將機器的80埠http服務暴露到公網,並且會提供一個公網域名。
可以通過官網的UI界面查看數據包和流量等等(但是要付費==、)
還可以通過一些命令將內網的文件和其他TCP服務 暴露到公網中。
有授權的設置文件共享
ngrok http -auth="user:password" file:///Users/alan/share
無授權的設置文件共享
ngrok http "file:///C:\Users\alan\Public Folder"
將主機的3389的TCP埠暴露到公網
ngrok tcp 3389
更多使用方法參考:https://ngrok.com/docs
內網滲透之內網穿透
開源內網穿透工具 frp 簡單使用教程
http://rootkiter.com/EarthWorm/
『貳』 有沒有簡單的內網穿透工具
1、Ngrok
ngrok 是一個反向代理,通過在公共端點和本地運行的 Web 伺服器之間建立一個安全的通道,實現內網主機的服務可以暴露給外網。ngrok 可捕獲和分析所有通道上的流量,便於後期分析和重放,所以ngrok可以很方便地協助服務端程序測試。
參考博客:10分鍾教你搭建自己的ngrok伺服器
2、Natapp
natapp是 基於ngrok的國內收費內網穿透工具,類似花生殼,有免費版本,比花生殼好。免費版本:提供http,https,tcp全隧道穿透,隨機域名/TCP埠,不定時強制更換域名/埠,自定義本地埠
參考文章:NATAPP1分鍾快速新手圖文教程
3、小米球
小米球是基於ngrok二次開發的內網穿透工具,支持多協議、多隧道、多埠同時映射(http、https、tcp等等...),同時支持多種系統win、linux、linux_arm、mac等。具體的使用直接參考官網。
4、Sunny-Ngrok
Sunny-Ngrok同樣是ngrok二次開發的內網穿透工具,支持http,https協議,同時支持更豐富的系統和語言:linux、win、mac、openwrt、 python、php等。
教程:Sunny-Ngrok使用教程
5、echosite
echosite同樣ngrok二次開發的內網穿透工具,支持多種協議,以前是全部免費的,現在推出了收費版和免費版,可根據自己的需要去選擇。
參考教程:EchoSite---讓內網穿透變得簡單
6、Ssh、autossh
ssh 配合autossh工具使用,因為autossh會容錯,自動重新啟動SSH會話和隧道。autossh是一個程序,用於啟動ssh的副本並進行監控,在死亡或停止傳輸流量時根據需要重新啟動它。 這個想法來自rstunnel(Reliable SSH Tunnel),但是在C中實現。作者的觀點是,它不像匆匆忙忙的工作那麼容易。使用埠轉發環路或遠程回顯服務進行連接監視。在遇到連接拒絕等快速故障時,關閉連接嘗試的速度。在OpenBSD,Linux,Solaris,Mac OS X,Cygwin和AIX上編譯和測試; 應該在其他BSD上工作。免費軟體。
使用教程:SSH內網穿透
7、Lanproxy
lanproxy是一個將區域網個人電腦、伺服器代理到公網的內網穿透工具,目前僅支持tcp流量轉發,可支持任何tcp上層協議(訪問內網網站、本地支付介面調試、ssh訪問、遠程桌面...)。目前市面上提供類似服務的有花生殼、TeamView、GoToMyCloud等等,但要使用第三方的公網伺服器就必須為第三方付費,並且這些服務都有各種各樣的限制,此外,由於數據包會流經第三方,因此對數據安全也是一大隱患。
參考教程:業余草推薦一款區域網(內網)穿透工具lanproxy
8、Spike
Spike是一個可以用來將你的內網服務暴露在公網的快速的反向代理,基於ReactPHP,採用IO多路復用模型。採用Php實現。
參考教程:使用 PHP 實現的的內網穿透工具 「Spike」
9、Frp
frp 是一個可用於內網穿透的高性能的反向代理應用,支持 tcp, udp, http, https 協議。利用處於內網或防火牆後的機器,對外網環境提供 http 或 https 服務。對於 http, https 服務支持基於域名的虛擬主機,支持自定義域名綁定,使多個域名可以共用一個80埠。利用處於內網或防火牆後的機器,對外網環境提供 tcp 和 udp 服務,例如在家裡通過 ssh 訪問處於公司內網環境內的主機。
教程:一款很好用的內網穿透工具--FRP、使用frp實現內網穿透
10、Fcn
FCN[free connect]是一款傻瓜式的一鍵接入私有網路的工具, fcn利用公共伺服器以及數據加密技術實現:在免公網IP環境下,在任意聯網機器上透明接入服務端所在區域網網段。支持多種系統,有免費版和付費版。
教程:內網穿透工具FCN介紹
上面便是我所知道的內網穿透工具,其中ngrok相關的我基本都用過還有frp,都差不多。大部分都可以免費去使用,但是我不建議大家把這些免費的穿透工具去放到比較重要的雲伺服器中去使用,容易被攻擊。我的小夥伴,開始你的穿透之旅吧。
Proxy-Go 詳細介紹
Proxy是golang實現的高性能http,https,websocket,tcp,udp,socks5代理伺服器,支持正向代理、反向代理、透明代理、內網穿透、TCP/UDP埠映射、SSH中轉、TLS加密傳輸、協議轉換、DNS防污染代理。
Features
鏈式代理,程序本身可以作為一級代理,如果設置了上級代理那麼可以作為二級代理,乃至N級代理。
通訊加密,如果程序不是一級代理,而且上級代理也是本程序,那麼可以加密和上級代理之間的通訊,採用底層tls高強度加密,安全無特徵。
智能HTTP,SOCKS5代理,會自動判斷訪問的網站是否屏蔽,如果被屏蔽那麼就會使用上級代理(前提是配置了上級代理)訪問網站;如果訪問的網站沒有被屏蔽,為了加速訪問,代理會直接訪問網站,不使用上級代理。
域名黑白名單,更加自由的控制網站的訪問方式。
跨平台性,無論你是widows,linux,還是mac,甚至是樹莓派,都可以很好的運行proxy。
多協議支持,支持HTTP(S),TCP,UDP,Websocket,SOCKS5代理。
TCP/UDP埠轉發。
支持內網穿透,協議支持TCP和UDP。
SSH中轉,HTTP(S),SOCKS5代理支持SSH中轉,上級Linux伺服器不需要任何服務端,本地一個proxy即可開心上網。
KCP協議支持,HTTP(S),SOCKS5代理支持KCP協議傳輸數據,降低延遲,提升瀏覽體驗.
集成外部API,HTTP(S),SOCKS5代理認證功能可以與外部HTTP API集成,可以方便的通過外部系統控制代理用戶。
反向代理,支持直接把域名解析到proxy監聽的ip,然後proxy就會幫你代理訪問需要訪問的HTTP(S)網站。
透明HTTP(S)代理,配合iptables,在網關直接把出去的80,443方向的流量轉發到proxy,就能實現無感知的智能路由器代理。
協議轉換,可以把已經存在的HTTP(S)或SOCKS5代理轉換為一個埠同時支持HTTP(S)和SOCKS5代理,轉換後的SOCKS5代理不支持UDP功能,同時支持強大的級聯認證功能。
自定義底層加密傳輸,http(s)\sps\socks代理在tcp之上可以通過tls標准加密以及kcp協議加密tcp數據,除此之外還支持在tls和kcp之後進行自定義加密,也就是說自定義加密和tls|kcp是可以聯合使用的,內部採用AES256加密,使用的時候只需要自己定義一個密碼即可。
底層壓縮高效傳輸,http(s)\sps\socks代理在tcp之上可以通過自定義加密和tls標准加密以及kcp協議加密tcp數據,在加密之後還可以對數據進行壓縮,也就是說壓縮功能和自定義加密和tls|kcp是可以聯合使用的。
安全的DNS代理,可以通過本地的proxy提供的DNS代理伺服器與上級代理加密通訊實現安全防污染的DNS查詢。
Why need these?
當由於安全因素或者限制,我們不能順暢的訪問我們在其它地方的服務,我們可以通過多個相連的proxy節點建立起一個安全的隧道,順暢的訪問我們的服務.
微信介面本地開發,方便調試.
遠程訪問內網機器.
和小夥伴一起玩區域網游戲.
以前只能在區域網玩的,現在可以在任何地方玩.
替代聖劍內網通,顯IP內網通,花生殼之類的工具.
『叄』 雲伺服器應該建立什麼代理服務才能使家庭寬頻下的游戲伺服器相當於擁有了雲伺服器的公網ip
首先回答第一個問題,如果游戲本a設置全局代理到擁有公網IP的雲伺服器b,並在b上建立代理服務,則a的游戲伺服器可以裂冊通過b的公網IP地址訪問。但是,這並不意味著a的游戲伺服器擁有公網IP地址。如果要讓a的游戲伺服器擁有公網IP地址,需要在雲伺服器b上建立埠映射或NAT轉發等服務,將b的公網IP映射到a的游戲伺服器上。
其次回答第二個問題,要讓a的游戲伺服器出現在steam伺服器列表中,需要使用Steamworks SDK並在a的游戲伺服器上實現相關功能。具體來說,需要在游戲伺服器上使用Steamworks SDK提供的API,將a的游戲伺服器注冊到Steam伺服器列表中。需要注意的是,Steamworks SDK只能用於Steam游戲。
關於第三個問題,如果使用櫻花frp的TCP/UDP隧道,需要建立的隧道埠應該包括a的游戲伺服器埠以及frp客戶端與服務端通信所使用的埠。具體來說,需要在游戲本a上運行frp客戶端,並通過frp客戶端將a的游戲伺服器埠映射到雲伺服器b上。同時,需要在雲伺服器b上運行frp服務端,並將b的公網IP地址與frp服務端通信肆扮宏所使用的埠映射到frp客戶端所使用的埠上。這樣,通過b的公網IP地址加上映射的埠即可訪問到a的游戲伺服器。
最後,如果不使用櫻花frp而是在雲伺服器b上建立其他服務,可以考慮使用缺察埠映射或NAT轉發等服務,將b的公網IP映射到a的游戲伺服器上。具體來說,可以在雲伺服器b上運行埠映射或NAT轉發軟體,將b的公網IP地址與a的游戲伺服器埠進行映射。這樣,通過b的公網IP地址加上映射的埠即可訪問到a的游戲伺服器。需要注意的是,埠映射或NAT轉發可能會對網路安全造成一定的影響,需要謹慎使用。
『肆』 內網穿透工具哪個品牌的靠譜
NAPT原理:
在NAT網關上會有一張映射表,表上記錄了內網向公網哪個IP和埠發起了請求,然後如果內網有主機向公網設備發起了請求,內網主機的請求數據包傳輸到了NAT網關上,那麼NAT網關會修改該數據包的源IP地址和源埠為NAT網關自身的IP地址和任意一個不沖突的自身未使用的埠,並且把這個修改記錄到那張映射表上。最後把修改之後的數據包發送到請求的目標主機,等目標主機發回了響應包之後,再根據響應包裡面的目的IP地址和目的埠去映射表裡面找到該轉發給哪個內網主機。這樣就實現了內網主機在沒有公網IP的情況下,通過NAPT技術藉助路由器唯一的一個公網IP來訪問公網設備。 具體原理參照上圖。
10款內網穿透工具:
1、Ngrok
ngrok 是一個反向代理,通過在公共端點和本地運行的 Web 伺服器之間建立一個安全的通道,實現內網主機的服務可以暴露給外網。ngrok 可捕獲和分析所有通道上的流量,便於後期分析和重放,所以ngrok可以很方便地協助服務端程序測試。
參考博客:10分鍾教你搭建自己的ngrok伺服器
https://blog.csdn.net/yjc_1111/article/details/79353718
2、Natapp
natapp是 基於ngrok的國內收費內網穿透工具,類似花生殼,有免費版本,比花生殼好。免費版本:提供http,https,tcp全隧道穿透,隨機域名/TCP埠,不定時強制更換域名/埠,自定義本地埠。
參考文章:NATAPP1分鍾快速新手圖文教程
https://natapp.cn/article/natapp_newbie
3、小米球
小米球是基於ngrok二次開發的內網穿透工具,支持多協議、多隧道、多埠同時映射(http、https、tcp等等...),同時支持多種系統win、linux、linux_arm、mac等。具體的使用直接參考官網。
4、Sunny-Ngrok
Sunny-Ngrok同樣是ngrok二次開發的內網穿透工具,支持http,https協議,同時支持更豐富的系統和語言:linux、win、mac、openwrt、 python、php等。
教程:Sunny-Ngrok使用教程
https://www.ngrok.cc/_book/
5、echosite
echosite同樣ngrok二次開發的內網穿透工具,支持多種協議,以前是全部免費的,現在推出了收費版和免費版,可根據自己的需要去選擇。
參考教程:EchoSite---讓內網穿透變得簡單
https://blog.csdn.net/interesting0303/article/details/81098603
6、Ssh、autossh
ssh 配合autossh工具使用,因為autossh會容錯,自動重新啟動SSH會話和隧道。autossh是一個程序,用於啟動ssh的副本並進行監控,在死亡或停止傳輸流量時根據需要重新啟動它。 這個想法來自rstunnel(Reliable SSH Tunnel),但是在C中實現。作者的觀點是,它不像匆匆忙忙的工作那麼容易。使用埠轉發環路或遠程回顯服務進行連接監視。在遇到連接拒絕等快速故障時,關閉連接嘗試的速度。在OpenBSD,Linux,Solaris,Mac OS X,Cygwin和AIX上編譯和測試; 應該在其他BSD上工作。免費軟體。
使用教程:SSH內網穿透
https://yangqiang.im/?p=698
7、Lanproxy
lanproxy是一個將區域網個人電腦、伺服器代理到公網的內網穿透工具,目前僅支持tcp流量轉發,可支持任何tcp上層協議(訪問內網網站、本地支付介面調試、ssh訪問、遠程桌面...)。目前市面上提供類似服務的有花生殼、TeamView、GoToMyCloud等等,但要使用第三方的公網伺服器就必須為第三方付費,並且這些服務都有各種各樣的限制,此外,由於數據包會流經第三方,因此對數據安全也是一大隱患。
參考教程:業余草推薦一款區域網(內網)穿透工具lanproxy
https://blog.csdn.net/xmtblog/article/details/77943159
8、Spike
Spike是一個可以用來將你的內網服務暴露在公網的快速的反向代理,基於ReactPHP,採用IO多路復用模型。採用Php實現。
參考教程:使用 PHP 實現的的內網穿透工具 「Spike」
https://segmentfault.com/q/1010000009955702
9、Frp
frp 是一個可用於內網穿透的高性能的反向代理應用,支持 tcp, udp, http, https 協議。利用處於內網或防火牆後的機器,對外網環境提供 http 或 https 服務。對於 http, https 服務支持基於域名的虛擬主機,支持自定義域名綁定,使多個域名可以共用一個80埠。利用處於內網或防火牆後的機器,對外網環境提供 tcp 和 udp 服務,例如在家裡通過 ssh 訪問處於公司內網環境內的主機。
教程:一款很好用的內網穿透工具--FRP、使用frp實現內網穿透
https://sunnyrx.com/2016/10/21/simple-to-use-frp/
10、Fcn
FCN[free connect]是一款傻瓜式的一鍵接入私有網路的工具, fcn利用公共伺服器以及數據加密技術實現:在免公網IP環境下,在任意聯網機器上透明接入服務端所在區域網網段。支持多種系統,有免費版和付費版。
教程:內網穿透工具FCN介紹
http://www.sohu.com/a/202331135_449548
不建議把這些免費的穿透工具去放到比較重要的雲伺服器中去使用,容易被攻擊。