frp实现内网穿透
frp實現(xiàn)內(nèi)網(wǎng)穿透
文章目錄
- frp實現(xiàn)內(nèi)網(wǎng)穿透
- 1. 應用場景
- 2. frp介紹
- 3. 環(huán)境準備
- 4. 安裝
- 5. 注意事項
- 6. 參考鏈接
1. 應用場景
假設(shè)我在內(nèi)網(wǎng)環(huán)境下開發(fā)了一個Web系統(tǒng),現(xiàn)在客戶想要看看進度如何。有那么幾種方式:
第一種方式需要雙方安裝客戶端;第二種方式需要一個系統(tǒng)部署的過程,另外直接放到公網(wǎng)上也不安全;第三種需要路由器管理權(quán)限或者專門的信息管理人員;第四種方式可以使用的工具較多,如花生殼、netapp、金萬維等,均提供免費版與收費版,本文采用GitHub開源工具frp。
2. frp介紹
frp 是一個可用于內(nèi)網(wǎng)穿透的高性能的反向代理應用,支持 tcp, udp 協(xié)議,為 http 和 https 應用協(xié)議提供了額外的能力,且嘗試性支持了點對點穿透。
[外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-XXsqsGYT-1597591032352)(http://ww1.sinaimg.cn/large/005SzfLuly1ght0tq96w5j30es0codfu.jpg “frp架構(gòu)圖”)]
在一臺具有公網(wǎng)IP的機器上安裝frp服務端,在需要穿透的內(nèi)網(wǎng)機器上安裝frp客戶端,在服務端開放所需要的通訊端口,兩者建立連接之后,用戶就可以訪問frp服務端進而穿透內(nèi)網(wǎng)。
3. 環(huán)境準備
- frp服務端(frps):一臺帶有公網(wǎng)IP的服務器
- frp客戶端(frpc):需要穿透的內(nèi)網(wǎng)機器
- frp安裝包:根據(jù)機器環(huán)境選擇對應版本安裝,服務端與客戶端不需要保持環(huán)境一致,可以一邊是Linux環(huán)境,另一邊是Windows環(huán)境
4. 安裝
服務端環(huán)境是Centos 7,客戶端環(huán)境是Windows 10。
安裝frps
將下載好的安裝包frp_0.33.0_linux_amd64.tar.gz上傳到機器上,通過命令tar -zxvf frp_0.33.0_linux_amd64.tar.gz 進行解壓,使用命令cd切換到目錄frp_0.33.0_linux_amd64下,服務端只需要關(guān)注frps、frps.ini,對于frpc、frpc.ini可以直接刪掉以避免修改配置時混亂。修改frps.ini配置內(nèi)容:
[common] # 服務器端端口 bind_port = 7000 # 客戶端連接憑證 token = 123456 # 服務器看板的訪問端口 dashboard_port = 7500 # 服務器看板賬戶 dashboard_user = root # 服務器看板密碼 dashboard_pwd = 123456 # 設(shè)置 http 訪問端口 vhost_http_port = 8080注意:服務端需要在防火墻放開相應的端口,供客戶端連接以及用戶訪問
安裝frpc
將下載好的frp_0.33.0_windows_386.zip解壓,客戶端只需要關(guān)注frpc.exe、frpc.ini。修改frpc.ini配置內(nèi)容:
[common] # 服務端公網(wǎng)IP地址 server_addr = 45.76.**.*** # 服務端端口 server_port = 7000 # 連接憑證 token = 123456[web] type = http # 本地IP local_ip = 127.0.0.1 # 本地機器上 web 服務對應的端口 local_port = 9091 # 映射到公網(wǎng)的ip或者域名 custom_domains = 45.76.**.***啟動frps
./frps -c ./frps.ini
啟動frpc
./frpc.exe -c frpc.ini
服務啟動后,就可以通過custom_domains:vhost_http_port訪問本地Web服務了,按照上面配置的話,訪問地址就是45.76.**.***:8080
5. 注意事項
-
服務端與客戶端不需要保持環(huán)境一致,可以一邊是Linux,另一邊Windows
-
配置文件中注釋內(nèi)容(#)不要和配置寫在一行
custom_domains = 45.76.**.*** # 與注釋內(nèi)容寫在一行會導致配置不生效 -
客戶端不需要開放防火墻和端口,只需要服務端開放相應的端口
6. 參考鏈接
- 虛擬服務器設(shè)置指導
- frp中文文檔
- frp下載
- 使用frp做端口映射,將內(nèi)網(wǎng)服務器發(fā)布到公網(wǎng)
- frp 路由穿透
- 使用FRP實現(xiàn)內(nèi)網(wǎng)穿透,遠程訪問內(nèi)網(wǎng)服務器
總結(jié)
- 上一篇: C#请求Post接口
- 下一篇: js 日期时间的格式化