5 分鐘,使用內網穿透快速實現遠程桌面

  1. 前言

大家好,我是安果!

一提到遠程桌面,可能大家都會想到 TeamViewer、向日葵等第三方軟件

但是,它們大多是商業化軟件,價格昂貴;即使有提供免費版本,也是各種限制,穩定性和安全性也沒法得到保證

本篇文章將介紹如何使用「 內網穿透 」實現遠程桌面管理

  1. 內網穿透 Frp

常見實現內網穿透的方案有:Frp、Ngrok、natapp

其中,Frp 是一款開源的、簡潔易用、高性能的反向代理軟件

它支持 TCP、UDP、HTTP、HTTPS 等協議類型

官方地址:https://github.com/fatedier/frp

  1. 操作步驟

下面以 Frp 內網穿透爲例,實現遠程桌面訪問

3-1  部署 Frp 服務端到雲服務器

根據系統平臺,從下面鏈接下載 Frp 源碼上傳到雲服務器

https://github.com/fatedier/frp/releases

當然,也可以通過 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 服務端配置文件「 frps.ini 」

其中

# frps.ini

[common]
bind_addr = 0.0.0.0
bind_port = 7777
token = 12345678    # 授權碼

# 配置frp後臺管理賬號
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

最後,開放雲服務器防火牆端口、配置安全組規則,運行 Frp 服務

# 開放防火牆端口號、配置安全組規則
# 這裏配置7777、8888端口號

# 配置服務
mkdir -p /etc/frp
cp frps.ini /etc/frp
cp frps /usr/bin
cp systemd/frps.service /usr/lib/a

# 啓動frps服務
systemctl enable frps
systemctl start frps

3-2  訪問 Frp 後臺管理

打開瀏覽器,訪問雲服務器的 ip 地址 + 上面指定的端口號「 8888 」,輸入上面的用戶名和密碼,即可以進入到 Frp 後臺管理界面

管理界面實時查看 Frp 的運行狀態及代理統計信息展示

3-3  部署 Frp 客戶端到目標計算機

PS:由於目標計算機是 Windows,所有需要先下載 Windows 版本的 Frp 源碼

首先,修改客戶端配置文件「 frpc.ini 」

# 配置Frp客戶端信息
# frpc.ini

[common]
server_addr = frp公網ip地址   #frp服務公網ip地址
server_port = 7777  # frps.ini中指定的端口號
token = 12345678   # 和frps.ini中的token保持一致

[ssh]
type = tcp   # 通信方式
local_ip = 127.0.0.1
local_port = 3389   # 遠程訪問服務默認端口是3389
remote_port = 6000  # 定義遠程端口通過6000指向本地3389端口

然後,使用 CMD 中使用下面命令運行 Frp 客戶端

# 運行frp客戶端
frpc -c frpc.ini

最後,刷新 Frp Dashboard 管理頁面,可以觀察到 Frp 客戶端的連接信息

3-4  目標計算機開機自啓 - winsw

爲了保證目標計算機永久在線,可以利用「 winsw 」將客戶端連接配置做成一個服務,並配置爲開機自啓

項目下載地址:https://github.com/winsw/winsw/releases

配置步驟如下:

配置信息如下:

# winsw.xml
<service>
    <id>frp</id>
    <name>frp</name>
    <description>frp遠程控制客戶端服務</description>
    <executable>frpc</executable>
    <arguments>-c frpc.ini</arguments>
    <logmode>reset</logmode>
</service>

最後,使用管理員身份打開 CMD 終端,運行下面命令,使得 Frp 客戶端能變成系統服務在後臺運行了

# 管理員身份運行
winsw install
winsw start

3-5  遠程桌面訪問

通過雲服務器 ip + 客戶端指定的遠程訪問端口號,就可以對目標計算機進行遠程桌面控制了

假設雲服務器 ip 爲「 ... 」,Frp 客戶端配置文件中指定的遠程端口號爲 6000

只需要使用命令「 mstsc 」進入到遠程桌面窗口,計算機輸入「 ...:6000 」, 輸入目標計算機的用戶名、密碼即可以遠程控制目標計算機了

當然,也可以通過手機 App,比如「 RD Client 」來控制遠程桌面

  1. 最後

上面通過 Frp 內網穿透實現了遠程桌面控制,實際使用下來體驗真的不要太好

事實上內網穿透的用途遠不止此,大家可以查閱資料去自行擴展

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/6ddfcTZRen_rYDitG9SyhA