安装 RustDesk 服务器 (适用 Rocky Linux, CentOS, RHEL 系列发行版)

2023-03-02 · 353 字 · 约 1 分钟

环境:Rocky Linux 9.1

# 1. 安装 Docker Engine

# 2. 安装 Docker Compose

https://docs.docker.com/compose/install/linux/#install-using-the-repository

sudo dnf update
sudo dnf install docker-compose-plugin

# 3. 验证 Docker Compose

docker compose version

# 4. 创建 Docker Compose 配置文件

https://rustdesk.com/docs/en/self-host/install/#docker-compose-examples

  1. 创建安装/运行目录并进入

    mkdir ~/zeodocker/rustdesk
    cd ~/zeodocker
    
  2. 创建 Docker Compose 配置文件

    vi 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 example.com: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
    

# 5. 开放 端口

需要开放如下端口

TCP (21115, 21116, 21117, 21118, 21119)
UDP (21116)

# 5.1. 开放防火墙端口

  1. 添加端口规则

    sudo firewall-cmd --zone=public --add-port=21115-21119/tcp --permanent
    sudo firewall-cmd --zone=public --add-port=21116/udp --permanent
    
  2. 重新加载防火墙

    sudo firewall-cmd --reload
    
  3. 查看 firewall 状态

    systemctl status firewalld
    
  4. 查看端口开放状态(以 21116 udp 为例)

    firewall-cmd --zone=public --query-port=21116/udp
    

# 5.2. 开放云服务安全组入站端口

具体操作请参考各大云服务器厂商的相关文档。

配置入站时,授权对象含义参考:

  • 0.0.0.0/0 ipv4 所有地址
  • ::/0ipv6 所有地址

# 6. 启动/重启 Docker

# 启动 Docker
sudo systemctl start docker
# 重启 Docker
sudo systemctl restart docker
# 查看 docker 服务状态
sudo systemctl status docker

# 7. 执行 rustdesk-docker-compose.yml

https://docs.docker.com/compose/gettingstarted/

docker compose up

# 8. 测试 RustDesk 服务器

配置 远程客户端本地客户端 的 ID 服务器 ,填入 RustDesk 服务器的公网地址

# 9. 强制 RustDesk 服务器连接加密

https://rustdesk.com/docs/en/self-host/install/#key

RustDesk 服务器启动时,会自动产生一对加密私钥和公钥

  1. 配置强制连接加密,修改配置文件的 1631 行,hbbshbbr 的运行命令添加 -k _参数

    command: hbbs -r example.com:21117 -k _// 改为当前服务器的公网地址
    command: hbbr -k_
    
  2. 查看并复制公钥 (一般位于 运行目录/data/

    cat ./id_ed25519.pub
    
  3. 将公钥填入 远程客户端本地客户端key

# 10. 后台运行 RustDesk 服务器

docker compose up -d

# 11. 停止 RustDesk 服务

进入运行目录,后执行如下命令

docker compose stop