一键部署RustDesk中继服务器及API

前言

RustDesk 凭借开源、安全、高性能的特点,成为替代传统远程桌面工具的优质选择。尤其适合注重隐私保护、需要自建基础设施的企业和开发者。如果你正在寻找一款免费且可控的远程协作方案,RustDesk 值得一试。

服务器要求

  • 配置:最低 1CPU/1GB RAM(生产环境建议 2CPU/4GB RAM)
  • 系统:Ubuntu 20.04+/CentOS 7+/Debian 10+
  • 公网 IP:需开放特定端口

开放防火墙端口

# Ubuntu/Debian
sudo ufw allow 21115:21119/tcp
sudo ufw allow 21116/udp
sudo ufw allow 8080/tcp  # API服务端口
sudo ufw reload

# CentOS
sudo firewall-cmd --add-port=21115-21119/tcp --permanent
sudo firewall-cmd --add-port=21116/udp --permanent
sudo firewall-cmd --add-port=8080/tcp --permanent
sudo firewall-cmd --reload

一键部署方法

方法一:使用 Docker Compose(推荐)

1、安装 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/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

2、创建并编辑 docker-compose.yml

version: '3'

services:
  hbbs:
    image: rustdesk/rustdesk-server:latest
    container_name: rustdesk-hbbs
    ports:
      - 21115:21115/tcp
      - 21116:21116/tcp
      - 21116:21116/udp
      - 21118:21118/tcp
    volumes:
      - ./data/hbbs:/root
    command: hbbs -r your_server_ip:21117
    restart: unless-stopped

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

  rustdesk-api:
    image: lejianwen/rustdesk-api:latest
    container_name: rustdesk-api
    ports:
      - 8080:8080
    volumes:
      - ./data/api/config:/app/config
      - ./data/api/db:/app/db
    environment:
      - RUST_LOG=info
      - DATABASE_URL=sqlite:///app/db/rustdesk_api.db
      - HBBS_URL=http://hbbs:21116
      - HBBR_URL=http://hbbr:21117
    depends_on:
      - hbbs
      - hbbr
    restart: unless-stopped

注意:将 your_server_ip 替换为你的服务器公网 IP。

3、启动服务

mkdir -p rustdesk-deploy/data/{hbbs,hbbr,api/{config,db}}
cd rustdesk-deploy
wget https://raw.githubusercontent.com/lejianwen/rustdesk-api/master/docker-compose.yml
# 编辑docker-compose.yml替换IP
nano docker-compose.yml
docker-compose up -d

验证部署

1、检查服务状态

docker ps

2、测试 API 连接

curl http://localhost:8080/api/v1/health
# 应返回: {"status":"ok"}

3、配置 RustDesk 客户端

  • 打开 RustDesk 客户端
  • 点击右上角齿轮图标
  • 设置 ID 服务器为 your_server_ip:21116
  • 设置 中继服务器为 your_server_ip:21117

通过上述步骤,你可以快速搭建一个功能完整的 RustDesk 中继服务器,并通过 API 进行管理,满足企业级远程控制需求。

THE END