【簡單易懂】開源FRP(內網穿透)工具配置教程 以轉發3389實現外網遠程桌面為例


不說閑話。如果不明白什么是內網穿透就百度百科:內網穿透_百度百科 (baidu.com)

總之就是幫你把局域網的電腦轉發出來,轉發的可以是數據庫端口,也可以是遠程桌面端口。

 

第一步:

准備一個公網雲服務器,阿里騰訊百度都可以,我對阿里沒什么好感所以用的騰訊雲。

可以是Linux也可以是Windows,一般情況下是用Ubuntu。(我一直不喜歡CentOS)

登入用戶並下載可執行文件包:

wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz

以上命令僅為示例,實際Get的可執行文件包可能根據更新迭代、硬件環境有所變動。如果你的服務器是ARM則就需要Get ARM的包。

建議先訪問:Releases · fatedier/frp · GitHub 查看FRP更新情況。

解壓並重命名:

tar -xzf frp_0.37.0_linux_amd64.tar.gz
mv frp_0.37.0_linux_amd64 frp37

 

第二步:

修改服務端 FRP 配置文件:

cd frp37
vim frps.ini

vim 打開后可以看到以下內容:

[common]
bind_port = 7000

默認端口為 7000,不過幾乎沒有人會用默認的。同時為了安全,務必修改端口號並增加Token

[common]
bind_port = 7370


dashboard_user = admin
dashboard_pwd = demopwd123
dashboard_port = 7470


authentication_method = token
token = demotoken123456789

配置項詳解:

bind_port 綁定端口號,給客戶端訪問的端口號
dashboard_user 管理員用戶名
dashboard_pwd 管理員用戶密碼
dashboard_port 管理員端口 在web瀏覽器中登錄,例如 http://123.124.125.126:7470
authentication_method 驗證方式 一般使用 token
token 客戶端登陸服務端所需要的token碼,兩邊要一致。(廢話)

第三步:

在服務器防火牆中放行服務端端口。例如你定義的端口號是7370,管理端口是7470,就要在雲控制台當中的防火牆設置將這兩個端口允許訪問。

協議TCP,策略允許。稍后也要放行客戶端映射過來的端口,否則外網只能訪問FRP服務,不能訪問FRP映射的客戶端端口。

(小白不要覺得這里沒有代碼就可以跳過,少哪一步都不行!)

 

第四步:

在服務器上開啟FRP服務並掛起。

登錄服務器打開終端,找到你配置FRP的目錄:

ls
cd frp37
screen -S frp
./frps -c ./frps.ini

命令行解析:

screen -S 新建終端 該終端在關閉后仍然執行

 到此服務端工作完成,但如果業務化使用務必將FRP注冊為服務且添加守護。

 

第五步:客戶端工作開始

首先假設你的雲服務器地址為 123.124.125.126

我們以轉發Windows遠程桌面3389端口為例 

到 Releases · fatedier/frp · GitHub 下載 frp_0.37.0_windows_amd64.zip (具體哪個版本看自己需求,不要說啥就是啥)

解壓進入目錄,打開目錄當中的 'frpc.ini' 這個配置文件,可以看到默認是這樣的:

[common]
server_addr = 127.0.0.1
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

這時我們就要進行修改: 

[common]
server_addr = 123.124.125.126
server_port = 7370
token = demotoken123456789

[RDP]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 9550

命令行詳解:

[common] 總配置
server_addr 提供FRP服務的外網服務器地址 就是你申請的雲服務器公網地址
server_port 提供FRP服務的外網服務器端口 就是你剛剛配置的 bind_port
token 對應的token,服務端和客戶端要一致
[RDP] 子配置名稱根據自己實際情況隨意,例如數據庫就是[SQL],桌面就是[RDP]
type 協議類型
local_ip 本機IP,可以在網卡配置或路由器當中查看
local_port 要轉發的本機端口,我們是遠程桌面所以就是3389,SQLServer就是1433
remote_port 遠程端口,供外網設備連接的端口,根據自己想法設置

第六步:

雲服務器防火牆當中放行剛剛在客戶機上設置的 remote_port 。

剛才設置的是9550,就允許連接9550。

放行后可以在客戶機進入FRP客戶端目錄上打開Powershell運行看一下效果了:

 

./frpc.exe -c ./frpc.ini

 

在你的 iPad 上安裝 Microsoft遠程桌面,輸入你的雲服務器地址+轉發端口號,也就是:

123.124.125.126:9550 (僅為演示)

連接輸入憑據看下是否可以登錄。

注意:Windows 需要是專業版以上SKU才會有遠程桌面功能(也就是家庭版不行,除非有手段)。需要在計算機屬性高級系統設置當中開啟遠程桌面訪問。

同時為了安全,本機用戶賬戶務必使用Microsoft在線賬戶登錄並且開啟“僅允許運行使用網絡級別身份驗證的遠程桌面”。

【【【【RDP勒索病毒非常泛濫!】】】

開啟以上設置,登錄名就是你的Microsoft賬戶郵箱,密碼就是Microsoft賬戶密碼。

 

第七步:

包裝客戶機的FRPC客戶端為Windows服務

下載工具:WinSW Releases · winsw/winsw · GitHub

將 winsw.exe 復制到 FRPC 客戶端目錄重命名為:FRP.Clinet.SW.exe。

同時新建文件 "FRP.Clinet.SW.xml" ,文件名必須和exe名字一樣。

內容:

<service>
  <id>CloudServer.FRP.Client</id>
  <name>CloudServer FRP Client Service</name>
  <description>CloudServer FRP Client Service</description>
  <executable>frpc</executable>
  <arguments>-c frpc.ini</arguments>
  <logmode>reset</logmode>
  <startmode>Automatic</startmode>
</service>

然后在當前FRP客戶端目錄以管理員權限打開 Powersehll 執行安裝:

.\FRP.Client.SW.exe install

然后就可以在 Windows 服務中看到一個叫 “CloudServer FRP Client Service” 的服務了,選擇自動就會開機自啟。

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM