RustDesk:自带公网中继与自托管部署的开源远程桌面
RustDesk 是一款免费开源、跨平台的远程桌面控制软件。它的核心目标是提供安全、快速、易用且可自托管的远程访问方案,用作 TeamViewer 等商业软件的替代品。
源代码托管在 GitHub,目前已有 96k Stars:
https://github.com/rustdesk/rustdesk
功能特性
- 开源免费:源代码完全公开,个人使用的基本远程控制功能免费,也提供面向企业功能的专业版。
- 跨平台:支持 Windows、macOS、Linux、iOS、Android 和 Web 客户端,方便在不同设备间进行远程控制。
- 自托管:用户可以在自己的服务器上部署 RustDesk Server,数据完全自主可控。
- 高性能:核心代码使用 Rust 编写,支持 VP8 / VP9 / AV1 软件编解码器及 H264 / H265 硬件编解码器,配合优化的网络传输提供流畅的远程控制。
- 文件传输:远程会话中支持本地与远程计算机间双向传输文件。
- 远程终端:内置远程命令行终端(类似 SSH),方便命令行操作。
- 多显示器支持:支持远程计算机多显示器间的切换与控制。
- 安全性:基于 NaCl 端到端加密的 P2P 连接,建立后传输的屏幕图像、键鼠事件、文件数据即使被截获也无法解密。Windows 下无需管理员权限或安装,可按需在本地或远程提升权限。
下载与安装
RustDesk 由服务器和客户端两部分组成。
使用 Docker 部署开源版服务器:
wget rustdesk.com/oss.yml -O compose.yml
docker compose up -d
客户端从这里下载,选择对应平台的安装包:
https://github.com/rustdesk/rustdesk/releases
安装完成后运行 RustDesk,在「网络」设置中配置 ID 服务器和中继服务器。还需要设置密钥(Key),密钥可在服务器用户工作目录下 data 文件夹中的 id_ed25519.pub 文件里查看。
详细文档见官方文档:https://rustdesk.com/docs/zh-cn/
最后,如果不打算自己维护服务器,可以先用免费的公共 RustDesk 服务器(注意隐私风险,注重数据私密性的用户慎用):