以下是详细的RustDesk自建服务器部署教程,帮助您实现私有化远程桌面控制:


RustDesk 简介

RustDesk 是一款开源的远程桌面工具,支持跨平台(Windows/macOS/Linux/Android/iOS),其核心优势在于允许用户自建中继服务器(替代官方服务器),提升连接速度和数据安全性。

下面介绍两种部署方式,

方式一:服务器端直接部署

方式二:docker部署


方式一:服务器端部署(Linux 示例)

1. 下载服务端程序

wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.9-1/rustdesk-server-linux-amd64.zip
unzip rustdesk-server-linux-amd64.zip
cd amd64

2. 运行服务

  • hbbs(ID注册/中继服务)

    ./hbbs -r <服务器IP或域名>
    
  • hbb(中继服务)

    ./hbb
    

3. 防火墙配置

开放以下端口:

# TCP
sudo ufw allow 21115:21119/tcp
# UDP
sudo ufw allow 21116/udp
sudo ufw allow 21115:21119/udp

4. 配置为系统服务(可选)

创建 hbbs.servicehbb.service 文件于 /etc/systemd/system/,内容示例:

[Unit]
Description=RustDesk HBBS
After=network.target

[Service]
ExecStart=/path/to/hbbs -r your.domain.com
WorkingDirectory=/path/to/
User=root

[Install]
WantedBy=multi-user.target

启动服务:

sudo systemctl daemon-reload
sudo systemctl start hbbs hbb
sudo systemctl enable hbbs hbb

客户端配置

1. 下载客户端

RustDesk官网 下载对应平台的客户端。

2. 设置自定义服务器

  • Windows/macOS/Linux:\ 打开客户端 → 设置 → 网络 → 输入服务器地址(IP或域名)。
  • 安卓/iOS:\ 设置 → ID服务器 → 填写服务器地址。

高级配置

1. 域名与SSL证书

  • 为服务器配置域名(如 rustdesk.yourdomain.com)。
  • 使用 Let's Encrypt 申请免费SSL证书。
  • 通过Nginx反向代理(配置示例):

    server {
      listen 443 ssl;
      server_name rustdesk.yourdomain.com;
      ssl_certificate /path/to/fullchain.pem;
      ssl_certificate_key /path/to/privkey.pem;
    
      location / {
        proxy_pass http://localhost:21114;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
      }
    }
    

2. 密钥管理

首次运行 hbbs 会生成密钥文件:

  • id_ed25519:私钥(需保密)
  • id_ed25519.pub:公钥\ 备份这些文件,避免重新部署后客户端ID变更。

方式二:docker部署

服务器端部署

1. 准备工作

  • 服务器:一台具有公网 IP 的 Linux 服务器,推荐使用 Ubuntu 20.04 及以上版本。
  • 端口开放:确保服务器开放以下端口:

    • TCP: 21115 - 21119, 30001
    • UDP: 21116

2. 安装 Docker 和 Docker Compose

  • 安装 Docker
# 更新系统包列表
sudo apt update
# 安装必要的依赖包
sudo apt install apt-transport-https ca-certificates curl software-properties-common
# 添加 Docker 的官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 添加 Docker 软件源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新系统包列表
sudo apt update
# 安装 Docker 引擎
sudo apt install docker-ce docker-ce-cli containerd.io
# 验证 Docker 是否安装成功
sudo docker run hello-world
  • 安装 Docker Compose
# 下载 Docker Compose 二进制文件
sudo curl -L "https://github.com/docker/compose/releases/download/v2.10.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 添加执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 验证 Docker Compose 是否安装成功
docker-compose --version

3. 下载并配置 RustDesk 服务器

  • 创建一个新的目录并进入该目录
mkdir rustdesk-server && cd rustdesk-server
  • 创建 docker-compose.yml 文件
nano docker-compose.yml
  • 将以下内容复制到 docker-compose.yml 文件中
version: '3'

services:
  hbbs:
    container_name: hbbs
    ports:
      - 21115:21115
      - 21116:21116/udp
      - 21116:21116
      - 21118:21118
      - 21119:21119
      - 30001:30001
    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
      - 21117:21117/udp
    image: rustdesk/rustdesk-server:latest
    command: hbbr
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    restart: unless-stopped

networks:
  rustdesk-net:
  • 替换 <你的服务器公网 IP 或域名> 为你实际的服务器公网 IP 或域名。

4. 启动 RustDesk 服务器

docker-compose up -d

5. 验证服务器是否正常运行

docker ps

确保 hbbshbbr 容器都处于运行状态。

客户端配置

1. 下载客户端

RustDesk 官方网站 下载适合你操作系统的客户端。

2. 配置客户端

  • 打开 RustDesk 客户端,点击左上角的菜单图标,选择 “ID / 中继服务器”。
  • 在 “服务器地址” 和 “密钥” 字段中分别填写你的服务器公网 IP 或域名以及服务器生成的密钥。密钥可以在服务器的 ./data/id_ed25519.pub 文件中找到。
cat ./data/id_ed25519.pub
  • 点击 “保存”,然后尝试连接其他设备。

注意事项

  • 确保服务器的防火墙允许相关端口的流量通过。
  • 如果使用域名,需要配置好 DNS 解析。
  • 定期更新 RustDesk 服务器和客户端以获取最新的功能和安全补丁。
Copyright © https://yan-jian.com 2023 all right reserved更新时间: 2025-03-13 16:46:57

results matching ""

    No results matching ""