使用frp穿透首先要有一個公網ip。我使用的是阿里雲的服務器。
下載:
frp在 https://gofrp.org/ 上下載
Github開源:https://github.com/fatedier/frp(兩個都可以下載)
在releases頁面下載對應平台的版本。每個包都包含服務器端和客戶端。
服務器端配置:
服務器端 我用的是centos7,下載對應的版本。
帶有frps的是放在服務器端運行的可執行文件和配置文件。
帶有frpc的是放在客戶端端運行的可執行文件和配置文件。
修改frps.ini文件(命令:vim frps.inn)
修改成如下:
[common] bind_port = 9000(服務端和客戶端通信的端口,先檢查端口是否放開,在控制台放行該端口)
修改好之后就可以運行了
先給frps權限 :
chmod 755 ./frps
運行frps:
./frps -c ./frps.ini
運行成功后如下圖:
客戶端:
客戶端在Windos 10上運行,下載對應版本
修改frpc.ini:
[common] server_addr = XX.XX.XX.XX(公網ip) server_port = 9000(和剛才設置的端口一致,用來和服務器建立連接) [ssh] type = tcp local_ip = 127.0.0.1 local_port = 3389(Win10 遠程桌面的端口號,默認的都是3389) remote_port = 6000(用來訪問的端口號)
在cmd中運行 frpc
frpc.exe -c frpc.ini
運行后如下圖
服務器也會有顯示:
最后進行遠程桌面
原理:
- 服務器端監聽一個(比如9000)端口。客戶端根據配置文件去啟和服務器的(9000)端口進行連接。
- 兩者連接成功之后,客戶端讀取本地配置文件告訴服務器端,我需要什么端口(比如3389)。
總的就是客戶端讀取本地配置文件告訴服務器端,客戶端轉發本地的3389端口到了服務器端的33389,
然后服務器端再新開33389的監聽端口,把來自外網訪問33389端口轉發到客戶端3389。
參考鏈接:
https://blog.csdn.net/yangdashi888/article/details/111403730