RustDesk 中文网 v1.3.9 已更新(2026-07-25)—— 新增UDP协议支持,优化连接稳定性,立即更新

RustDesk Docker一键部署教程:自建远程桌面中继服务器

立即下载RustDesk 中文网 全平台支持 · 官方最新版

RustDesk服务端Docker部署概述

RustDesk作为开源远程桌面软件,支持自建中继服务器。通过自建服务器,你可以完全掌控数据传输路径,获得更快的连接速度和更高的隐私保障。Docker部署是目前最快捷的自建方案,一条命令即可启动完整的RustDesk服务端。

本文将手把手教你用Docker部署RustDesk服务端。

前置准备

服务器要求

项目 最低要求 推荐
CPU 1核 2核+
内存 512MB 1GB+
硬盘 5GB 10GB+
带宽 1Mbps 5Mbps+
操作系统 Linux(Ubuntu/Debian/CentOS) Ubuntu 22.04
公网IP 必需 —

需要开放的端口

端口 协议 服务 说明
21115 TCP hbbs NAT类型测试
21116 TCP hbbs ID注册/心跳
21116 UDP hbbs ID注册/心跳
21117 TCP hbbr 中继服务
21118 TCP hbbs WebSocket
21119 TCP hbbr WebSocket

安装Docker

如果服务器尚未安装Docker,执行以下命令:

# Ubuntu/Debian
curl -fsSL https://get.docker.com | sh
systemctl enable docker
systemctl start docker

# 验证安装
docker --version
docker compose version

部署方案

方案一:Docker Compose部署(推荐)

创建部署目录和配置文件:

mkdir -p /opt/rustdesk
cd /opt/rustdesk

创建 docker-compose.yml 文件:

version: '3'

networks:
  rustdesk-net:
    external: false

services:
  hbbs:
    container_name: hbbs
    ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21118:21118
    image: rustdesk/rustdesk-server:latest
    command: hbbs -r <你的服务器公网IP>:21117
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    depends_on:
      - hbbr
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    ports:
      - 21117:21117
      - 21119:21119
    image: rustdesk/rustdesk-server:latest
    command: hbbr
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    restart: unless-stopped

重要:将 <你的服务器公网IP> 替换为你的服务器实际公网IP地址。

启动服务:

docker compose up -d

查看运行状态:

docker compose ps

方案二:单条Docker命令部署

如果你不想用Docker Compose,也可以分别启动两个容器:

# 创建数据目录
mkdir -p /opt/rustdesk/data

# 启动hbbr(中继服务器)
docker run --name hbbr -p 21117:21117 -p 21119:21119 \
  -v /opt/rustdesk/data:/root \
  --net=host \
  --restart unless-stopped \
  -d rustdesk/rustdesk-server:latest hbbr

# 启动hbbs(ID服务器)
docker run --name hbbs -p 21115:21115 -p 21116:21116 \
  -p 21116:21116/udp -p 21118:21118 \
  -v /opt/rustdesk/data:/root \
  --net=host \
  --restart unless-stopped \
  -d rustdesk/rustdesk-server:latest hbbs -r <你的服务器公网IP>:21117

获取公钥

RustDesk使用密钥对进行加密认证。服务端启动后会自动生成密钥:

cat /opt/rustdesk/data/id_ed25519.pub

输出类似:

kjalsdfjklasdjflkajsdlfjasldfjlasdjflasdjf=

复制这个公钥字符串,客户端连接时需要用到。

防火墙配置

UFW防火墙(Ubuntu)

ufw allow 21115:21119/tcp
ufw allow 21116/udp
ufw reload

firewalld(CentOS)

firewall-cmd --permanent --add-port=21115-21119/tcp
firewall-cmd --permanent --add-port=21116/udp
firewall-cmd --reload

云服务器安全组

如果你使用的是阿里云、腾讯云等云服务器,还需要在云控制台的安全组中添加入站规则:

  1. 登录云控制台
  2. 找到安全组设置
  3. 添加入站规则:
    • TCP端口:21115, 21116, 21117, 21118, 21119
    • UDP端口:21116
  4. 来源:0.0.0.0/0(允许所有IP)

客户端配置

RustDesk客户端设置

  1. 打开RustDesk客户端
  2. 点击ID旁边的三个点菜单
  3. 选择「网络」设置
  4. 填写以下信息:
    • ID服务器:你的服务器公网IP
    • 中继服务器:你的服务器公网IP
    • Key:之前获取的公钥字符串
  5. 点击「应用」保存

验证连接

  1. 在两台不同设备上配置好自建服务器
  2. 用一台设备连接另一台的RustDesk ID
  3. 如果连接成功,说明部署正确
  4. 在客户端点击「关于」查看是否显示你的服务器地址

高级配置

配置文件方式

创建 hbbs.conf 和 hbbr.conf 配置文件,放在数据目录中:

# hbbs.conf
relay-server=<你的服务器公网IP>
key=<你的私钥路径>

域名和HTTPS配置

如果你有域名,可以配合Nginx反向代理实现HTTPS:

server {
    listen 443 ssl;
    server_name rustdesk.yourdomain.com;

    ssl_certificate /path/to/cert.pem;
    ssl_certificate_key /path/to/key.pem;

    location / {
        proxy_pass http://127.0.0.1:21118;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

数据持久化

Docker容器重启后数据不会丢失,因为已经将数据目录挂载到 /opt/rustdesk/data。重要文件包括:

常见问题排查

问题1:客户端无法连接服务器

排查步骤:

  1. 检查容器是否正常运行:docker compose ps
  2. 检查端口是否开放:telnet 你的IP 21116
  3. 检查防火墙规则:ufw status 或 firewall-cmd --list-all
  4. 检查云安全组是否添加了UDP 21116

问题2:连接速度慢

可能原因及解决:

问题3:密钥不匹配

如果重装服务端后密钥变化,客户端需要更新Key:

  1. 获取新的公钥:cat /opt/rustdesk/data/id_ed25519.pub
  2. 在客户端网络设置中更新Key
  3. 重启客户端

运维管理

查看日志

# 查看hbbs日志
docker logs hbbs

# 查看hbbr日志
docker logs hbbr

# 实时查看日志
docker logs -f hbbs

更新镜像

cd /opt/rustdesk
docker compose pull
docker compose up -d

数据备份

# 备份数据目录
tar -czf rustdesk-backup-$(date +%Y%m%d).tar.gz /opt/rustdesk/data/

总结

Docker部署RustDesk服务端是最简单的自建方案——整个部署过程不超过15分钟。关键是正确开放所有端口(特别是UDP 21116)和获取公钥。部署完成后,你将拥有一个完全自主可控的远程桌面基础设施,数据不经过任何第三方,隐私和速度都得到保障。

这篇教程有帮助吗?立即下载RustDesk 中文网试试吧!

全平台支持 · 安全无毒 · 官方最新版