Dev Guide / 2026 ・ No.03
RustDesk 入门手册
远程桌面需要什么,什么时候需要服务器
发布
上一篇我们用 Tailscale 修好了连接远方设备的“路”。
那么,要在路的另一头操作对方的屏幕,还需要什么?
RustDesk 是必需的吗?装好就能用吗?什么时候需要自建服务器?
本文一边回答这三个问题,一边配合截图讲清 RustDesk 的原理和用法。
远程桌面需要什么(通路,加上传送画面的应用)
远程桌面的原理,是把对方的屏幕当作视频接收过来,再把我方的键盘鼠标操作发回去。这需要两样东西。
“应用”和“通路”是两个部件
上下可以自由组合。RustDesk 自带通路,所以单独也能用
上一篇的 Tailscale 是“通路”:它让设备之间能安全地互相到达,但不负责显示画面或传送操作。在它之上还需要一个传送画面的应用。RustDesk 就是这种应用之一,而且它的特点是连专用的通路(ID 服务器和中继服务器)也自带。
RustDesk 是必需的吗 ── 与系统自带功能的取舍
先说结论:不是必需的。只要用 Tailscale 连通了,很多时候系统自带的功能就够用。
| 方法 | 被控端 | 主控端 | 费用・注意 |
|---|---|---|---|
| Windows 远程桌面(RDP)+Tailscale | Windows 专业版及以上 | Windows 自带;Mac・iPhone・Android 用 Windows App | 免费。家庭版不能做被控端 |
| Mac 屏幕共享+Tailscale | Mac | Mac 自带;Windows・手机用 VNC 应用 | 免费。Mac 之间最省事 |
| Chrome 远程桌面 | Windows・Mac・Linux | 浏览器、手机应用 | 免费,需要 Google 账号 |
| TeamViewer・AnyDesk 等 | 主流系统 | 主流系统 | 个人使用免费,商用收费 |
| RustDesk | Windows・Mac・Linux・Android | 以上+iPhone・网页 | 免费开源,服务器也可以自选 |
RustDesk 适合这些场合:被控端是 Windows 家庭版(不能用 RDP);想跨 Windows 和 Mac 用同一种操作方式;要操作 Android 或从 Android 操作;以及帮家人处理电脑问题——不用让对方装 Tailscale,只要告诉你 ID 和密码就能连上。
RustDesk 是什么
RustDesk 是作为 TeamViewer、AnyDesk 替代品而开发的开源远程桌面软件。正如其名,它用编程语言 Rust 编写,界面用 Flutter 构建。GitHub 星标超过 12 万,撰写本文时的稳定版是 1.4.9(2026 年 7 月),9 月还发布了 1.5.0 的预发布版。
- 能做什么 ── 操作屏幕、传文件、共享剪贴板、声音、聊天、多显示器、录屏、TCP 隧道
- 支持的系统 ── Windows・macOS・Linux・Android 既能控制也能被控;iPhone・iPad 只能做主控端(iOS 不能被控)。还有在浏览器里用的网页版
- 费用 ── 应用免费。服务器如果自己运行开源版(OSS)也免费。只有带管理后台等功能的 RustDesk Server Pro 收费(按年付,1 用户・20 台的 Individual 相当于每月 11.88 美元起)
RustDesk 的原理(ID 服务器与中继服务器)
RustDesk 的服务器有两种,分工明确,和 Tailscale 的“名册管理员”与“DERP”的关系很像。
用 ID 呼叫,尽量直连
ID 只是示例,实际按设备分配
- ID 服务器(hbbs) ── 运行 RustDesk 的设备会一直把自己的 ID 和当前地址(IP 与端口)报给这里。主控端输入 ID 后,由它为双方牵线
- 打洞(hole punching) ── 牵线之后,双方同时互发数据穿过 NAT,让设备之间直接相连。据官方文档,大多数情况下能成功,中继服务器根本用不上
- 中继服务器(hbbr) ── 只有直连失败时,才由它转发画面和操作。中继的速度和稳定性取决于服务器性能和距离
装好就能用吗
能用。安装(或直接运行)后,RustDesk 会自动连上 RustDesk 公司运营的公共服务器,并显示 ID 和一次性密码。输入对方 ID 就能直接连接。不过现在有三个条件必须知道:
- 主控端需要登录 ── 由于诈骗和僵尸网络滥用不断,从 2026 年 4 月起,公共服务器要求主控端用 Google、GitHub 等账号登录(免费)。被控端目前不需要(官方预告,如果滥用持续,可能要求双方都登录)
- 公共服务器只是“试用” ── 官方 Wiki 明确写着,公共服务器仅供演示和测试,请不要用于正式或敏感的工作。RustDesk 本来就是按自建服务器的前提设计的
- Mac 和手机要设置权限 ── Mac 要允许“辅助功能”和“屏幕录制”,Android 要允许“屏幕捕获”等,否则看不到画面或无法操作
主界面底部的一句“Ready, For faster connection, please set up your own server(想连得更快,请搭建自己的服务器)”,很好地说明了公共服务器的定位。
下载与准备
官方网站只有 rustdesk.com,下载按钮会跳到 GitHub 的发布页。不要从名字相似的其他域名下载。
| 设备 | 获取地址 | 备注 |
|---|---|---|
| Windows | GitHub 发布页的 EXE(x86-64) | 也有用于批量部署的 MSI |
| Mac | 同一页面 Mac 的“Download”(.dmg) | Apple 芯片选 AArch64,Intel 选 x86-64 |
| iPhone・iPad | App Store“RustDesk Remote Desktop” | 只能做主控端 |
| Android | 同一页面的 Android(.apk) | 为防诈骗已从 Google Play 下架 |
| 浏览器 | rustdesk.com/web | 只能做主控端,无需安装 |
撰写本文时的稳定版是 1.4.9。发布页上方的 1.5.0 是“预发布版”,日常使用请选标有 Latest 的版本。
步骤 1:安装到 Windows(被控端)
| 步骤 | 操作 |
|---|---|
| 01 | 从 GitHub 发布页下载 rustdesk-1.4.9-x86_64.exe 并运行 |
| 02 | 不安装也能用;但如果是要从外面随时使用的电脑,请按界面提示安装(会作为开机即运行的服务安装) |
| 03 | 主界面左侧会显示这台电脑的 ID 和一次性密码 |
| 04 | 如果要从外面用自己的电脑,在 设置(ID 旁的 ⋮)→ Security 解锁安全设置,设置固定密码(permanent password) |
一次性密码是每次连接都会变的“临时口令”。帮家人时,电话里问一下一次性密码就够了。而要在电脑旁没人的时候连接自己的电脑,就需要设置一个又长又难猜的固定密码。
步骤 2:安装到 Mac(权限设置最关键)
| 步骤 | 操作 |
|---|---|
| 01 | 打开 .dmg,把 RustDesk 拖进应用程序文件夹 |
| 02 | 启动时如果因“无法验证开发者”等被拦下,到系统设置 → 隐私与安全性里允许运行 |
| 03 | 从 RustDesk 左侧提示中的 Configure 进入,允许辅助功能(操作键盘鼠标所需) |
| 04 | 同样允许屏幕录制(macOS 15 起叫“屏幕与系统录音”)(显示画面所需) |
| 05 | 用 Mac 控制别的设备时,如果按键传不过去,还要允许输入监控 |
如果设置里已经打开,RustDesk 却仍然报警,就在列表里用“−”删掉 RustDesk,再用“+”重新加入。官方文档说,若仍无效则需要重启。
步骤 3:在手机上使用(iPhone・Android)
- iPhone・iPad ── 从 App Store 安装,输入对方 ID 连接。只能做主控端。使用公共服务器时还需要在设置里登录
- Android ── 安装 GitHub 上的 .apk(需要允许“安装未知来源应用”)。既能做主控端,也能做被控端
让 Android 被控时,在底部菜单的 Share Screen 中允许权限,然后点 Start Service。共享屏幕需要 Android 6 及以上,共享手机内部声音需要 Android 10 及以上。要接受鼠标操作,还得在 Android 设置的无障碍(已安装的服务)里打开 RustDesk Input。
步骤 4:连接试试
| 步骤 | 操作 |
|---|---|
| 01 | 在主控端主界面右上的“Control Remote Desktop”中输入对方 ID,点 Connect |
| 02 | 输入密码(一次性或固定)。如果对方设置为点击确认,就等对方同意 |
| 03 | 显示对方画面后,用顶部工具栏调整画质、传文件、聊天、切换屏幕 |
| 04 | 结束时关闭窗口。被控端也随时可以点 Disconnect 断开 |
只想传文件时,可以从 ID 栏下方的 Transfer file 直接进入文件传输界面,不必打开桌面。
什么时候需要中继或自建服务器
“继续用公共服务器,还是自己准备服务器?”可以按下面的流程判断。
需要服务器吗
从上往下检查。符合第一条,就不需要服务器
| 这种情况 | 原因 | 怎么办 |
|---|---|---|
| 对方在公司网络或移动网络 | UDP 被封或 NAT 严格,容易直连失败而走中继 | 把中继放在近处(自建 hbbr),或与 Tailscale 搭配 |
| 公共服务器慢、断线 | 中继由全世界用户共享,受拥挤和故障影响 | 在国内 VPS 等自建服务器 |
| 工作、机密作业 | 官方自己说公共服务器“仅供演示和测试” | 自建服务器(需要时用 Pro) |
| 管理大量设备和人员 | 需要统一管理地址簿、用户、日志、两步验证 | RustDesk Server Pro |
| 只在自己的设备间使用 | 两边都能装 Tailscale,通路已经有了 | Tailscale+直接 IP 访问(无需服务器) |
据官方文档,走中继时每个连接的流量约为每秒 30KB〜3MB(1920×1080 屏幕,取决于分辨率和画面变化),办公用途约每秒 100KB。自建中继服务器时,要按这个流量估算带宽。
方法 A:与 Tailscale 搭配(无需服务器)
如果已经按上一篇在两台设备上装好了 Tailscale,这是最简单的办法。使用 RustDesk 的直接 IP 访问,既不经过公共服务器也不经过自建服务器,设备直接在 Tailscale 的通路上相连。
| 步骤 | 操作 |
|---|---|
| 01 | 在被控端 设置 → Security 解锁,打开 Enable direct IP access(默认监听端口 21118) |
| 02 | 保险起见,在同一界面的 Use IP whitelisting 中填入 100.64.0.0/10(Tailscale 的地址范围),不接受 tailnet 以外的连接 |
| 03 | 在主控端的 ID 栏输入对方的 Tailscale IP 地址(100.x.y.z),点 Connect |
- 填 IP,不填名字 ── RustDesk 无法分辨输入的是 ID 还是名字,所以直接 IP 访问不能直接用 MagicDNS 的设备名,要填以 100 开头的地址
- 加密交给 Tailscale ── RustDesk 的 FAQ 说明,直接 IP 连接本身不加密。走 Tailscale 时有 WireGuard 加密,所以没问题;但绝不要在路由器上把 21118 端口开放到互联网
方法 B:自建服务器(OSS 版)
如果有装不了 Tailscale 的对象,或者用于工作,就自建服务器。对性能的要求很低,官方说“最小的云服务器就够,树莓派也行”。放在国内地区的 VPS 上,即使走中继,也会因为距离近而更快。
| 步骤 | 操作 |
|---|---|
| 01 | 准备一台 Linux 服务器,在防火墙放行 TCP 21115〜21117 和 UDP 21116(只有使用网页版时才需要 TCP 21118・21119) |
| 02 | 安装 Docker,用官方的 compose 文件启动 hbbs 和 hbbr(见下方命令) |
| 03 | 记下首次启动时生成的公钥(数据目录里的 id_ed25519.pub) |
| 04 | 在所有设备的 设置 → Network 解锁,ID server 填服务器地址,Key 填公钥,点 Apply(Relay server 留空会自动推断) |
# 安装 Docker bash <(wget -qO- https://get.docker.com) # 获取官方 compose 文件并启动(会运行 hbbs 和 hbbr 两个服务) wget rustdesk.com/oss.yml -O compose.yml sudo docker compose up -d # 查看要填到客户端的公钥 cat ./data/id_ed25519.pub
公钥位于 compose 文件指定的数据目录(官方示例为 ./data)。
- 放在家里时要注意 ── 服务器放在家用路由器内侧时,可能出现在家里用自己的公网 IP 或域名连不上的情况(NAT 回环)。官方有专门的处理说明
- 升级到 Pro ── 增加网页控制台、用户和地址簿管理、审计日志、两步验证、OIDC・LDAP、带自家标志的客户端生成等。按年付,Individual(1 用户・20 台)相当于每月 11.88 美元,Basic(10 用户・100 台)相当于每月 23.88 美元
安全使用
远程桌面是把整台电脑交给对方的工具。RustDesk 官网和发布页都醒目地写着:“如果陌生人在电话里让你安装 RustDesk,请不要安装,立刻挂断。”要记住,这类软件很容易被用于技术支持诈骗。
- 只从 rustdesk.com 和 GitHub 获取 ── 官方声明“rustdesk.com 是唯一的官方域名”
- 不把 ID 和密码告诉别人 ── 即使被要求,也只告诉可信的人。固定密码要长,不与别处共用
- 两步验证和白名单 ── 在设置的 Security 中可以使用两步验证,以及 IP・ID 白名单
- 不用时停掉 ── 不打算从外面连接的电脑,也可以把服务停掉
- 持续更新 ── 跟随稳定版(Latest),不要一直用旧版
结 — 一页总结
- 远程桌面需要“通路”和“传送画面的应用”。Tailscale 是通路,RustDesk 是应用(自带通路)。
- RustDesk 不是必需的。Windows 专业版用 RDP、Mac 用屏幕共享就够。Windows 家庭版、跨系统、Android、帮家人时,RustDesk 很方便。
- 装好就能借助公共服务器马上使用。但主控端需要登录(2026 年 4 月起),公共服务器仅供演示和测试,Mac 和手机需要设置权限。
- 大多数连接是直连,中继(hbbr)只在直连失败时使用。慢、对方在公司或移动网络、用于工作时,就自建服务器。
- 只在自己的设备之间使用,就用 Tailscale+直接 IP 访问,无需服务器。21118 端口不要对互联网开放。
参考
- RustDesk Docs — RustDesk Client(英文)
- RustDesk Docs — Mac(英文)
- RustDesk Docs — Android(英文)
- RustDesk Docs — Self-host(hbbs・hbbr 与端口,英文)
- RustDesk Docs — RustDesk Server OSS: Installation(英文)
- RustDesk Docs — RustDesk Server OSS: Docker(英文)
- RustDesk Docs — Client Configuration(英文)
- RustDesk Docs — Advanced Settings(直接 IP 访问・白名单,英文)
- RustDesk Wiki — Login required for public server(英文)
- RustDesk Wiki — FAQ(英文)
- GitHub — rustdesk/rustdesk Releases
- RustDesk — Pricing(英文)
- Microsoft 支持 — 如何使用远程桌面
- Apple 支持 — 在 Mac 上打开或关闭屏幕共享
截图中注明“截图”的,是笔者对官网和 GitHub 发布页拍摄的画面;其余为 RustDesk 官方文档与官方 Wiki 中刊载的图片,注明出处后引用(仅缩小、加留白及两图并排)。官方文档中的 Mac 截图为旧版 macOS。版本、价格与公共服务器的条件为 2026 年 10 月 1 日的信息,可能变动。
开发指南 No.3 — RustDesk 入门手册 / 2026.10