CentOS服務(wù)器+Win客戶端安裝部署遠(yuǎn)程控制RustDesk教程
RustDesk 是一款開源的遠(yuǎn)程桌面控制軟件,采用 Rust 語言編寫。它允許用戶通過網(wǎng)絡(luò)遠(yuǎn)程控制另一臺(tái)計(jì)算機(jī),類似于 TeamViewer、AnyDesk、向日葵等商業(yè)軟件。
1:RustDesk 概覽
1.1:項(xiàng)目簡介
RustDesk 它是一個(gè)遠(yuǎn)程控制開源項(xiàng)目,該項(xiàng)目支持自己搭建服務(wù)器。
RustDesk 默認(rèn)提供免費(fèi)公共中繼服務(wù),但 RustDesk 的中繼服務(wù)器在海外,所以延遲非常明顯,所以可以自己搭建服務(wù)器。
1.2:工作原理
RustDesk 會(huì)先用 TCP 21116 信令服務(wù) NAT 打洞,如果打洞成功,直接 P2P 直連,RustDesk 不參與中繼。
RustDesk 如果沒有打洞成功,則走 TCP 21117 中繼服務(wù),延遲、畫質(zhì)取決于中繼服務(wù)器的帶寬。
| hbbs 監(jiān)聽端口 | hbbr 監(jiān)聽端口 |
|---|---|
| 21115(tcp):用作 NAT 類型測(cè)試 | 21117(tcp):中繼服務(wù) |
| 21116(tcp):NAT 打洞與連接服務(wù) | 21119(tcp):支持 Web 客戶端 |
| 21118(tcp):支持 Web 客戶端 | |
| 21116(udp):ID 注冊(cè)與心跳服務(wù) |
1.3:核心特性
完全開源:代碼在 GitHub 上公開,可自行審查和部署
跨平臺(tái)支持:Windows、macOS、Linux、Android、iOS、Web 瀏覽器
自托管選項(xiàng):可以部署自己的中繼服務(wù)器,數(shù)據(jù)完全自主掌控
輕量高效:安裝包小,資源占用低,連接速度快
P2P 直連:在理想網(wǎng)絡(luò)條件下會(huì)自動(dòng)建立點(diǎn)對(duì)點(diǎn)直連,減少延遲
1.4:核心功能
| 功能 | 說明 |
|---|---|
| 遠(yuǎn)程桌面控制 | 實(shí)時(shí)查看和操作遠(yuǎn)程計(jì)算機(jī)桌面 |
| 文件傳輸 | 在本地和遠(yuǎn)程計(jì)算機(jī)間雙向傳輸文件 |
| 遠(yuǎn)程終端 | 訪問遠(yuǎn)程計(jì)算機(jī)的命令行/終端(類 SSH) |
| 語音通話 | 遠(yuǎn)程協(xié)助時(shí)的語音溝通 |
| 聊天功能 | 內(nèi)置文字聊天窗口 |
| 多顯示器支持 | 支持遠(yuǎn)程多顯示器切換 |
| 遠(yuǎn)程打印 | 將遠(yuǎn)程文件打印到本地打印機(jī) |
| 會(huì)議模式 | 支持多人同時(shí)查看同一臺(tái)遠(yuǎn)程桌面 |
1.5:相關(guān)鏈接
Web、API 部署教程:https://www.52pojie.cn/thread-1708319-1-1.html
RustDesk 服務(wù)端下載:https://github.com/rustdesk/rustdesk-server/releases
RustDesk 客戶端下載:https://github.com/rustdesk/rustdesk/releases/tag/1.2.3-2
RustDesk 官方部署教程:https://rustdesk.com/docs/zh-cn/
2:部署 RustDesk 服務(wù)
我的服務(wù)器是 CentOS7.6 64位,所以下載 rustdesk-server-linux-amd64.zip,用 unzip 解壓后執(zhí)行 hbbr(ID)、hbbs(中繼)。
請(qǐng)注意 TCP 21115-21119 和 1 個(gè) UDP 21116 都要在安全組放行,如果有寶塔,寶塔的防火墻也要放行。
unzip rustdesk-server-linux-amd64.zip mv amd64 rustdesk_server cd rustdesk_server # 啟動(dòng)ID注冊(cè)服務(wù),后臺(tái)運(yùn)行 # -k _ 用于強(qiáng)制被控端輸入Key,因?yàn)槟J(rèn)情況下只需要主控端輸入Key就能連接 ./hbbs -k _ & # 啟動(dòng)中繼服務(wù),后臺(tái)運(yùn)行 # 啟動(dòng)后生成公私密鑰對(duì)(id_edxxxx,id_edxxxx.pub) ./hbbr -k _ &
3:部署客戶端
3.1:Win 客戶端
由于我是 Win 環(huán)境,所以下載 rustdesk-1.2.3-2-x86_64.exe,打開后是非安裝版本,也可作為主控和被控端,但可能會(huì)有一些限制,最好用安裝一下。

示例: 筆記本 和 無影云電腦 都安裝了 RustDesk for Win 客戶端,并且 ID/中繼服務(wù)器 均配置完成。筆記本獲取無影電腦的 ID 值和密碼,連接成功。


3.2:Web 客戶端
Web 客戶端有靜態(tài)源碼,官方教程中也說只有 RustDesk Server Pro 才有 Web 遠(yuǎn)控,GitHub 項(xiàng)目中也沒有給 Web 客戶端的資源,但網(wǎng)上卻有下載,我猜是有人從 Pro 版本扒出來源碼修改了一點(diǎn)點(diǎn)??。
0x01:寶塔創(chuàng)建一個(gè)站點(diǎn),用于存放 Web 靜態(tài)文件。

0x02:將 web-client 文件夾里的文件全部剪切到根目錄中,并修改所有者和用戶組為 www。
mv web-client/* wwwroot/ chown -R www:www wwwroot/*
0x03:瀏覽器訪問 Web 遠(yuǎn)控端,同樣也要輸入 ID服務(wù)器 和 Key。
如果服務(wù)器上行帶框小,訪問會(huì)比較慢

0x04:Web 遠(yuǎn)控輸入無影云主機(jī)ID,輸入密碼后成功連接。
服務(wù)器上行帶寬太小會(huì)導(dǎo)致延遲、畫質(zhì)過差

3.3:其它 客戶端
RustDesk 還支持 Linux(Debian系列沒問題,雖然也提供了RadHat系列的rpm包,但好像有問題)、Mac、Android 等客戶端,等有這方面的需求在搞。
4:部署優(yōu)化
4.1:Web 遠(yuǎn)控加載慢
Web 遠(yuǎn)控慢是因?yàn)?canvaskit.wasm 太大了,足足 6MB 多,如果你服務(wù)器上行帶寬很大,其實(shí)可以忽略。
優(yōu)化:canvaskit.js 訪問的 canvaskit.wasm,可以將訪問地址換成網(wǎng)上免費(fèi)的 插件CDN服務(wù)。
cd canvaskit@0.33.0/
vim canvaskit.js
# 搜索 canvaskit.wasm,將后面的 if(!Ab()){var Cb=Bb;Bb=t.locateFile?t.locateFile(Cb,Ca):Ca+Cb} 刪除
# 將 Bb 變量修改為 CDN 加速鏈接,這樣節(jié)省了帶寬又加速了訪問
# (如果CDN的帶寬還沒你服務(wù)器帶寬大,就別搞這個(gè))
var Bb;Bb="https://cdn.bootcdn.net/ajax/libs/canvaskit-wasm/0.33.0/canvaskit.wasm";
4.2:Systemd 管理
0x01:創(chuàng)建 service 文件,WorkingDirectory 工作目錄一定要指定,否則密鑰對(duì)不會(huì)創(chuàng)建 。
cat > /etc/systemd/system/hbbr.service << EOF [Unit] Description=RustDesk Hbbs After=network.target [Service] User=root Type=simple WorkingDirectory=/taosec/remote_control/rustdesk_server ExecStart=/taosec/remote_control/rustdesk_server/hbbr ExecStop=/bin/kill -TERM $MAINPID [Install] WantedBy=multi-user.target EOF cat > /etc/systemd/system/hbbs.service << EOF [Unit] Description=RustDesk Hbbs After=network.target [Service] User=root Type=simple WorkingDirectory=/taosec/remote_control/rustdesk_server ExecStart=/taosec/remote_control/rustdesk_server/hbbs ExecStop=/bin/kill -TERM $MAINPID [Install] WantedBy=multi-user.target EOF
0x02:啟動(dòng) hbbr 和 hbbs 并開機(jī)自啟動(dòng)。
systemctl start hbbr systemctl start hbbs systemctl enable hbbr systemctl enable hbbs
4.3:Api 服務(wù)器
Api 服務(wù)器 (登錄、注冊(cè)、記錄等作用) 好像也是 Pro 版本才有,但網(wǎng)上有很多大佬自己開發(fā)了 Api 服務(wù)器,我在網(wǎng)上查了一下,甚至測(cè)試了 1 套,雖然登錄沒問題,將遠(yuǎn)程記錄放到地址簿中,數(shù)據(jù)庫確實(shí)有數(shù)據(jù),但重新登錄后,卻無法獲取地址簿的數(shù)據(jù),可能是版本更新的原因吧,那套源碼是 23 年的,還有一套不錯(cuò)的 Api 項(xiàng)目,可惜只支持 Win。
我看了一眼 Api 服務(wù)器的PHP版本的源代碼,很簡單,幾乎是套娃,我也懶得搞了,沒這需求,搞得我也累。
5:Docker 部署
# host是與宿主機(jī)共享網(wǎng)絡(luò),-r是指定中繼服務(wù)器IP(端口可選),由于我們是 host 模式,所以 ip 填宿主機(jī)的就可以 docker run --restart=always --name hbbs -v /opt/rustdesk/hbbs/root:/root -td --net=host rustdesk/rustdesk-server hbbs -r 10.0.0.11 -k 123456 docker run --restart=always --name hbbr -v /opt/rustdesk/hbbr/root:/root -td --net=host rustdesk/rustdesk-server hbbr
6:故障排查指南
連接失敗:
1. 檢查兩端網(wǎng)絡(luò)連接
2. 確認(rèn)防火墻允許RustDesk通過
3. 檢查服務(wù)器地址和端口配置
4. 嘗試更換連接模式(TCP/UDP)
畫面卡頓:
1. 檢查網(wǎng)絡(luò)帶寬和延遲
2. 降低遠(yuǎn)程顯示質(zhì)量設(shè)置
3. 關(guān)閉硬件加速(某些顯卡)
4. 更新顯卡驅(qū)動(dòng)程序
文件傳輸慢:
1. 檢查磁盤讀寫速度
2. 暫停其他大流量操作
3. 嘗試小文件測(cè)試網(wǎng)絡(luò)狀況
4. 檢查殺毒軟件是否干擾
聲音問題:
1. 檢查音頻設(shè)置是否啟用
2. 確認(rèn)系統(tǒng)音頻服務(wù)正常
3. 嘗試重新安裝音頻驅(qū)動(dòng)
4. 檢查麥克風(fēng)權(quán)限設(shè)置
7:總結(jié)
RustDesk 是一款強(qiáng)大且靈活的遠(yuǎn)程桌面工具,特別適合注重?cái)?shù)據(jù)隱私和控制權(quán)的用戶。通過合理配置和安全措施,它可以成為安全高效的遠(yuǎn)程訪問解決方案。
- Docker輕松自建RustDesk服務(wù)器的實(shí)現(xiàn)步驟
- 如何使用寶塔部署RustDesk中繼服務(wù)器
- docker部署RustDesk自建服務(wù)器的小結(jié)
- Docker 部署開源遠(yuǎn)程桌面工具RustDesk的使用
- docker自建rustdesk-server遠(yuǎn)程桌面的解決方案
- docker部署rustdesk遠(yuǎn)程控制服務(wù)器的實(shí)現(xiàn)
- Ubuntu18.04本地化部署Rustdesk服務(wù)器的詳細(xì)過程
- RustDesk?Server服務(wù)器搭建教程含api服務(wù)器和webclient服務(wù)器
- 教你使用RustDesk?搭建一個(gè)自己的遠(yuǎn)程桌面中繼服務(wù)器
相關(guān)文章
忘記Grafana不要緊2種Grafana重置admin密碼方法詳細(xì)步驟
這篇文章主要介紹了忘記Grafana不要緊2種Grafana重置admin密碼方法詳細(xì)步驟,需要的朋友可以參考下2022-04-04
Python和c++代碼實(shí)現(xiàn)高性能異構(gòu)分布式并行互聯(lián)系統(tǒng)
這篇文章主要介紹了Python和c++代碼實(shí)現(xiàn)高性能異構(gòu)分布式并行互聯(lián)系統(tǒng),包含通信模塊、任務(wù)調(diào)度模塊、數(shù)據(jù)管理模塊、負(fù)載均衡模塊、故障容錯(cuò)模塊、性能優(yōu)化模塊、日志與監(jiān)控模塊,需要的朋友可以參考下2024-08-08
iis7 iis8反向代理規(guī)則編寫、安裝與配置方法
這篇文章主要介紹了iis7 iis8反向代理規(guī)則編寫、安裝與配置方法,需要的朋友可以參考下2020-04-04
vscode 遠(yuǎn)程服務(wù)器 上傳至 github的操作步驟
這篇文章主要介紹了vscode 遠(yuǎn)程服務(wù)器 上傳至 github的操作步驟,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-12-12
Win2003下cwRsyncServer服務(wù)端與cwRsync客戶端數(shù)據(jù)同步實(shí)例教程
這篇文章主要介紹了Win2003下cwRsyncServer服務(wù)端與cwRsync客戶端數(shù)據(jù)同步實(shí)例教程,需要的朋友可以參考下2015-07-07

