使用Docker自建Rustdesk开源远程桌面服务器


今天就来推荐一款向日葵的开源替代品——Rustdesk

RustDesk 是一款体验优秀的远程控制软件,和 TeamViewer、AnyDesk 等主流的控制软件一样简单,能够让我们在另外一台设备上远程控制电脑,无论是远程办公、远程教学或者是远程协助,都能满足我们的需求。
界面简洁易用,无需太多学习成本,使用简单,文件传输、调整画面质量等功能应有尽有轻量小巧,windows 上甚至不用安装就能运行端到端加密,以及基于角色的访问权限控制,数据传输足够安全支持多平台,Windows、macOS、Linux、iOS、Android,甚至打开网页版都可以开始工作。

创建配置文件
在root下新建一个rustdesk目录,并创建compose配置

mkdir -p /root/rustdesk
touch /root/rustdesk/docker-compose.yml

配置文件内容如下:

version: '3'

networks:
  rustdesk-net:
    external: false

services:
  hbbs:
    container_name: hbbs
    ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21118:21118
    image: rustdesk/rustdesk-server:latest
    command: hbbs -r 这里替换成你服务器的公网ip:21117
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    depends_on:
      - hbbr
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    ports:
      - 21117:21117
      - 21119:21119
    image: rustdesk/rustdesk-server:latest
    command: hbbr
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    restart: unless-stopped

执行下载镜像和启动docker容器

[root@localhost rustdesk]# cd /root/rustdesk
[root@localhost rustdesk]# docker compose up -d
[+] Running 6/6
 ✔ hbbr 4 layers [⣿⣿⣿⣿]   0B/0B   Pulled                                                                                                                                                                10.3s 
   ✔ 06d39c85623a Pull complete                                                                                                                                                                                      6.5s 
   ✔ 5dd09196e6ec Pull complete                                                                                                                                                                                      6.7s 
   ✔ ca6574f0f245 Pull complete                                                                                                                                                                                      6.9s 
   ✔ 4f4fb700ef54 Pull complete                                                                                                                                                                                      7.0s 
 ✔ hbbs Pulled                                                                                                                                                                                                      10.3s 
[+] Running 3/3
 ✔ Network rustdesk_rustdesk-net  Created                                                                                                                                                                            0.0s 
 ✔ Container hbbr                 Started                                                                                                                                                                            0.7s 
 ✔ Container hbbs                 Started 

查看容器

docker ps

目前,通过自建rustdesk服务器,我们只需要填写ID服务器即可达到使用国内加速的目的,但是有一个风险点,如果其他人知道了你的地址,就可以白嫖使用你的流量,那么如何避免此类情况呢?
使用key认证
修改compose.yml

[root@localhost rustdesk]# vim /root/rustdesk/docker-compose.yml

在16行和31行加上-k_参数
完整配置如下参考

version: '3'

networks:
  rustdesk-net:
    external: false

services:
  hbbs:
    container_name: hbbs
    ports:
      - 21115:21115
      - 21116:21116
      - 21116:21116/udp
      - 21118:21118
    image: rustdesk/rustdesk-server:latest
    command: hbbs -r 此处填写你的公网IP:21117 -k
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    depends_on:
      - hbbr
    restart: unless-stopped

  hbbr:
    container_name: hbbr
    ports:
      - 21117:21117
      - 21119:21119
    image: rustdesk/rustdesk-server:latest
    command: hbbr -k
    volumes:
      - ./data:/root
    networks:
      - rustdesk-net
    restart: unless-stopped

重新加载容器

[root@loclahost rustdesk]# cd /root/rustdesk/
[root@loclahost rustdesk]# docker compose pull
[+] Running 2/2
 ✔ hbbs Skipped - Image is already being pulled by hbbr                                                                                                                                0.0s 
 ✔ hbbr Pulled                                                                                                                                                                         2.2s 
[root@loclahost rustdesk]# docker compose up -d
[+] Running 2/2
 ✔ Container hbbr  Started                                                                                                                                                             0.8s 
 ✔ Container hbbs  Started

查看公钥文件

[root@localhost rustdesk]# cd /root/rustdesk/data/
[root@localhos data]# ls
db_v2.sqlite3  db_v2.sqlite3-shm  db_v2.sqlite3-wal  id_ed25519  id_ed25519.pub
[root@localhos data]# cat id_ed25519.pub 
z5pT5R00HRKfhUaAsdgGaC8lU1oDM1QGBuLgasBIYgwK8BpagasaxX5LM=

将key复制到客户端里 key记得有=

声明:青城留言 个人博客|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - 使用Docker自建Rustdesk开源远程桌面服务器


看山是山 看水是水