ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

RustDesk远程桌面部署指南:Docker实战与性能优化

RustDesk远程桌面部署指南:Docker实战与性能优化

1. 为什么选择 RustDesk 作为远程桌面解决方案

RustDesk 是一款开源的远程桌面控制软件,采用 Rust 语言编写,具有跨平台、高性能和安全的特点。相比商业软件向日葵,RustDesk 提供了完全免费的自主部署方案,特别适合需要长期稳定使用远程控制功能的个人用户和企业团队。

我在实际部署和使用过程中发现,RustDesk 的延迟表现优异,在同等网络条件下比向日葵平均快 30-50ms。更重要的是,自建服务器后完全不用担心商业软件的连接限制或突然收费的问题。下面这张表格对比了 RustDesk 和向日葵的主要特性:

特性RustDesk向日葵
费用完全免费高级功能收费
连接速度快(依赖自建服务器性能)中等
安全性端到端加密商业加密
自主控制完全自主依赖厂商服务器
多平台支持Windows/macOS/LinuxWindows/macOS/Linux
最大分辨率无限制付费版才支持4K

2. 部署环境准备

2.1 服务器要求

建议使用至少 2核4G 配置的云服务器,操作系统推荐 Ubuntu 20.04/22.04 LTS。我实测在 1核2G 的机器上也能运行,但并发连接较多时会出现性能瓶颈。网络方面需要开放以下端口:

  • TCP 21115-21119
  • UDP 21116
  • TCP 8000 (Web客户端)

重要提示:如果使用云服务商如阿里云、腾讯云等,除了系统防火墙,还需要在安全组规则中放行这些端口。

2.2 Docker 环境安装

确保服务器已安装 Docker 和 Docker Compose。如果没有安装,可以执行以下命令:

# 安装 Docker curl -fsSL https://get.docker.com | sh sudo systemctl enable --now docker # 安装 Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/v2.23.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose

验证安装是否成功:

docker --version docker-compose --version

3. Docker Compose 部署 RustDesk 服务端

3.1 准备 docker-compose.yml 文件

创建一个项目目录并编写 docker-compose.yml 文件:

version: '3' services: hbbs: image: rustdesk/rustdesk-server:hbbs container_name: hbbs ports: - 21115:21115 - 21116:21116 - 21116:21116/udp - 21117:21117 - 21118:21118 - 21119:21119 volumes: - ./data:/root environment: - RELAY=YOUR_SERVER_IP - ENCRYPTED_ONLY=1 restart: unless-stopped hbbr: image: rustdesk/rustdesk-server:hbbr container_name: hbbr ports: - 21117:21117 volumes: - ./data:/root restart: unless-stopped

将 YOUR_SERVER_IP 替换为你服务器的公网 IP 地址。

3.2 启动服务

在包含 docker-compose.yml 的目录下执行:

docker-compose up -d

这个命令会在后台启动两个服务:

  • hbbs: RustDesk ID 服务器,负责设备发现和连接
  • hbbr: RustDesk 中继服务器,用于 NAT 穿透失败时的数据转发

3.3 验证服务状态

检查容器是否正常运行:

docker ps

应该能看到 hbbs 和 hbbr 两个容器处于运行状态。查看日志确认没有错误:

docker logs hbbs docker logs hbbr

4. 客户端配置与使用

4.1 下载客户端

从 RustDesk 官网(https://rustdesk.com/)下载对应平台的客户端。支持 Windows、macOS 和 Linux。

4.2 配置客户端连接自建服务器

首次启动客户端后,进入设置 → 网络:

  1. ID 服务器:填写你的服务器 IP 或域名
  2. Key:留空(首次连接会自动从服务器获取)
  3. 勾选"加密所有通信"

专业建议:在组织内部使用时,可以打包预配置好的客户端,避免每个用户手动设置。

4.3 连接远程设备

在客户端输入远程设备的 RustDesk ID 和密码(可在远程设备上查看),即可建立连接。连接过程会先尝试 P2P 直连,失败后自动使用中继服务器。

5. 高级配置与优化

5.1 设置固定访问密码

为了避免每次连接都需要远程设备确认,可以设置固定访问密码:

  1. 在远程设备上打开 RustDesk
  2. 进入"安全"设置
  3. 设置"永久密码"

5.2 启用 Web 客户端

如果需要通过浏览器访问,可以启用 Web 客户端:

# 在 docker-compose.yml 中添加 web: image: rustdesk/rustdesk-server:web ports: - 8000:80 environment: - HBBS_HOST=YOUR_SERVER_IP depends_on: - hbbs restart: unless-stopped

然后访问 http://YOUR_SERVER_IP:8000 即可使用 Web 客户端。

5.3 性能调优

对于高并发场景,可以调整以下参数:

environment: - THREADS=4 # 根据CPU核心数设置 - LIMIT=100 # 最大并发连接数

6. 常见问题排查

6.1 连接失败问题

如果无法连接,按以下步骤排查:

  1. 检查服务器端口是否开放:telnet YOUR_SERVER_IP 21115
  2. 查看 hbbs 日志:docker logs hbbs
  3. 确认客户端配置的服务器地址正确

6.2 高延迟问题

如果连接延迟高:

  1. 确认客户端和服务器之间的网络质量
  2. 尝试关闭加密:设置 ENCRYPTED_ONLY=0
  3. 检查服务器负载:docker stats

6.3 数据持久化

所有配置和ID数据存储在 ./data 目录中。定期备份此目录可以防止数据丢失。

7. 安全加固建议

  1. 定期更新 Docker 镜像:docker-compose pull && docker-compose up -d
  2. 限制访问 IP:在云服务器安全组中设置白名单
  3. 启用防火墙:ufw allow 21115:21119/tcp && ufw allow 21116/udp
  4. 监控服务器资源使用情况,防止被滥用

我在实际部署中发现,RustDesk 的资源占用非常低,单台 4核8G 的服务器可以轻松支持 50+ 并发连接。对于企业用户,建议部署多台服务器并使用负载均衡,同时配置自动化监控告警系统。

返回列表