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

做好的客户端:https://www.123pan.com/s/gyM9-2CIO

所有操作均在root权限进行,需要先切换用户

sudo -i

新建文件夹【/root/rustdesk_data】

mkdir /root/rustdesk_data

进入文件夹

cd /root/rustdesk_data

新建yml文件,并写入保存配置

vi docker-compose.yml

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

注意:

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

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

③设置centos系统防火墙放行相关端口,或直接把墙关停。

#临时关停防火墙

systemctl stop firewalld.service

#永久关停防火墙

 

systemctl disable firewalld.service

#查看防火墙状态

 

systemctl status firewalld.service

给yml文件开权限

 

chmod 755 docker-compose.yml

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

 

docker-compose up -d

因为yml文件第15行和30行已经填写rustdesk官方的docker hub在线路径,所以执行时候会自动pull运行。

 

查看docker运行情况

docker ps

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

 

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

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

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

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

修改并保存第3步配置的yml文件【/root/rustdesk_data/docker-compose.yml】

vi /root/rustdesk_data/docker-compose.yml

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

 

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

#第31行
command: hbbr -k _

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

重新加载容器

#进入容器文件夹

cd /root/rustdesk_data

#执行命令

docker-compose pull

docker-compose up -d

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

找到KEY,并复制出来

 1 #进入容器文件夹里【data文件夹】
 2 cd /root/rusrdesk_data/data
 3 
 4 #显示文件,可以看到3个db文件,2个id文件
 5 #如:db_v2.sqlite3  db_v2.sqlite3-shm  db_v2.sqlite3-wal id_ed25519  id_ed25519.pub
 6 ls
 7 
 8 
 9 #查看公钥文件【id_ed25519.pub】,如:aMXQFBM+NpRIDqh0KZ7CUAXuQFxHqykAn5Fm0YqSQKM= 
10 cat ./id_ed25519.pub

把KEY粘贴到用户端

重启centos服务器

reboot

注意进行重启,否则可能即使填写KEY仍连不上。

客户端配置文件修改

在打包客户端之前你需要知道如何配置RustDesk中继服务器,不清楚的参考上面文章有详细说明。
接下来就是在Windows电脑上打开RustDesk软件并配置你搭建好的中继服务器地址,找到RustDesk软件配置文件所在目录。
win7/8/10系统在AppDate目录下,win+R调出运行并输入“%Appdata%”即可

打开config文件夹

编辑两个toml文件

RustDesk.toml文件

RustDesk2.toml文件

然后用个打包程序打包就行了,我用的单文件制作工具,一定要修改解压路径,否则域名、ID和密码不会生效!

至此,已全部完成rustdesk远程控制服务器自建,可以快乐的玩耍

 

THE END
分享
二维码
< <上一篇
下一篇>>