1. 前言
大家好,我是安果!
一提到遠(yuǎn)程桌面,可能大家都會(huì)想到 TeamViewer、向日葵等第三方軟件
但是,它們大多是商業(yè)化軟件,價(jià)格昂貴;即使有提供免費(fèi)版本,也是各種限制,穩(wěn)定性和安全性也沒法得到保證
本篇文章將介紹如何使用「 內(nèi)網(wǎng)穿透 」實(shí)現(xiàn)遠(yuǎn)程桌面管理
2. 內(nèi)網(wǎng)穿透 Frp
常見實(shí)現(xiàn)內(nèi)網(wǎng)穿透的方案有:Frp、Ngrok、natApp
其中,F(xiàn)rp 是一款開源的、簡潔易用、高性能的反向代理軟件
它支持 TCP、UDP、HTTP、HTTPS 等協(xié)議類型
官方地址:
https://github.com/fatedier/frp
3. 操作步驟
下面以 Frp 內(nèi)網(wǎng)穿透為例,實(shí)現(xiàn)遠(yuǎn)程桌面訪問
3-1 部署 Frp 服務(wù)端到云服務(wù)器
根據(jù)系統(tǒng)平臺(tái),從下面鏈接下載 Frp 源碼上傳到云服務(wù)器
https://github.com/fatedier/frp/releases
當(dāng)然,也可以通過 wget 命令直接下載
# 使用wget命令下載0.37.1版本
wget https:
//github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_amd64.tar.gz
接著,解壓文件壓縮包
# 解壓文件
tar -zxvf frp_0.37.1_linux_amd64.tar.gz
然后,使用 vi/vim 編輯 Frp 服務(wù)端配置文件「 frps.ini 」
其中
- bind_port 用于指定 Frp 服務(wù)端的端口號(hào)
- dashboard_user、dashboard_pwd、dashboard_port 分別用于配置 Frp 后臺(tái)管理的賬號(hào)信息及訪問端口號(hào)
# frps.ini
[common]
bind_addr = 0.0.0.0
bind_port = 7777
token = 12345678 # 授權(quán)碼
# 配置frp后臺(tái)管理賬號(hào)
dashboard_user = admin
dashboard_pwd = admin
dashboard_port = 8888
enable_prometheus = true
# 配置日志配置文件夾
log_file = /var/log/frps.log
log_level = info
log_max_days = 3
最后,開放云服務(wù)器防火墻端口、配置安全組規(guī)則,運(yùn)行 Frp 服務(wù)
# 開放防火墻端口號(hào)、配置安全組規(guī)則
# 這里配置7777、8888端口號(hào)
# 配置服務(wù)
mkdir -p /etc/frp
cp frps.ini /etc/frp
cp frps /usr/bin
cp systemd/frps.service /usr/lib/a
# 啟動(dòng)frps服務(wù)
systemctl enable frps
systemctl start frps
3-2 訪問 Frp 后臺(tái)管理
打開瀏覽器,訪問云服務(wù)器的 ip 地址 + 上面指定的端口號(hào)「 8888 」,輸入上面的用戶名和密碼,即可以進(jìn)入到 Frp 后臺(tái)管理界面

管理界面實(shí)時(shí)查看 Frp 的運(yùn)行狀態(tài)及代理統(tǒng)計(jì)信息展示
3-3 部署 Frp 客戶端到目標(biāo)計(jì)算機(jī)
PS:由于目標(biāo)計(jì)算機(jī)是 windows,所有需要先下載 Windows 版本的 Frp 源碼
首先,修改客戶端配置文件「 frpc.ini 」
# 配置Frp客戶端信息
# frpc.ini
[common]
server_addr = frp公網(wǎng)ip地址 #frp服務(wù)公網(wǎng)ip地址
server_port = 7777 # frps.ini中指定的端口號(hào)
token = 12345678 # 和frps.ini中的token保持一致
[ssh]
type = tcp # 通信方式
local_ip = 127.0.0.1
local_port = 3389 # 遠(yuǎn)程訪問服務(wù)默認(rèn)端口是3389
remote_port = 6000 # 定義遠(yuǎn)程端口通過6000指向本地3389端口
然后,使用 CMD 中使用下面命令運(yùn)行 Frp 客戶端
# 運(yùn)行frp客戶端
frpc -c frpc.ini
最后,刷新 Frp Dashboard 管理頁面,可以觀察到 Frp 客戶端的連接信息

3-4 目標(biāo)計(jì)算機(jī)開機(jī)自啟 - winsw
為了保證目標(biāo)計(jì)算機(jī)永久在線,可以利用「 winsw 」將客戶端連接配置做成一個(gè)服務(wù),并配置為開機(jī)自啟
項(xiàng)目下載地址:
https://github.com/winsw/winsw/releases
配置步驟如下:
- 根據(jù)系統(tǒng)版本下載對(duì)應(yīng)源碼,解壓后放置到 Frp 同一級(jí)目錄下
- 修改可執(zhí)行文件名稱為 winsw.exe
- 新建一個(gè)配置文件 winsw.xml,添加運(yùn)行 Frp 客戶端的命令
配置信息如下:
# winsw.xml
<service>
<id>frp</id>
<name>frp</name>
<description>frp遠(yuǎn)程控制客戶端服務(wù)</description>
<executable>frpc</executable>
<arguments>-c frpc.ini</arguments>
<logmode>reset</logmode>
</service>
最后,使用管理員身份打開 CMD 終端,運(yùn)行下面命令,使得 Frp 客戶端能變成系統(tǒng)服務(wù)在后臺(tái)運(yùn)行了
# 管理員身份運(yùn)行
winsw install
winsw start
3-5 遠(yuǎn)程桌面訪問
通過云服務(wù)器 ip + 客戶端指定的遠(yuǎn)程訪問端口號(hào),就可以對(duì)目標(biāo)計(jì)算機(jī)進(jìn)行遠(yuǎn)程桌面控制了
假設(shè)云服務(wù)器 ip 為「 *.*.*.* 」,F(xiàn)rp 客戶端配置文件中指定的遠(yuǎn)程端口號(hào)為 6000
只需要使用命令「 mstsc 」進(jìn)入到遠(yuǎn)程桌面窗口,計(jì)算機(jī)輸入「 *.*.*.*:6000 」,輸入目標(biāo)計(jì)算機(jī)的用戶名、密碼即可以遠(yuǎn)程控制目標(biāo)計(jì)算機(jī)了
當(dāng)然,也可以通過手機(jī) App,比如「 RD Client 」來控制遠(yuǎn)程桌面
4. 最后
上面通過 Frp 內(nèi)網(wǎng)穿透實(shí)現(xiàn)了遠(yuǎn)程桌面控制,實(shí)際使用下來體驗(yàn)真的不要太好
事實(shí)上內(nèi)網(wǎng)穿透的用途遠(yuǎn)不止此,大家可以查閱資料去自行擴(kuò)展
如果你覺得文章還不錯(cuò),請(qǐng)大家 點(diǎn)贊、分享、留言 下,因?yàn)檫@將是我持續(xù)輸出更多優(yōu)質(zhì)文章的最強(qiáng)動(dòng)力!