安装RustDesk服务器端

方法一:使用Docker安装(推荐)

这是官方推荐的安装方式,适合生产环境。

  1. 安装Docker

    sudo apt update
    sudo apt install docker.io docker-compose-plugin
    sudo systemctl enable --now docker
  2. 创建配置目录

    mkdir -p ~/rustdesk-server && cd ~/rustdesk-server
  3. 创建docker-compose.yml

    cat > docker-compose.yml <<EOF
    version: '3'

    services:
     hbbs:
       image: rustdesk/rustdesk-server:hbbs
       container_name: hbbs
       volumes:
         - ./data:/root
       ports:
         - 21115:21115
         - 21116:21116
         - 21116:21116/udp
         - 21118:21118
       command: hbbs -r rustdesk.example.com:21117  # 替换为你的域名或IP
       restart: unless-stopped
     
     hbbr:
       image: rustdesk/rustdesk-server:hbbr
       container_name: hbbr
       volumes:
         - ./data:/root
       ports:
         - 21117:21117
         - 21119:21119
       restart: unless-stopped
    EOF
  4. 修改配置

    nano docker-compose.yml
    • rustdesk.example.com替换为你的服务器公网IP或域名

    • 如需自定义密钥,在command行添加-k your_custom_key

  5. 启动服务器

    sudo docker compose up -d
  6. 查看密钥

    sudo docker exec -it hbbs cat /root/id_ed25519.pub

    保存输出的公钥,客户端连接时需要

方法二:手动安装(二进制文件)

适合不使用Docker的环境

  1. 下载服务器二进制

    wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.9/rustdesk-server-linux-amd64.zip
    unzip rustdesk-server-linux-amd64.zip
    cd amd64
  2. 运行服务器

    # 启动信令服务器 (hbbs)
    nohup ./hbbs -r your_server_ip:21117 > hbbs.log 2>&1 &

    # 启动中继服务器 (hbbr)
    nohup ./hbbr > hbbr.log 2>&1 &

    替换your_server_ip为你的公网IP

  3. 获取公钥

    cat id_ed25519.pub

    4. 配置hbbr和hbbs开机自启动

  1.为每个服务创建配置文件:

vim /etc/systemd/system/hbbs.service

内容如下:

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

[Service]
Type=simple
WorkingDirectory=/usr/local/rustdesk
ExecStart=/usr/local/rustdesk/hbbs
Restart=always
RestartSec=5
User=root

[Install]
WantedBy=multi-user.target
vim /etc/systemd/system/hbbr.service

内容如下:

[Unit]
Description=RustDesk HBBR Relay Server
After=network.target

[Service]
Type=simple
WorkingDirectory=/usr/local/rustdesk
ExecStart=/usr/local/rustdesk/hbbr
Restart=always
RestartSec=5
User=root

[Install]
WantedBy=multi-user.target

2.重新加载system

sudo systemctl daemon-reload

3. 启用开机自启动并立即启动服务

sudo systemctl enable hbbs  --now
sudo systemctl enable hbbr  --now

4. 启动服务(可选)

sudo systemctl start hbbs
sudo systemctl start hbbr

5. 验证服务状态

systemctl status hbbs
systemctl status hbbr

关键点说明:

  1. 工作目录WorkingDirectory指定为/usr/local/rustdesk确保服务在正确路径启动

  2. 自动重启Restart=alwaysRestartSec=5使服务崩溃后5秒自动重启

  3. 依赖关系After=network.target确保在网络就绪后启动服务

  4. 权限设置User=root以root权限运行(根据实际需求可修改为其他用户)

注意:如果可执行文件需要额外参数(如-k _),修改ExecStart行:

 

客户端配置

在RustDesk客户端中设置:

  1. ID服务器:你的服务器IP/域名

  2. 中继服务器:同上

  3. API服务器:留空(除非使用Web控制台)

  4. 密钥:从id_ed25519.pub获取的公钥


管理命令


操作Docker方式二进制方式
启动sudo docker compose up -d./hbbs & ./hbbr &
停止sudo docker compose downpkill hbbs && pkill hbbr
查看日志sudo docker compose logs查看hbbs.log/hbbr.log
更新sudo docker compose pull && sudo docker compose up -d重新下载二进制替换



注意事项

  1. 域名要求:如果使用域名:

    • 需设置DNS A记录指向服务器IP

    • 建议申请SSL证书(可通过Let's Encrypt)

  2. 性能优化

    # 提高文件描述符限制
    echo "* soft nofile 1000000" | sudo tee -a /etc/security/limits.conf
    echo "* hard nofile 1000000" | sudo tee -a /etc/security/limits.conf

    # 优化网络参数
    echo "net.core.rmem_max = 67108864" | sudo tee -a /etc/sysctl.conf
    echo "net.core.wmem_max = 67108864" | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
  3. 监控状态

    watch -n 1 "sudo docker compose exec hbbs hbbs --status || ./hbbs --status"



Powered By Z-BlogPHP 1.7.4

 Theme By 优美模版

本博客为开源博客,本博客联系QQ:372097243