![图片[1]-Docker Compose 一键部署 RustDesk Server 自建教程:打造安全可控的远程桌面中转服务器](https://zwn.cc/wp-content/uploads/2025/11/005a3593f320251101141402.webp)
在远程办公、技术支持或内网穿透的场景中,RustDesk 以其开源、安全、可自建的特性逐渐成为 TeamViewer 和 AnyDesk 的优秀替代方案。
相比公有云中转,自建 RustDesk Server 能让你完全掌控数据传输与连接权限,更安全、更高效。
本文将通过 Docker Compose 的方式,手把手教你在自己的服务器上搭建一个完整的 RustDesk Server 环境(包含官方服务与 API 管理界面),帮助你轻松部署属于自己的远程控制平台。
RustDesk Server 架构简介
RustDesk 的自建服务器主要由三个部分组成:
- hbbs(ID Server):负责分配客户端 ID 与注册信息;
- hbbr(Relay Server):负责在客户端间进行数据中转;
- API(Web 管理接口):由社区开发者 lejianwen 提供,用于可视化管理用户、查看连接日志等。
整体架构如下:
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ RustDesk 客户端 │ <──> │ hbbs (21116) │ <──> │ hbbr (21117) │
└─────────────┘ └─────────────┘ └─────────────┘
│
│
┌─────────────┐
│ API 管理端 │ (21114)
└─────────────┘
环境准备
在开始之前,请确保你的服务器已具备以下条件:
- 操作系统:Linux (Ubuntu / Debian / CentOS)
- 安装了 Docker 和 Docker Compose
- 服务器具备公网 IP 或可供内网设备访问
- 预留端口:
21114,21115,21116,21117,21118,21119
如未安装 Docker,可使用以下命令快速安装:
curl -fsSL https://get.docker.com | bash
sudo systemctl enable docker --now
创建部署目录与配置文件
首先创建 RustDesk 的数据目录:
mkdir -p /DATA/AppData/rustdesk-server/data
mkdir -p /DATA/AppData/rustdesk-server/api
然后在该目录下创建 docker-compose.yml 文件:
YOURKEY 建议自定义一个复杂的字符串(如随机生成的 32 位字符),客户端需保持一致;192.168.1.66 请替换为你服务器的 实际 IP 地址;若使用公网服务器,请务必在防火墙中开放上述端口。
启动服务
在 docker-compose.yml 文件所在目录,执行以下命令:
docker compose up -d
启动后,可以通过命令查看运行状态:
docker ps
正常情况下你会看到三个容器:
rustdesk-server-hbbs
rustdesk-server-hbbr
rustdesk-server-api
若想查看日志,可执行:
docker logs -f rustdesk-server-api
访问管理面板
![图片[2]-Docker Compose 一键部署 RustDesk Server 自建教程:打造安全可控的远程桌面中转服务器](https://zwn.cc/wp-content/uploads/2025/11/2376363c4020251101151709.webp)
部署完成后,访问浏览器:
http://<服务器IP>:21114
默认管理员账户为:
- 用户名: admin
- 密码: 首次启动时会在控制台日志中输出
如需修改密码,API容器中可使用命令行方式:
./apimain reset-admin-pwd <pwd>
配置客户端连接
在 RustDesk 客户端中打开 “设置 → 网络”,填写以下内容:
- ID 服务器 (ID Server):
你的服务器 IP:21116 - 中继服务器 (Relay Server):
你的服务器 IP:21117 - Key: 与配置文件中
KEY值保持一致
保存后,即可使用自建服务器进行连接。
客户端间的通信将完全走你的中转服务器,实现去中心化、自主可控的远程桌面。
Web端管理
![图片[3]-Docker Compose 一键部署 RustDesk Server 自建教程:打造安全可控的远程桌面中转服务器](https://zwn.cc/wp-content/uploads/2025/11/1c35b6689e20251102152116.webp)
![图片[4]-Docker Compose 一键部署 RustDesk Server 自建教程:打造安全可控的远程桌面中转服务器](https://zwn.cc/wp-content/uploads/2025/11/614964e1dc20251102152123.webp)
![图片[5]-Docker Compose 一键部署 RustDesk Server 自建教程:打造安全可控的远程桌面中转服务器](https://zwn.cc/wp-content/uploads/2025/11/3b79d7049520251102152136.webp)
![图片[6]-Docker Compose 一键部署 RustDesk Server 自建教程:打造安全可控的远程桌面中转服务器](https://zwn.cc/wp-content/uploads/2025/11/f04694c97d20251102152147.webp)
![图片[7]-Docker Compose 一键部署 RustDesk Server 自建教程:打造安全可控的远程桌面中转服务器](https://zwn.cc/wp-content/uploads/2025/11/f80ee1051e20251102152155.webp)
设置反代
常见问题与优化建议
1. 客户端无法连接?
- 检查服务器防火墙端口是否开放;
- 确认客户端与服务端的
KEY一致; - 执行
docker logs rustdesk-server-hbbs查看详细报错。
2. 如何启用 HTTPS?
你可以在前面加一层 Nginx / Caddy / Traefik,通过反向代理为 21114 管理面板提供 HTTPS 访问。
3. 数据备份与迁移
/DATA/AppData/rustdesk-server/data 与 /DATA/AppData/rustdesk-server/api 即为核心数据目录,直接打包备份即可。
通过本文的部署方式,你已经完成了一个 RustDesk 自建中转服务器 的完整环境。
这不仅让你的远程连接更加私密与高效,也为企业内部运维、跨地域协作提供了安全可控的远程桌面解决方案。
RustDesk 的开源精神,让我们拥有了真正属于自己的远程访问自由。
如果你对网络架构、安全部署有更高要求,还可以在此基础上集成反向代理、认证网关或加密传输模块,让你的远控系统更稳、更强、更安全。










![表情[doge]-造物ZAOWU](https://zwn.cc/wp-content/themes/zibll/img/smilies/doge.gif)
![表情[xieyanxiao]-造物ZAOWU](https://zwn.cc/wp-content/themes/zibll/img/smilies/xieyanxiao.gif)
![表情[touxiao]-造物ZAOWU](https://zwn.cc/wp-content/themes/zibll/img/smilies/touxiao.gif)

暂无评论内容