官网:https://rustdesk.com/zh/
中文文档:https://rustdesk.com/docs/zh-cn/

简介:远程桌面软件,可以远程控制电脑和手机,全平台产品。开箱即用,无需任何配置。您完全掌控数据,不用担心安全问题。可以使用官方的注册/中继服务器,或者自建。

一、自建服务器配置要求

一个中继连接的流量在30k-3M每秒之间(1920x1080屏幕),取决于清晰度设置和画面变化。如果只是办公需求,平均在100K/s。
所以服务器带宽要在2M以上,内存和CPU基本没有要求。所以用群晖之类的NAS系统也是可以的。

rustdesk的整体服务分为三个部分:

  • 服务端
  • api服务器
  • 客户端

二、服务端

1、下载地址

服务端:https://github.com/rustdesk/rustdesk-server/releases
客户端:https://rustdesk.com/zh/

2、开放端口

21115是hbbs用作NAT类型测试,21116/UDP是hbbs用作ID注册与心跳服务,21116/TCP是hbbs用作TCP打洞与连接服务,21117是hbbr用作中继服务, 21118和21119是为了支持网页客户端

  • TCP

必须:21115, 21116, 21117
可选:21118, 21119
如果不用网页客户端,可选的两个端口可以不开。

  • UDP

必须:21116

3、docker搭建

docker-compose.yml文件

docker镜像很多国内镜像站版本没更新,可以去docker-hub手动获取下。

version: '3'

networks:
  rustdesk-net:
    external: false

services:
  hbbs:
    container_name: hbbs
    ports:
      - 21115:21115
      - <hbbs_port>:21116 # 自定义 hbbs 映射端口
      - <hbbs_port>:21116/udp # 自定义 hbbs 映射端口
    image: rustdesk/rustdesk-server
    command: hbbs -r <your_domain>:<hbbr_port> # 填入个人域名或 IP + hbbr 暴露端口
    volumes:
      - <mount_path>:/root # 自定义挂载目录
    networks:
      - rustdesk-net
    depends_on:
      - hbbr
    restart: unless-stopped
    deploy:
      resources:
        limits:
          memory: 64M

  hbbr:
    container_name: hbbr
    ports:
      - <hbbr_port>:21117 # 自定义 hbbr 映射端口
    image: rustdesk/rustdesk-server
    command: hbbr
    volumes:
      - <mount_path>:/root # 自定义挂载目录
    networks:
      - rustdesk-net
    restart: unless-stopped
    deploy:
      resources:
        limits:
          memory: 64M

–net=host 仅适用于 Linux,它让 hbbs/hbbr 可以看到对方真实的ip, 而不是固定的容器ip (172.17.0.1)。
如果Windows客户端连接异常,就把–net=host去掉

hhbs的-r参数不是必须的,端口号可以不填,默认21117。

4、查看通讯加密秘钥

hbbs在第一次运行时,会自动产生一对加密私钥和公钥(分别位于运行目录下的id_ed25519和id_ed25519.pub文件中),其主要用途是为了通讯加密。

查看方法:

# 私钥
cat ./id_ed25519
# 公钥
cat ./id_ed25519.pub

三、API服务器

相关项目地址:GitHub - kingmo888/rustdesk-api-server: 基于Django的RustDesk Api&Web Server,除了支持api所有功能,还支持web注册、管理、展示等。已支持到最新1.2.3版本。

使用方法:

# 克隆代码到本地后,安装依赖
pip install -r requirements.txt
# 后台运行Django,支持Django3及Django4+
nohup python manage.py runserver 0.0.0.0:21114 &

此时即可使用http://本机IP:端口的形式来访问后台了,如果还是无法访问,需要检查下本地防火墙如ufw的端口是否放通。

先注册的默认为管理员,后续注册的为普通用户。

之后,就可以在地址簿中保存所有连接设备了:

四、客户端

1、通用设置

所有客户端要设置的地方都一样:

  • 进入ID/中继服务器
  • ID服务器那里填写服务器的公网IP
  • 填写上面获取到的公钥Key
  • 其它可留空,程序会自己识别

2、Windows绿色文件简易配置

# 原文件名
rustdesk.exe
# 修改为
rustdesk-host=公网IP,key=公钥.exe
# 例如
rustdesk-host=192.168.1.137,key=xfdsfsd32=32.exe

# 两种不同的修改效果
# 修改1:可主控和被控
rustdesk-host=公网IP,key=公钥.exe
# 修改2:可被控,不可主控
rustdesk-host=公网IP,key=随便填.exe

注意这两种不同的修改效果,主要是为了安全起见。

最后修改:2024 年 07 月 31 日
如果觉得我的文章对你有用,请随意赞赏