使用docker自建rustdesk服务器

大家好,我是早九晚十二,目前是做运维相关的工作。写博客是为了积累,希望大家一起进步!
我的主页:早九晚十二

前言

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

安装基础依赖

docker安装

安装docker可以参照之前的文章:centos7.2docker安装与使用
也可以使用如下命令快速安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
如果速度慢,也可以使用国内网址
curl -sSL https://get.daocloud.io/docker | sh

在这里插入图片描述

查看docker版本

[root@localhost ~]# docker --version
Docker version 23.0.3, build 3e7cbfd

安装docker-compose

yum install docker-compose-plugin

查看docker compose版本

[root@localhost ~]# docker compose version
Docker Compose version v2.17.2

启动docker

 systemctl start docker
 systemctl enable docker

创建配置文件

在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

在这里插入图片描述

客户端使用自建服务器

点击ID/中级服务器
在这里插入图片描述
在这里插入图片描述

避免白嫖?

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

使用key认证

修改compose.yml

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

在16行和31行加上**-k_**参数
![在这里插入图片描述](https://img-blog.csdnimg.cn/26944457763f428d873f2d93657ede26.png在这里插入图片描述

完整配置如下

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

测试客户端

不填写key的情况下,测试客户端报错

查看公钥文件

[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=

重启服务器

reboot

再次测试

将key复制到客户端里,报错消失。
在这里插入图片描述

码字不易。如果文章对您有希望的话,请三连支持一波。
如有问题,欢迎留言,一起探讨,感谢。
也可关注下方公众号,看到留言后会第一时间回复。

  • 0
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

早九晚十二

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值