> 技术文档 > RustDesk 服务端完整安装部署教程_rustdesk安装教程

RustDesk 服务端完整安装部署教程_rustdesk安装教程


RustDesk 服务端完整安装部署教程(2025 版)

一、环境准备

1. 服务器要求

  • 操作系统:Ubuntu 20.04/22.04(推荐)、Debian、CentOS 等
  • 硬件配置:
    • 测试环境:1 核 2G 以上
    • 生产环境:2 核 4G+,50G + 存储空间
  • 网络要求公网 IP(如需外网访问)

2. 防火墙配置

开放 RustDesk 服务端所需端口:

# Ubuntu/Debiansudo ufw allow 21115:21119/tcpsudo ufw allow 21116/udpsudo ufw allow 8000/tcp # 用于客户端安装脚本sudo ufw enable# CentOSsudo firewall-cmd --permanent --add-port=21115-21119/tcpsudo firewall-cmd --permanent --add-port=21116/udpsudo firewall-cmd --permanent --add-port=8000/tcpsudo firewall-cmd --reload

二、安装 RustDesk 服务端

方法 1:官方一键安装脚本(推荐)

官方教程

wget https://raw.githubusercontent.com/techahold/rustdeskinstall/master/install.shchmod +x install.sh./install.sh

安装步骤说明

  1. 脚本会自动下载并安装:
    • hbbs:ID 服务器(负责设备注册和身份验证)
    • hbbr:中继服务器(负责流量转发,当直连失败时使用)
    • gohttpserver:配置分发服务(提供客户端安装包和配置)
  2. 安装过程中会提示选择连接方式:
    • 输入 1:自动解析当前公网 IP(适合临时测试)
    • 输入 2:手动输入域名(需提前配置 DNS 解析)
  3. 安装完成后,记录输出的公钥信息(如:Your public key is ),后续客户端配置需要使用

方法 2:手动安装(适用于自定义需求)

1. 下载二进制文件
wget https://github.com/rustdesk/rustdesk-server/releases/latest/download/hbbswget https://github.com/rustdesk/rustdesk-server/releases/latest/download/hbbrchmod +x hbbs hbbrsudo mv hbbs hbbr /usr/bin/ # 移动到系统路径
2. 创建配置目录
sudo mkdir -p /var/lib/rustdesksudo chown root:root /var/lib/rustdesksudo chmod 755 /var/lib/rustdesk
3. 配置 systemd 服务

创建 hbbs.service(ID 服务器)

sudo nano /etc/systemd/system/hbbs.service

内容:

[Unit]Description=RustDesk ID Server (hbbs)After=network.target[Service]ExecStart=/usr/bin/hbbs -r /var/lib/rustdesk --relay-servers 127.0.0.1WorkingDirectory=/var/lib/rustdeskRestart=alwaysRestartSec=5[Install]WantedBy=multi-user.target

创建 hbbr.service(中继服务器)

sudo nano /etc/systemd/system/hbbr.service

内容:

[Unit]Description=RustDesk Relay Server (hbbr)After=network.target[Service]ExecStart=/usr/bin/hbbrRestart=alwaysRestartSec=5[Install]WantedBy=multi-user.target
4. 启动服务
sudo systemctl daemon-reload # 重新加载 systemd 配置sudo systemctl enable hbbs hbbr # 设置开机自启sudo systemctl start hbbs hbbr # 启动服务sudo systemctl status hbbs hbbr # 检查服务状态

三、客户端配置与连接

1. 获取客户端安装脚本

  1. 浏览器访问 http://服务器IP:8000
  2. 输入用户名 admin 和密码 ``(安装时会显示)
  3. 下载对应系统的客户端安装包(含预配置的服务器信息)

2. 手动配置客户端

  1. 打开 RustDesk 客户端,点击右上角齿轮图标 → “ID / 中继服务器”
  2. 配置以下信息:
    • ID 服务器:填入服务器 IP 或域名
    • 公钥:填入安装时生成的公钥(安装完成是打印上会显示)
  3. 点击 “保存”,重启客户端

四、验证与测试

1. 检查服务状态

sudo systemctl status hbbs hbbr # 确保两者均为 active (running)

2. 查看服务日志

sudo journalctl -u hbbs -f # 实时查看 hbbs 日志sudo journalctl -u hbbr -f # 实时查看 hbbr 日志

3. 客户端连接测试

  1. 在两台设备上安装并配置 RustDesk 客户端
  2. 使用设备 ID 互相连接,测试远程桌面功能
  3. 验证直连和中继模式是否正常工作

五、常见问题排查

1. 服务启动失败

错误现象systemctl status hbbs 显示 active (auto-restart) 或报错

解决步骤

  1. 检查文件路径和权限

    sudo find / -name \"hbbs\" # 确认文件存在sudo chmod +x /path/to/hbbs # 赋予执行权限
  2. 检查工作目录

    sudo mkdir -p /var/lib/rustdesksudo chown root:root /var/lib/rustdesksudo chmod 755 /var/lib/rustdesk
  3. 验证服务配置语法

    sudo systemd-analyze verify hbbs.service

2. 参数冲突问题

错误现象The argument \'--relay-servers \' was provided more than once

解决方法

  1. 编辑 /etc/systemd/system/hbbs.service

  2. 确保ExecStart中 --relay-servers 参数只出现一次:

    ExecStart=/usr/bin/hbbs -r /var/lib/rustdesk --relay-servers 127.0.0.1
  3. 重新加载并重启服务:

    sudo systemctl daemon-reloadsudo systemctl restart hbbs

六、进阶配置(可选)

1. 使用域名访问

  1. 在域名服务商处添加 A 记录,指向服务器公网 IP
  2. 安装时选择 “2) Enter your DNS/Domain”,输入域名
  3. 配置 SSL 证书(推荐使用 Caddy 自动配置):
# 安装 Caddysudo apt install -y debian-keyring debian-archive-keyring apt-transport-httpscurl -1sLf \'https://dl.cloudsmith.io/public/caddy/stable/gpg.key\' | sudo gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpgcurl -1sLf \'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt\' | sudo tee /etc/apt/sources.list.d/caddy-stable.listsudo apt updatesudo apt install caddy# 创建 Caddyfile 配置sudo nano /etc/caddy/Caddyfile

Caddyfile 内容:

yourdomain.com { reverse_proxy * 127.0.0.1:8000}

启动 Caddy 服务:

sudo systemctl enable caddysudo systemctl start caddy

七、卸载方法

sudo systemctl stop hbbs hbbr gohttpserversudo systemctl disable hbbs hbbr gohttpserversudo rm /etc/systemd/system/hbbs.service /etc/systemd/system/hbbr.service /etc/systemd/system/gohttpserver.servicesudo rm -rf /usr/bin/hbbs /usr/bin/hbbr /usr/bin/gohttpserversudo rm -rf /var/lib/rustdesksudo systemctl daemon-reload

八、参考资源

  • RustDesk 官方文档:https://rustdesk.com/docs/en/
  • GitHub 仓库:https://github.com/rustdesk/rustdesk
  • 社区支持:https://community.rustdesk.com/