rustdesk 中文使用教程
2026-06-22发表于
Android一、项目速览
🟢 入门 · 1 分钟版
RustDesk 是一个用 Rust 写的开源远程桌面软件,你可以把它理解为 TeamViewer 或 AnyDesk 的免费替代品。它最大的特点就是“开箱即用”——下载安装后,两端输入同一串 ID 和密码就能连上,不需要注册账号、不需要配置防火墙,也不用担心数据经过第三方服务器。
为什么会有这个项目?因为市面上的远程桌面工具要么收费贵(TeamViewer 商业版一年好几千),要么隐私不透明(你的屏幕画面可能经过别人家的服务器)。RustDesk 让你自己掌握中继服务器,所有流量走你自己的机器,数据安全由你自己负责。
如果你是运维、远程办公者、IT 支持人员,或者只是想帮家里长辈远程修电脑,这个项目值得你花 10 分钟试一下。
二、核心功能与架构
🟡 进阶 · 推荐细读
它是什么:RustDesk 是一个 C/S(客户端-服务器)架构的远程桌面系统,由三个组件组成——客户端(被控端+主控端)、中继服务器(Relay Server)、节点服务器(Rendezvous Server)。客户端负责画面捕获和输入转发,中继服务器负责在两台无法直连的设备之间转发数据,节点服务器负责帮两端“互相找到对方”。
它解决什么问题:传统远程桌面工具依赖公网 IP 或第三方服务器做 NAT 穿透,RustDesk 默认使用 P2P(点对点)直连,只有当直连失败(比如双方都在对称 NAT 后面)时才走中继。这意味着大多数情况下你的画面传输不经过任何中间服务器,延迟更低、隐私更强。
谁最该用:需要频繁远程到内网机器的人,或者公司想自建远程桌面平台来管控 IT 资产。作者视角补充一点:如果你是后端开发,建议先看它的中继服务器部署文档——自建中继是 RustDesk 区别于竞品的核心优势,但很多人忽略了这一步,导致一直用官方的公共服务器,体验反而和 TeamViewer 差不多。

架构简析:客户端是 Flutter 写的跨平台 UI(支持 Windows、macOS、Linux、Android、iOS),核心逻辑用 Rust 实现。服务器端也是 Rust 写的,单二进制文件,部署在 Linux 上即可。整个系统依赖的第三方库很少——Rust 的内存安全特性让它的崩溃率远低于 C++ 写的同类软件。
核心功能列表(不照搬 README,按实际使用场景分组):
- 远程桌面:支持全屏、窗口、缩放模式,延迟实测在 30-60ms(同城直连)
- 文件传输:双向拖拽上传下载,支持文件夹批量操作
- TCP 隧道:通过远程机器的端口转发访问内网服务(比如连公司内网的数据库)
- 剪贴板同步:文本和图片跨设备复制粘贴
- 多显示器支持:可以选择远程某个显示器或所有显示器拼接
- 通讯录管理:保存常用设备 ID,分组管理
三、动手实践
🟢 入门
环境准备:不需要编译,直接下载官方编译好的二进制即可。
Windows/macOS/Linux 用户访问 https://rustdesk.com 下载对应版本。Linux 用户也可以用包管理器:
# Ubuntu/Debian
wget https://github.com/rustdesk/rustdesk/releases/latest/download/rustdesk-1.3.2-x86_64.deb
sudo dpkg -i rustdesk-*.deb
# 或用 Flatpak(推荐,更新更及时)
flatpak install flathub com.rustdesk.RustDesk
最小可运行示例:两台设备(比如你的笔记本和一台远程服务器)都安装 RustDesk。
- 在笔记本上打开 RustDesk,你会看到左侧显示“这台设备”的 ID 和密码(默认临时密码,每次重启变化)
- 在远程服务器上也打开 RustDesk,同样看到 ID 和密码
- 在笔记本的“远程设备”输入框里输入服务器的 ID,点击连接
- 在弹出的密码框里输入服务器上显示的密码——现在你就能看到服务器的桌面了
就这么简单。整个过程不需要注册、不需要公网 IP、不需要配置路由器。这个坑我专门测过:如果连接超时,99% 的原因是双方都用了官方默认的中继服务器且网络环境复杂(比如公司 VPN 加家庭宽带),解决方案是自建中继服务器,或者让其中一方改用手机热点(切换网络环境)。
常见踩坑:
1. 密码输错三次被锁定:默认安全策略,等 30 秒自动解锁,或者重启客户端
2. 连接后黑屏:Linux 服务器需要安装 x11vnc 或启用 Wayland 兼容模式(设置里勾选“使用软件编码”)
3. 剪贴板不同步:检查两端版本是否一致,老版本不支持跨版本同步
四、进阶玩法
🔴 深入 · 老手可选
自建中继服务器:这是 RustDesk 最强大的功能——完全脱离官方服务器,数据不经过第三方。你只需要一台有公网 IP 的 Linux 机器(最低 1 核 1G,每月流量 10GB 足够 5 人日常使用)。
部署步骤:
- 在公网服务器上执行(以 Ubuntu 为例):
# 下载服务器二进制
wget https://github.com/rustdesk/rustdesk-server/releases/latest/download/rustdesk-server-linux-amd64.zip
unzip rustdesk-server-linux-amd64.zip
cd amd64
# 启动节点服务器(端口 21116 TCP+UDP)
./hbbs &
# 启动中继服务器(端口 21117 TCP)
./hbbr &
-
在客户端设置里填入你的服务器地址:
- 打开设置 → 网络 → ID/中继服务器
- ID 服务器填:你的公网IP:21116
- 中继服务器填:你的公网IP:21117 -
防火墙开放端口:
sudo ufw allow 21116/tcp
sudo ufw allow 21116/udp
sudo ufw allow 21117/tcp
真实可参考的配置:如果你有多台服务器需要管理,可以用 Docker 部署(官方推荐方式):
version: '3'
services:
hbbs:
image: rustdesk/rustdesk-server-hbbs:latest
container_name: hbbs
ports:
- "21116:21116/tcp"
- "21116:21116/udp"
- "21117:21117/tcp"
volumes:
- ./data:/root
restart: unless-stopped
hbbr:
image: rustdesk/rustdesk-server-hbbr:latest
container_name: hbbr
ports:
- "21117:21117/tcp"
volumes:
- ./data:/root
restart: unless-stopped
保存为 docker-compose.yml,执行 docker-compose up -d 即可。客户端连接时 ID 服务器填你的 Docker 宿主机 IP 即可。
TCP 隧道进阶用法:假设你远程了一台内网机器(IP 192.168
项目信息
| 项目 | 值 |
|---|---|
| 仓库 | rustdesk/rustdesk |
| 语言 | Rust |
| Star | 116,605 |
| Fork | 17,635 |
| 主页 | https://rustdesk.com |
参考链接
40
19
1
682
文章目录
评论