首页 > 其他分享 >docker-compose自建RustDesk远程控制服务器

docker-compose自建RustDesk远程控制服务器

时间:2023-11-10 14:38:31浏览次数:53  
标签:填写 compose RustDesk 服务器 docker id rustdesk


github: rustdesk/rustdesk-server: RustDesk Server Program (github.com)

一、创建  docker-compose.yml  文件,复制以下 docker-compose 配置文件内容到文件

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 rustdesk.example.com: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

其中第16行【rustdesk.example.com】更改为本机centos服务器公网ip地址,或已正确解析并可访问的域名。

二、防火墙与安全组配置

1、设置服务器系统防火墙放行相关端口

2、设置云服务器网卡安全组放行相关端口

三、启动docker容器

# 启动docker容器
docker-compose up -d


# 查看docker运行情况
docker ps

# 进入当前正在运行容器
docker exec -it 容器id /bin/bash

四、客户端连接

把yml文件里改好的IP或域名,填写到使用端中【ID服务器】

docker-compose自建RustDesk远程控制服务器_docker

 

-----------------------------------------------------

至此,测试远程控制使用应该已经没有问题了,即使centos重启,docker容器也会自启动。

但是,有一个风险点:如果其他人知道了该IP或域名部署了rustdesk服务器,那么他人也可以直接填写ID服务器,使用服务。

这样的话,流量就给别人白嫖了。

所以接下来,需要强制开启填写key才能连接服务器。

(非必须)五、开启key验证

在16行和31行末尾加上【-k _ 】,以强制开启验证key,即:

#第16行
command: hbbs -r rustdesk.example.com:21117 -k _ 

#第31行
command: hbbr -k _

注意16行填写自己的IP或域名。

(非必须)六、重新加载容器

docker-compose up -d

此时,重新测试用户端控制,没有填写KEY的情况下,会报错无法连上。

(非必须)七、查看公钥文件,客户端填写

在 docker-compose.yml  目录下可以看到生成了一个data文件夹,进入data文件夹

#显示文件,可以看到3个db文件,2个id文件
db_v2.sqlite3  db_v2.sqlite3-shm  db_v2.sqlite3-wal id_ed25519  id_ed25519.pub

#查看公钥文件【id_ed25519.pub】,如:aMXQFBM+NpRIDqh0KZ7CUAXuQFxHqykAn5Fm0YqSQKM= 
cat ./id_ed25519.pub

然后在客户端填写key

docker-compose自建RustDesk远程控制服务器_rustdesk-server_02

 

如果遇到连接问题,请尝试重启。

参考:docker-compose自建RustDesk远程控制服务器 - 痴心妄想

标签:填写,compose,RustDesk,服务器,docker,id,rustdesk
From: https://blog.51cto.com/u_14011026/8298658

相关文章

  • Docker 基础:Dockerfile & docker-compose
    DockerfileDockerfile是实现自定镜像的一种手段,通过编写Dockerfile,来编译成自己想要的镜像。FROM{image_name}:{image_tag}#指定基础镜像MAINTAINER{userinfo}#维护人信息USER{username}#指定RUN、CMD或ENTRYPOINT运行时使用的用户WORKDIR{workdir}#为后......
  • linux系统centos7安装docker
    1、Docker官网安装地址https://docs.docker.com/engine/install/centos/#prerequisites2、离线安装下载地址https://download.docker.com/linux/static/stable/x86_64/3、使用yum工具安装如果之前安装需要先卸载sudoyumremovedocker\docker-cl......
  • docker隔离实现
    docker容器之间的隔离实现docker容器之间隔离:命名空间控制组网络虚拟化联合文件系统命名空间pidnamespace:进程隔离netnamespace:管理网络接口ipcnamespace:管理进程通信资源mntnamespace:管理文件系统挂载utsnamespace:隔离内核和版本标识(unixtimesha......
  • docker mysql
    dockerrun-d--namemysql--restart=always--privileged=true\-v/opt/mysql/log:/var/log/mysql\-v/opt/mysql/data:/var/lib/mysql\-v/opt/mysql/conf.d:/etc/mysql/conf.d\-v/etc/localtime:/etc/localtime:ro\-eMYSQL_ROOT_PASSWORD=123456-p33......
  • docker-部署granfana
    1.下载镜像dockerpullgrafana/grafana:8.3.3 2.创建挂载点dockervolumecreategrafana-storage3.启动容器(这里已经创建网络环境使用现有的)dockerrun-dit-p3000:3000\--privileged=true\--name=grafana\--restartalways\--networkzbx_ne......
  • 通过运行中的容器生成 Docker Compose 配置文件
    背景笔者之前有一次不小心删除了原始的docker-compose.yml文件,不过正在运行的Docker容器还在,找了许久,发现一个方法可以从这些容器中生成一个等效的DockerCompose配置文件。本文将介绍使用autocompose工具从正在运行的容器中反向生成docker-compose.yml文件。安装所需工......
  • zabbix基于docker容器部署配置企业微信机器人告警实例
    配置zabbixserver1.先在企业微信内创建机器人 2.查看webhook地址  3.找到脚本执行目录 grep-Ev'^$|#'/etc/zabbix/zabbix_server.conf|grep^A 4.进入默认的脚本存放路径cd/usr/lib/zabbix/alertscripts 5.新建wechat.p......
  • 为zabbix_server_docker容器安装Python 3完善机器人告警脚本环境
    1.安装Python3dnfinstallpython3 2.要验证安装,请输入以下命令检查Python版本:python3--version 3.建立软连接:ln-s/usr/bin/python3.6/usr/bin/python  4.安装epel:dnfinstallpython3-devel-y 5.启用epel:dnfins......
  • 修改运行中的docker容器的端口映射的三种方式
    前言在dockerrun创建并运行容器的时候,可以通过-p指定端口映射规则。但是,我们经常会遇到刚开始忘记设置端口映射或者设置错了需要修改。当dockerstart运行容器后并没有提供一个-p选项或设置,让你修改指定端口映射规则。那么这种情况我们该怎么处理呢?方法一:删除原有容器,重新建新容......
  • docker安装es8.11
    一、安装esdocker拉取要指定版本标签,不能用lastest,官方文档目前最新是8.11,就决定安装这个版本的,主要是注意改下配置文件#高版本安装Kibana的时候需要和ElasticSearch在同一网段内dockernetworkcreatees-net#给映射文件夹授权chmod-R775/data/es#单节点模式,9200端口(......