Docker部署RustDesk,远程桌面控制如此简单

Docker部署RustDesk,远程桌面控制如此简单

RustDesk 是一个开源的远程桌面控制软件,RustDesk 是提供一个安全、高效且易于使用的远程访问解决方案,类似于 TeamViewer、AnyDesk 或向日葵,但更注重隐私、可控性和开源透明性。

注:家里是NAT4网络且没有IPV6网络及公网中继服务器,可以直接放弃了,还不如装个向日葵来得直接。

NAT网络类型检测软件NatTypeTester32,自行搜索下载。家里不是桥接的话大概率是NAT4网络。

RustDesk有以下几 个使用部署方案:

1、家里非NAT4网络,配合tailscale等组网软件搭配使用基本,打洞成功率几乎100%。(最安全方案)缺点:控制的时候要打开两个软件 。

2、家里有IPV6网络,有自己的一个域名并做好DDNS绑定家里IPV6地址。缺点:在没有IPV6的场所无法使用。

3、有公网服务器,最简单便捷。缺点:暴露在公网有一定的风险

一、家庭部署:需配合tailscale等组网软件使用

家庭服务器部署推荐rustdesk/rustdesk-server双容器方案,下面以极空间为例:

在极空间创建一个rustdesk文件夹并在它下面创建一个data文件夹和一个compose.yaml文件(有SSD的话推荐放到SSD)

把以下代码复制粘贴到compose.yaml里。由于极空间不支持相对路径方式运行,导入后请自行查询后粘贴修改。

services:
  hbbs:
    container_name: hbbs
    image: rustdesk/rustdesk-server:latest
    command: hbbs
    volumes:
      - 【粘贴极空间查询到的路径】:/root
    network_mode: "host"

    depends_on:
      - hbbr
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    image: rustdesk/rustdesk-server:latest
    command: hbbr
    volumes:
      - 【粘贴极空间查询到的路径】:/root
    network_mode: "host"
    restart: unless-stopped

进入极空间docker,compose新建界面点击查询路径,找到刚才创建的rustdesk下的data文件夹并点击复制路径。把它粘贴到代码里然后点击创建。

二、公网服务器部署推荐s6单容器版本

镜像rustdesk/rustdesk-server-s6:latest更稳定,适合长时间运行。

以1panel面板为例:

在文件管理进入/opt/1panel/docker/compose,创建rustdesk文件夹及compose.yaml文件,把以下代码复制到compose.yaml

version: '3'

services:
  rustdesk-server:
    container_name: rustdesk-server
    ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21117:21117
    image: rustdesk/rustdesk-server-s6:latest
    environment:
      - "RELAY=【你的域名或IP】:21117"
      - "ENCRYPTED_ONLY=1"
    volumes:
      - ./data:/data
    restart: unless-stopped

来到“容器”点击编排,创建编排>粘贴compose.yaml路径即可。

防火墙设置

防火墙放行TCP:21115-21117,UDP:21116

端口说明:
  • hbbs:
    • 21114 (TCP): 用于网页控制台,仅在付费 Pro 版本中可用。
    • 21115 (TCP): 用于 NAT 类型测试。
    • 21116 (TCP/UDP): 请注意 21116 应该同时为 TCP 和 UDP 启用。 21116/UDP 用于 ID 注册和心跳服务。21116/TCP 用于 TCP 打洞和连接服务。
    • 21118 (TCP): 用于支持网页客户端。
  • hbbr:
    • 21117 (TCP): 用于中继服务。
    • 21119 (TCP): 用于支持网页客户端。

如果您不需要网页客户端支持,可以禁用相应的端口 2111821119

三、客户端下载

客户端下载地址:https://github.com/rustdesk/rustdesk/releases/tag/1.4.0

根据自己的系统选择

四、客户端设置

家庭用户:

点击网络>>解锁网络设置>>ID服务器写入[你安装设备的IP]:21116,中继服务器写入[你安装设备的IP]:21117,key在刚创建的rustdesk>>data文件夹下的id_ed25519.pub文件里,极空间里无法打开,下载到本地用记事本打开。

控制端必须填KEY,被控端需填写ID服务器地址,无法P2P连接的情况要写入中继服务器

公网服务器用户:

点击网络>>解锁网络设置>>ID服务器写入[指向你服务器的域名或服务器IP],中继服务器写入[指向你服务器的域名或服务器IP],key在刚创建的rustdesk>>data文件夹下的id_ed25519.pub文件里,在1panel文件管理里打开即可看见,公网用户不用写端口号,但要记得开放21115-21117及21116的UDP端口。注:填写域名不带http或https

总结

RustDesk是一款非常优秀的软件,待机状态下只占10M左右内存,几率可以忽略,关键是不像其它软件一样久不久弹个广告啥的,家里有PC的用户推荐人手一个。有公网服务器的用户都是老油条,家庭用户难免有小白用户,如果不会组网的话,下次我再写个tailscale的文章。

Comments

No comments yet. Why don’t you start the discussion?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注