【远程控制】RustDesk 自建服务端完整方案(Docker + Windows 客户端)

RustDesk 自建服务端完整方案(Docker + Windows 客户端)

一、Docker Compose 部署服务端

在 Linux 服务器上创建目录:

bash 复制代码
mkdir -p ~/rustdesk-server
cd ~/rustdesk-server

创建 docker-compose.yml

yaml 复制代码
version: "3.8"

services:
  # Broker 服务(注册 / ID 服务器)
  hbbs:
    image: rustdesk/rustdesk-server:latest
    container_name: hbbs
    restart: unless-stopped
    ports:
      - "21115:21115"       # Broker TCP
      - "21115:21115/udp"   # Broker UDP
    environment:
      - RUSTDESK_RELAY_HOST=hbbr   # 关联中继服务器

  # Relay 服务(数据中继 / 穿透)
  hbbr:
    image: rustdesk/rustdesk-server:latest
    container_name: hbbr
    restart: unless-stopped
    ports:
      - "21116:21116"       # Relay TCP
      - "21116:21116/udp"   # Relay UDP

# 可选挂载数据卷保存日志
# volumes:
#   - ./data/hbbs:/data
#   - ./data/hbbr:/data

启动服务

bash 复制代码
docker-compose up -d

检查服务状态

bash 复制代码
docker ps

确保 hbbshbbr 容器都在运行。


二、防火墙 & 端口映射

确保服务器外网可访问:

bash 复制代码
# Ubuntu / Debian 示例
sudo ufw allow 21115/tcp
sudo ufw allow 21115/udp
sudo ufw allow 21116/tcp
sudo ufw allow 21116/udp
sudo ufw reload

如果服务器在路由器内网,请在路由器上将外网端口映射到服务器的 21115/21116。


三、Windows 客户端配置

  1. 下载 RustDesk Windows 客户端

  2. 打开客户端 → 设置 → 中继 / ID 服务器

    填入你的自建服务器 IP(假设公网 IP 为 1.2.3.4):

    • ID / 中继服务器 : 1.2.3.4:21115
    • 中继服务器 : 1.2.3.4:21116
  3. 保存设置 → 客户端自动通过自建服务端注册 ID。

若无法穿透,客户端可以强制使用中继服务器(Relay TCP)以保证连接。


四、可选 TLS / HTTPS 优化(推荐公网安全)

可以用 Nginx 作为反向代理,增加 TLS:

Nginx 配置示例

nginx 复制代码
server {
    listen 443 ssl;
    server_name rustdesk.yourdomain.com;

    ssl_certificate /etc/letsencrypt/live/rustdesk.yourdomain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/rustdesk.yourdomain.com/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:21115;  # Broker
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }

    location /relay {
        proxy_pass http://127.0.0.1:21116;  # Relay
    }
}

使用 TLS 可保证公网访问安全,防止数据被劫持。


五、测试连接

  1. 启动两台 Windows 客户端。

  2. 使用自建 ID 连接远程设备。

  3. 确认远程桌面可正常访问。

  4. 若穿透失败:

    • 确认 UDP/TCP 端口开放
    • 确认客户端设置为使用中继服务器

总结

  • Docker Compose 一条命令即可启动 RustDesk 服务端。
  • Windows 客户端只需配置 ID/Relay IP 和端口。
  • 公网访问需放行 21115/21116 端口,建议使用 TLS 代理。
  • 可选数据卷挂载日志或配置,实现持久化。

相关推荐
鸠摩智首席音效师1 天前
如何使用 docker exec 在容器中运行命令 ?
运维·docker·容器
Hoking1 天前
TimescaleDB(PostgreSQL)流复制集群容器化部署(docker-compose)
docker·postgresql·timescaledb·流复制
cool32001 天前
Kubernetes基础入门教程
容器·云计算·k8s
水星灭绝1 天前
win11+wsl2+docker
运维·docker·容器
啥咕啦呛1 天前
java打卡学习1:Lambda表达式与Stream基础
windows
优选资源分享1 天前
zTasker v2.3.8 便携版丨 Windows 自动化任务工具
运维·windows·自动化
supersolon1 天前
Windows环境docker安装OpenClaw
docker·ai·docker-compose·openclaw·龙虾
CQU_JIAKE1 天前
3.23[Q]s
开发语言·windows·python
小陈工1 天前
2026年3月24日技术资讯洞察:边缘AI商业化,Java26正式发布与开源大模型成本革命
java·运维·开发语言·人工智能·python·容器·开源
WJX_KOI1 天前
OpenClaw 纯 Windows 环境源码部署教程(含修改脚本配置)
人工智能·windows