當(dāng)前位置 主頁 > 技術(shù)大全 >
內(nèi)網(wǎng)穿透不僅有助于企業(yè)實(shí)現(xiàn)資源的遠(yuǎn)程訪問和管理,還能滿足個(gè)人用戶遠(yuǎn)程訪問家庭服務(wù)器或NAS設(shè)備的需求
本文將詳細(xì)介紹如何使用服務(wù)器進(jìn)行內(nèi)網(wǎng)穿透,并推薦一些實(shí)用的工具和方法
一、內(nèi)網(wǎng)穿透的基本原理 內(nèi)網(wǎng)穿透,簡單來說,就是通過某種技術(shù)手段將內(nèi)網(wǎng)(局域網(wǎng))中的設(shè)備或服務(wù)暴露給外網(wǎng),使得外網(wǎng)用戶能夠訪問到這些資源
內(nèi)網(wǎng)穿透的常用方法包括反向代理、端口映射、VPN、SSH隧道等
1.反向代理:在具有公網(wǎng)IP的服務(wù)器上搭建反向代理服務(wù),通過該服務(wù)將外部網(wǎng)絡(luò)的請求轉(zhuǎn)發(fā)到內(nèi)網(wǎng)服務(wù)器上
這種方式實(shí)現(xiàn)了遠(yuǎn)程訪問內(nèi)網(wǎng)應(yīng)用的功能,是常見的內(nèi)網(wǎng)穿透方式之一
2.端口映射:通過配置具有公網(wǎng)IP的服務(wù)器上的端口映射規(guī)則,將外部網(wǎng)絡(luò)的請求轉(zhuǎn)發(fā)到內(nèi)網(wǎng)服務(wù)器的指定端口上
這種方式需要在路由器或防火墻中設(shè)置端口映射規(guī)則,使外部流量能夠正確地到達(dá)內(nèi)網(wǎng)服務(wù)器
3.VPN技術(shù):建立安全的隧道,將內(nèi)部網(wǎng)絡(luò)與外部網(wǎng)絡(luò)連接起來
通過VPN連接,可以實(shí)現(xiàn)對內(nèi)網(wǎng)資源的遠(yuǎn)程訪問和管理
4.SSH隧道:SSH是一種安全的遠(yuǎn)程登錄協(xié)議,可以通過端口轉(zhuǎn)發(fā)的方式實(shí)現(xiàn)內(nèi)網(wǎng)穿透
用戶只需要在內(nèi)網(wǎng)機(jī)器上啟動(dòng)SSH服務(wù),并進(jìn)行相應(yīng)的配置,然后在公網(wǎng)機(jī)器上使用SSH客戶端連接內(nèi)網(wǎng)機(jī)器,并進(jìn)行端口轉(zhuǎn)發(fā),即可實(shí)現(xiàn)內(nèi)網(wǎng)穿透
二、使用服務(wù)器做內(nèi)網(wǎng)穿透的步驟 下面以FRP(Fast Reverse Proxy)為例,詳細(xì)介紹如何使用服務(wù)器進(jìn)行內(nèi)網(wǎng)穿透
FRP是一款開源的內(nèi)網(wǎng)穿透工具,它可以幫助用戶在沒有公網(wǎng)IP或動(dòng)態(tài)IP的情況下訪問內(nèi)網(wǎng)應(yīng)用
1. 環(huán)境搭建 首先,需要下載FRP的最新版本
可以從FRP的GitHub頁面下載,如果無法直接訪問GitHub,也可以使用一些加速器來下載
下載完成后,將FRP壓縮包解壓到服務(wù)器和虛擬機(jī)上
FRP包含兩個(gè)主要組件:FRPS(服務(wù)端)和FRPC(客戶端)
服務(wù)端部署在具有公網(wǎng)IP的服務(wù)器上,客戶端部署在內(nèi)網(wǎng)機(jī)器上
2. 配置文件 在服務(wù)器上打開解壓好的FRP文件夾,找到frps.toml配置文件
這個(gè)文件用于配置FRP服務(wù)端
其中有一個(gè)端口號默認(rèn)為7000,可以自行修改
這個(gè)端口號是給FRPC客戶端看的,用于建立FRP之間的連接
在虛擬機(jī)上打開frpc.toml文件,這個(gè)文件用于配置FRP客戶端
需要配置客戶端連接服務(wù)端的端口號(如7000),以及需要穿透的內(nèi)網(wǎng)服務(wù)的端口號
例如,如果要將內(nèi)網(wǎng)機(jī)器的22端口(SSH服務(wù))暴露給外網(wǎng),可以這樣配置: 【common】 server_addr = 外網(wǎng)服務(wù)器的IP地址 server_port = 7000 【ssh】 type = tcp local_ip = 127.0.0.1 local_port = 22 remote_port = 8080 這個(gè)端口號是外網(wǎng)訪問時(shí)使用的端口號 配置完成后,保存文件
3. 啟動(dòng)FRP服務(wù) 在服務(wù)器端,運(yùn)行以下命令啟動(dòng)FRP服務(wù)端: ./frps -c frps.toml 在虛擬機(jī)上,運(yùn)行以下命令啟動(dòng)FRP客戶端: ./frpc -c frpc.toml 如果配置正確,F(xiàn)RP服務(wù)端和客戶端將建立連接,內(nèi)網(wǎng)機(jī)器的22端口將通過外網(wǎng)服務(wù)器的8080端口暴露給外網(wǎng)
4. 驗(yàn)證內(nèi)網(wǎng)穿透 現(xiàn)在,可以使用外網(wǎng)服務(wù)器的IP地址和8080端口來訪問內(nèi)網(wǎng)機(jī)器的SSH服務(wù)
例如,在SSH客戶端中輸入以下命令: ssh -p 8080 用戶名@外網(wǎng)服務(wù)器的IP地址 如果成功連接,說明內(nèi)網(wǎng)穿透已經(jīng)成功配置
三、其他內(nèi)網(wǎng)穿透工具和方法 除了FRP之外,還有許多其他的內(nèi)網(wǎng)穿透工具和方法,如Ngrok、花生殼、NATAPP、SSH、TeamViewer、ZeroTier、AnyDesk、WireGuard等
這些工具和方法各有優(yōu)缺點(diǎn),適用于不同的場景和需求
1.Ngrok:可以將內(nèi)網(wǎng)應(yīng)用映射到公網(wǎng)上,并提供一個(gè)臨時(shí)的域名進(jìn)行訪問
使用Ngrok非常簡單,只需要在本地啟動(dòng)Ngrok客戶端,并配置好映射的端口,然后就可以獲得一個(gè)臨時(shí)的域名,通過該域名即可訪問內(nèi)網(wǎng)應(yīng)用
2.花生殼:是一款非常老牌的內(nèi)網(wǎng)穿透軟件,提供了多種版本供用戶選擇,包括電腦、手機(jī)、路由器等
用戶只需要下載并安裝相應(yīng)版本的花生殼客戶端,然后進(jìn)行簡單的配置,即可輕松實(shí)現(xiàn)內(nèi)網(wǎng)穿透
3.NATAPP:是一款非常簡單易用的內(nèi)網(wǎng)穿透工具,提供了免費(fèi)的版本供用戶選擇
用戶只需要在內(nèi)網(wǎng)機(jī)器上安裝NATAPP客戶端,并申請一個(gè)免費(fèi)的隧道,然后進(jìn)行簡單的配置,即可實(shí)現(xiàn)內(nèi)網(wǎng)穿透
4.SSH:除了作為遠(yuǎn)程登錄協(xié)議外,還可以通過端口轉(zhuǎn)發(fā)的方式實(shí)現(xiàn)內(nèi)網(wǎng)穿透
用戶只需要在內(nèi)網(wǎng)機(jī)器上啟動(dòng)SSH服務(wù),并進(jìn)行相應(yīng)的配