RustDesk自建服務器完整部署指南:從零開始到成功連接。成功解決rustdesk報錯:未就緒,請檢查網絡連接

最近需要用到遠程工具解決用戶問題,todesk總是提示付費,干脆自己使用開源的。當然凡事都有代價。 話費了一個工作日的時間終于搞定了。

本文將詳細介紹如何從零開始部署RustDesk自建服務器,實現完全自主可控的遠程桌面解決方案。

踩坑

參考了https://blog.csdn.net/m0_74823611/article/details/146158064 使用二進制文件 rustdesk-server-linux-amd64.zip安裝,但是沒有效果。估計還是端口映射的問題。

一方面也是自己偷懶原因,不想安裝docker節省服務器空間。結果最后浪費了一早上的時間。

https://blog.csdn.net/weixin_53510183/article/details/143257158 這篇文章有說明二進制安裝的缺陷。

1. 準備工作

1.1 服務器要求

  • 云服務器(騰訊云、阿里云等)
  • CentOS 7/8 或 Ubuntu 18.04+
  • 至少1GB內存,1核CPU
  • 開放的公網IP

1.2 必要端口

  • 21115 (hbbs - Web控制臺,可選)
  • 21116 (hbbs - ID注冊服務)
  • 21117 (hbbr - 中繼服務)
  • 21118 (hbbs - Web API,可選)
  • 21119 (hbbr - Web API,可選)

2. Docker環境安裝

2.1 CentOS Docker安裝腳本

創建安裝腳本文件:

nano install-docker.sh

復制以下內容:

#!/bin/bash# 更新系統
sudo yum update -y# 安裝必要的工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2# 添加 Docker 倉庫
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo# 替換鏡像源到阿里云
sudo sed -i 's+download.docker.com+mirrors.aliyun.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo# 安裝 Docker
sudo yum install -y docker-ce docker-ce-cli containerd.io# 啟動 Docker
sudo systemctl start docker
sudo systemctl enable docker# 測試 Docker 是否安裝成功
sudo docker run --rm hello-worldecho "Docker 已安裝并啟動成功!"

2.2 執行安裝

chmod +x install-docker.sh
./install-docker.sh

2.3 配置Docker鏡像加速(重要)

創建Docker配置文件:

sudo mkdir -p /etc/docker
sudo vim /etc/docker/daemon.json

添加以下內容:

{"registry-mirrors": ["https://dockerproxy.com","https://mirror.baidubce.com","https://ccr.ccs.tencentyun.com","https://docker.m.daocloud.io","https://docker.nju.edu.cn","https://docker.mirrors.ustc.edu.cn"]
}

重啟Docker服務:

sudo systemctl restart docker

3. 防火墻配置

3.1 使用ufw(推薦)

# 安裝ufw
sudo yum install -y epel-release
sudo yum install -y ufw# 啟用ufw
sudo ufw enable# 開放必要端口
sudo ufw allow 21115:21119/tcp
sudo ufw allow 21116/udp
sudo ufw allow ssh# 查看狀態
sudo ufw status numbered

3.2 云服務器安全組

在云服務商控制臺配置安全組規則:

  • 入方向:開放21115-21119端口(TCP)
  • 入方向:開放21116端口(UDP)

4. 部署RustDesk服務

4.1 創建數據目錄

sudo mkdir -p /opt/rustdesk
sudo chown $USER:$USER /opt/rustdesk

4.2 啟動hbbs服務(ID注冊服務)

最好使用下面帶端口的安裝方法,官方文檔https://rustdesk.com/docs/zh-cn/self-host/rustdesk-server-oss/docker/里使用–net=host 似乎并沒有效果。

docker run --name hbbs \-p 21115:21115 \-p 21116:21116 \-p 21116:21116/udp \-p 21118:21118 \-v /opt/rustdesk:/root \-td --restart unless-stopped \rustdesk/rustdesk-server hbbs -r 你的服務器IP:21117

4.3 啟動hbbr服務(中繼服務)

docker run --name hbbr \-p 21117:21117 \-p 21119:21119 \-v /opt/rustdesk:/root \-td --restart unless-stopped \rustdesk/rustdesk-server hbbr

docker rustdesk

4.4 驗證服務狀態

# 檢查容器運行狀態
docker ps# 檢查端口監聽
sudo ss -tuln | grep 2111# 查看服務日志
docker logs hbbs
docker logs hbbr

5. 獲取密鑰

5.1 獲取公鑰

# 查看生成的公鑰
cat /opt/rustdesk/id_ed25519.pub

**重要:**這個公鑰將在客戶端配置時使用,請妥善保存。

6. 客戶端配置

6.1 下載RustDesk客戶端

  • Windows: https://github.com/rustdesk/rustdesk/releases
  • macOS: 同上
  • Android/iOS: 應用商店搜索"RustDesk"

6.2 配置連接信息

打開RustDesk客戶端,點擊"設置" -> “網絡” -> “ID/中繼服務器”:
在這里插入圖片描述

  • ID服務器: 你的服務器IP(?? 不要加端口號)
  • 中繼服務器: 你的服務器IP(?? 不要加端口號)
  • Key: 粘貼步驟5.1獲取的完整公鑰內容
    在這里插入圖片描述

6.3 保存并重啟

  • 點擊"確認"保存配置
  • 完全退出RustDesk客戶端
  • 重新啟動客戶端

7. 常見問題及解決方案

7.1 rustdesk客戶端顯示"未就緒,請檢查網絡連接"

原因: 端口映射或防火墻問題
解決:

# 檢查Docker端口映射
docker port hbbs
docker port hbbr# 檢查防火墻狀態
sudo ufw status# 驗證端口監聽
sudo ss -tuln | grep 21116
sudo ss -tuln | grep 21117

在這里插入圖片描述
我主要就是卡在這一步,端口沒有映射成功。這里不能開魔法的Tun模式,最好關掉。這樣能檢測是否真正的連接成功。

7.2 Key不匹配錯誤(高頻問題)

原因: 客戶端緩存了舊的配置或使用了錯誤的密鑰
解決:

# Windows下清除緩存(管理員CMD)
rmdir /s /q "%APPDATA%\RustDesk"
rmdir /s /q "%LOCALAPPDATA%\RustDesk"

然后重新獲取正確的密鑰:

# 確保獲取Docker容器中的最新密鑰
cat /opt/rustdesk/id_ed25519.pub

7.3 網絡連通性測試

# Windows PowerShell測試
Test-NetConnection 你的服務器IP -Port 21116
Test-NetConnection 你的服務器IP -Port 21117

正常結果應顯示:TcpTestSucceeded : True

7.4 代理軟件干擾

如果使用了Clash、Mihomo、V2Ray等代理軟件,需要添加直連規則:

# 示例配置(Clash/Mihomo)
rules:- DOMAIN,api.rustdesk.com,DIRECT- IP-CIDR,你的服務器IP/32,DIRECT

8. 總結

通過以上步驟,終于成功部署了一個完全自主可控的RustDesk服務器。相比于使用官方服務器,自建服務器具有以下優勢:

  • 隱私保護:所有連接數據不經過第三方服務器
  • 穩定可靠:不受官方服務器狀態影響
  • 自主可控:可根據需要調整服務配置
  • 成本可控:一次部署,長期使用

現在可以在任何安裝了RustDesk客戶端的設備上,通過你的自建服務器進行遠程桌面連接了!


關鍵提醒:

  • 服務器地址不要加端口號
  • 一定要配置Docker鏡像加速
  • Key不匹配時優先清除客戶端緩存
  • 網絡測試確認端口連通性

參考文章

https://blog.csdn.net/weixin_53510183/article/details/143257158
https://halo.blog360.sbs/archives/rustdesk-kai-yuan-yuan-cheng-zhuo-mian-ruan-jiahe-shi-yong-jiao-cheng
https://rustdesk.com/docs/zh-cn/self-host/
https://blog.csdn.net/m0_74823611/article/details/146158064

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/89923.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/89923.shtml
英文地址,請注明出處:http://en.pswp.cn/web/89923.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

datasophon安裝doris問題排除記錄

datasophon安裝doris搞了好久才成功,特別記錄一下。 多災多難的安裝過程:FE安裝 首先,配置界面,要注意兩個參數一定要改成正確的網段,否則會被識別成127.0.0.1注意:兩個priority_networks 參數必須要改成你…

suricata新增Mysql告警規則處理

suricata新增Mysql告警規則處理協議解析后續處理內容新增規則規則解析關鍵字新增Setup用于初始化檢測項Free用于資源釋放AppLayerTxMatch用于協議解析完成后的規則檢測針對pcap文件進行檢測總結協議解析后續處理內容 經過Mysql協議解析處理流程 介紹,我們在suricat…

使用位運算優化 Vue.js 應用:高效狀態管理技巧

在 Vue.js 開發中,位運算(Bitwise Operations)是一種高效的工具,尤其適用于需要管理大量布爾狀態或優化性能的場景。位運算通過操作二進制位來實現狀態的存儲和檢查,相比傳統的數組或對象操作,內存占用更低…

【Java SE】Clonable接口和深拷貝

目錄 一.Clonable接口 實現步驟: 完整代碼: 二.深拷貝 實現步驟: 完整代碼: 淺拷貝與深拷貝的對比 使用場景建議 完 淺拷貝(Shallow Copy)和深拷貝(Deep Copy)是對象復制的兩…

accelerate 在Pycham中執行的設置方法

背景 使用 accelerate 進行分布式代碼訓練時,需要在pycharm中進行調試,此時需要在pycharm中運行。 終端執行命令 # *[Specify the config file path and the GPU devices to use] export CUDA_VISIBLE_DEVICES0# *[Specify the config file path] expo…

探索量子計算與法律理論的交叉領域

文章目錄 前言 一、引言 二、內容 (一)知識產權 (二)隱私與安全 (三)責任認定 (四)證據與證明 (五)法律推理與決策 三、結論 總結 前言 隨著量子計算技術的突破性發展,其引發的法律范式重構問題日益凸顯。烏茲別克斯坦學者伊索姆別克?阿卜迪哈基莫夫于2024年在《量…

js迭代器

文章目錄前言實現原理:調用迭代器自制迭代器前言 迭代器是 JSt 中一種特殊的對象,它提供了一種統一的、通用的方式遍歷個各種不同類型的數據結構。 可以遍歷的數據結構包括:數組、字符串、Set、Map 等可迭代對象。我們也可以自定義實現迭代器…

chainlink VRF中文教程(含mock),解決error: Arithmetic Underflow in createSubscription

?我使用的版本:chainlink-brownie-contracts version:1.3.0?1. Import 相關包 ,,, import {VRFConsumerBaseV2Plus} from "chainlink/contracts/src/v0.8/vrf/dev/VRFConsumerBaseV2PLUS.sol"; import {VRFV2PlusClient} from "chainlink/contract…

非線性優化框架CasADi工具箱求解最優控制問題OCP

CasADi是一個開源的Python/MATLAB庫,主要用于數值優化,特別是最優控制問題。它提供了一個易于使用的符號框架,用于處理和生成表達式,以及高效地生成導數信息。 https://web.casadi.org/get/https://web.casadi.org/get/ 所有OCP…

Type-C接口臺式顯示器:LDR6021引領新潮流

Type-C單口便攜顯示器LDR6021是市場上一種新興的顯示設備,以下是對其的詳細介紹一、主要特點 便攜性:LDR6021采用了Type-C接口作為數據傳輸和供電接口,這種設計使得它能夠與各種支持Type-C接口的設備無縫連接,如筆記本電腦、智能手機、平板電…

在翻譯語義相似度和會議摘要相似度評估任務中 ,分類任務 回歸任務 生成任務區別

在翻譯語義相似度(Translation Semantic Similarity)和會議摘要相似度(Meeting Summary Similarity)等任務中,通常會根據任務的目標和輸出形式,將其劃分為三類常見的任務類型:1. 分類任務定義&a…

UGUI 性能優化系列:第二篇——Canvas 與 UI 元素管理

UGUI 性能優化系列:第一篇——基礎優化與資源管理 UGUI 性能優化系列:第二篇——Canvas 與 UI 元素管理 UGUI 性能優化系列:第三篇——渲染與像素填充率優化 UGUI 性能優化系列:第四篇——高級優化與注意事項 在 UGUI 性能優化…

企業開發轉型 | 前端AI化數字化自動化現狀

文章目錄前端AI化數字化自動化發展現狀引言調研背景與目的調研范圍與方法前端AI化技術現狀與工具生態主流AI工具分類與能力矩陣工具能力對比分析關鍵能力指標深度解析大模型技術成熟度評估前端AI化核心應用場景與人力優化路徑代碼生成與自動化開發設計到代碼全鏈路自動化自動化…

Mysql(運維-日志)

黑馬mysql筆記 最好開兩個窗口,一個用于mysql命令,一個用于liunx命令 目錄 錯誤日志 二進制日志 介紹 日志格式 mysq默認二進制日志文件為ROW 日志查看 二進制日志查看命令 默認日志文件格式下查看日志內容 更改日志文件格式查看日志內容 日志…

RabbitMQ:解鎖高效消息傳遞的密碼[特殊字符]

目錄 一、RabbitMQ 核心概念 1.1整體框架 1.2元素詳解 1.2.1 生產者(Producer)&消費者(Consumer) 1.2.2 交換機(Exchange) ①fanout (廣播型) ②direct (直連型…

StarRocks × MinIO:打造靈活高效的存算分離方案

“存算分離”(Decoupled Storage and Compute)是一種在現代數據系統中被廣泛采用的架構設計。它將計算和存儲解耦,使二者可以獨立擴展,提升資源利用率并降低運維成本。StarRocks 從 3.0 版本開始支持這一架構,允許用戶…

R語言的分位數回歸實踐技術高級應用

回歸是科研中最常見的統計學研究方法之一,在研究變量間關系方面有著極其廣泛的應用。由于其基本假設的限制,包括線性回歸及廣義線性回歸在內的各種常見的回歸方法都有三個重大缺陷:(1)對于異常值非常敏感,極少量的異常值可能導致結…

Tomcat的部署、單體架構、session會話、spring

一、Tomcat的部署①②③④⑤二.web項目在tomcat服務中如何運行:1.web項目源碼部署在服務器的webapps目錄里面2.將web項目打包(war),部署在服務器的webapps目錄里面。三 單體架構和前后端分離單體架構是將所有功能模塊(包括前端界面、后端邏輯、數據庫交互…

海康威視視覺算法崗位30問及詳解

海康威視視覺算法崗位30問及詳解 前言 視覺算法工程師是人工智能領域的熱門崗位,尤其在安防、自動駕駛、工業檢測等行業有著廣泛應用。海康威視作為行業龍頭,對視覺算法崗位的要求較高,面試問題既考察基礎理論,也關注工程實現。本…

14.7 Alpaca格式深度解析:3倍指令準確率提升的LLM微調秘訣

文章目錄 Alpaca格式深度解析:3倍指令準確率提升的LLM微調秘訣 指令微調格式:Alpaca Format 深度解析 14.3.1 Alpaca 格式誕生背景與技術價值 14.3.2 Alpaca 格式結構解析 14.3.3 實戰 Dolly-15K 數據轉 Alpaca 格式 14.3.4 Alpaca 格式的工程化實踐 14.3.5 格式擴展與挑戰應…