Go FRP:快速反向代理助您穿越 NAT 或防火牆,輕鬆連接互聯網
在當前的互聯網架構中,NAT(網絡地址轉換)和防火牆是常見的網絡安全措施,它們爲內網提供了一層保護。然而,這同時也意味着在不進行特別配置的情況下,外部網絡無法直接訪問內網的服務。爲了解決這一問題,Go FRP(Fast Reverse Proxy)應運而生。它是一個快速的反向代理工具,可以幫助您將內網服務安全地暴露到外網,極大地簡化了穿越 NAT 或防火牆的過程。
Go FRP 的工作原理
Go FRP 通過在外網(公網)部署一個 FRP 服務器(frps),以及在內網部署一個 FRP 客戶端(frpc)的方式來工作。FRP 客戶端會向 FRP 服務器建立一個穩定的反向代理連接,通過這個連接,FRP 服務器可以將外網請求反向代理到內網服務上。這個過程大致如下:
-
FRP 服務器(frps):部署在擁有公網 IP 的服務器上,負責接收來自外網的請求。
-
FRP 客戶端(frpc):運行在需要被訪問的內網服務上,負責建立與 FRP 服務器的連接,並轉發請求。
快速部署 Go FRP
安裝
首先,您需要在公網服務器和內網服務器上安裝 Go FRP。
1. 下載 Go FRP
2. 解壓文件
tar -zxvf frp_*.tar.gz
cd frp_*
這將解壓 Go FRP,您將看到frps和frpc分別是服務器端和客戶端的可執行文件。
配置 FRP 服務器
在公網服務器上,創建配置文件frps.ini。
[common]
bind_port = 7000
這裏的bind_port是 FRP 服務器監聽的端口,您可以根據需求進行更改。
啓動 FRP 服務器
./frps -c ./frps.ini
配置 FRP 客戶端
在內網服務器上,創建配置文件frpc.ini。
[common]
server_addr = [公網服務器IP]
server_port = 7000
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000
這裏配置了一個名爲ssh的代理,將內網的 SSH 服務通過 FRP 暴露到外網的 6000 端口。
啓動 FRP 客戶端
./frpc -c ./frpc.ini
驗證連接
此時,您應該可以通過公網服務器的 IP 和 6000 端口訪問到內網服務器的 SSH 服務了。
ssh -p 6000 user@公網服務器IP
在實際使用中的擴展
Go FRP 不僅支持 TCP 協議,還支持 UDP、HTTP、HTTPS 等多種協議的轉發,這意味着您幾乎可以通過 FRP 暴露內網中的任何服務到外網。通過合理的配置,Go FRP 可以成爲穿越 NAT 或防火牆的強大工具,使得內外網之間的連接更加靈活和安全。
通過深入瞭解 Go FRP,您會發現它在現代網絡架構中的無限可能。無論是搭建個人的遠程訪問環境,還是企業的內部服務對外分享,Go FRP 都可以提供一種高效、安全的解決方案。
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/-FtGwM4ud04jG4VlBz2RXg