RustDesk

10

RustDesk 是一款功能齐全的开源远程控制替代方案,可实现自托管和安全,配置最少。您可以完全控制数据,无需担心安全性。客户端是开源的,您可以选择在我们的网站上购买功能齐全的专业服务器网站以及基于我们的专业服务器的基本免费和OSS服务器。

在服务器上运行 hbbs 和 hbbr

默认情况下,hbbs 监听21115(tcp), 21116(tcp/udp), 21118(tcp),hbbr 监听21117(tcp), 21119(tcp)。务必在防火墙开启这几个端口, 请注意21116同时要开启TCP和UDP。其中21115是hbbs用作NAT类型测试,21116/UDP是hbbs用作ID注册与心跳服务,21116/TCP是hbbs用作TCP打洞与连接服务,21117是hbbr用作中继服务, 21118和21119是为了支持网页客户端。如果您不需要网页客户端(21118,21119)支持,对应端口可以不开。

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

  • UDP(21116)

docker-compose.yml:已经设置非加密不可使用


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> -k # 填入个人域名或 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 -k
    volumes:
      - <mount_path>:/root # 自定义挂载目录
    networks:
      - rustdesk-net
    restart: unless-stopped
    deploy:
      resources:
        limits:
          memory: 64M

拉去文件:

docker-compose up -d

在客户端设置 hbbs/hbbr 地址

点击 ID 右侧的菜单按钮如下,选择“ ID/中继服务器”。

在 ID 服务器输入框中(被控端+主控端)输入 hbbs 主机或 ip 地址,另外两个地址可以不填,RustDesk会自动推导(如果没有特别设定),中继服务器指的是hbbr(21117)端口。

例如:

hbbs.example.com

或者

hbbs.example.com:21116

Key

同上个版本不同,本版本中的key是强制的,但是不用你自己设置。hbbs在第一次运行时,会自动产生一对加密私钥和公钥(分别位于运行目录下的id_ed25519id_ed25519.pub文件中),其主要用途是为了通讯加密。

如果您在上一步骤中没有填写Key:(公钥文件id_ed25519.pub中的内容),不影响连接,但是连接无法加密。

cat ./id_ed25519.pub

如果您禁止没有key的用户建立非加密连接,请在运行hbbs和hbbr的时候添加-k _ 参数,例如:

./hbbs -r <relay-server-ip[:port]> -k _
./hbbr -k _

如果要更改key,请删除 id_ed25519id_ed25519.pub 文件并重新启动 hbbs/hbbr,hbbs将会产生新的密钥对。