RustDesk 远程桌面
用 Rust 编写的开源远程桌面应用,支持自托管中继服务器,可作为 TeamViewer 的替代方案。开箱即用、无需复杂配置,数据完全由自己掌控。
过去 7 天收获 2 颗 Star
爱鲜报评分
0 人评分
127k
星数
是
中文
Rust
主语言
是
活跃
518
贡献者
人工分析
EDITORIAL推荐理由
RustDesk 是当前最受关注的开源远程桌面项目之一,GitHub 星标超过 12 万,跨 Windows、macOS、Linux、Android、iOS 全平台。它最大的价值在于可自建 rendezvous/relay 服务器,摆脱第三方云服务对隐私和稳定性的制约。Rust + Flutter 的技术栈兼顾性能与界面体验,适合企业内网运维、远程办公与个人自托管场景。
适用场景
- 企业内网远程运维与技术支持
- 个人自建远程桌面服务替代 TeamViewer
- 跨平台设备远程控制(Windows/macOS/Linux/移动端)
- 远程办公与家庭电脑访问
- 开源软件自托管与隐私敏感场景
优点
- 完全开源(AGPL-3.0),可审计、可二次开发
- 支持自建中继服务器,数据自主可控
- 跨平台覆盖桌面与移动端,客户端体验统一
- Rust 实现核心逻辑,性能与内存安全兼顾
- 社区活跃,文档与多语言 README 完善
缺点
- 自建服务器需要一定网络与运维知识
- AGPL-3.0 协议对商业闭源集成有约束
- 移动端与被控端部分高级功能依赖商业版 Server Pro
- 从源码构建涉及 vcpkg、Flutter 等多套工具链,门槛较高
RustDesk 是什么
RustDesk 是一款用 Rust 编写的开源远程桌面应用,定位为 TeamViewer 的自托管替代方案。它开箱即用、无需复杂配置,同时允许你完全掌控数据:既可以使用官方公共服务器,也可以自建 rendezvous/relay 中继服务,甚至基于官方示例自行实现服务端。
核心特性
- 跨平台支持:Windows、macOS、Linux、Android、iOS 均有客户端,桌面端基于 Flutter 构建界面。
- 自托管能力:可部署私有中继服务器,连接数据不经过第三方。
- P2P 直连:在条件允许时优先点对点连接,降低延迟与中继压力。
- 多协议兼容:Topics 中涉及 RDP、VNC 等远程控制相关方向。
- 多语言界面:README 与 UI 均提供包括中文在内的多语言版本。
技术架构
项目主语言为 Rust,核心库 libs/hbb_common 封装了视频编解码、配置管理以及 TCP/UDP 通信等基础能力。桌面端 GUI 早期使用 Sciter,现已转向 Flutter;移动端同样基于 Flutter 实现。
rustdesk/
├── libs/hbb_common # 编解码、配置、网络封装
├── src/ # 主程序与业务逻辑
├── flutter/ # Flutter 桌面/移动端界面
└── docs/ # 多语言文档
构建与使用
普通用户可直接从 Releases 页面下载各平台二进制包,或通过 F-Droid、Flathub 获取移动端与 Linux 版本。
开发者从源码构建时,需要准备 Rust 与 C++ 构建环境,并安装 vcpkg 管理 libvpx、libyuv、opus、aom 等依赖,随后执行 cargo run。项目也提供了 Docker 构建方式,适合在隔离环境中编译。
# 依赖准备完成后
git clone --recurse-submodules https://github.com/rustdesk/rustdesk
cd rustdesk
cargo run
适用与注意
RustDesk 适合企业内网运维、远程办公、个人自建远程控制服务等场景。需要注意的是,自建服务器涉及网络与运维知识;AGPL-3.0 协议对闭源商业集成有约束;部分高级功能由商业版 Server Pro 提供。请勿将本软件用于任何未经授权的访问或侵犯隐私的行为。
评论
- 暂无评论,来写第一条吧。