开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

时间:2022-10-26 07:54:50

一、需求说明

1.1、现状描述

    在公司的日常运维过程中,我们首先需要保证的就是设备的网络安全和数据安全;而有时候我们需要让其他人进行维护指定服务器软件等内容的时候,不希望让他人直接使用服务器的账号密码直接登陆;而是通过远程桌面软件进行连接操作;目前常见远程控制软件有向日葵ToDeskAnyDeskVNC DameWareAirDroid等;但是这些远程控制软件不是需要付费就是免费版有使用限制(网速、连接数量等限制),且会经过软件服务商的服务器数据安全无法保证。

1.2、RustDesk简介

    RustDesk | 开源远程桌面软件是国人开发的一个远程控制软件的项目;且所有代码都在github上开源,你可以自行查看项目源码,了解项目内容;且还可以自己搭建该远程桌面的服务器(也可以使用官方提供的);数据安全由你掌握;

RustDesk特点
序号 说明
1 采用rust语言编写,无需任何配置开箱即用,支持多平台(Windows, macOS, Linux, iOS, Android, 网页版都可以工作)
2 先尝试打洞直连,不行再由服务器转发(可自动适应可用带宽,无限制,延迟超低)
3 采用TLS 1.3端到端加密协议保护用户的通信安全,用户可以完全掌控数据,不用担心安全问题
4 自定义画面质量且允许用户在客户端程序里调节bitrate和quantizer改变画面传输质量(并且没有任何弹窗等商业推广行为)
5 RustDesk远程控制软件内置文件传输和TCP隧道功能,使用内置文件管理器可以方便地与远程电脑互传文件,设置TCP隧道也很容易,更是贴心提供了快捷RDP模式,一键就可以实现基于TCP隧道的RDP连接,安全快速稳定
6 支持自建远程连接中心服务器
7 内网IP直连
8 可以直接使用源码开发属于自己的版本

1.3、RustDesk源码和官网

 RustDesk项目国内源码地址开源远程桌面软件_RustDesk_(可自建远程桌面服务器)https://gitee.com/mirrors/rustdesk

RustDesk | 开源远程桌面软件【官网】开源远程桌面软件_RustDesk_(可自建远程桌面服务器)https://rustdesk.com/zh/ 

二、群晖Docker上搭建中继服务器

自建服务器 :: RustDesk文档开源远程桌面软件_RustDesk_(可自建远程桌面服务器)https://rustdesk.com/docs/zh-cn/self-host/

2.1、安装Docker

点击【套件中心】-->【所有套件】-->【Docker】如果还没有安装则点击【安装套件】等待安装完成即可。

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

 

2.2、在Docker中下载RustDesk Server镜像

    打开Docker-->选择【注册表】在输入框中输入【RustDesk-Server】后点击【搜索】后选择【rustdesk/rustdesk-server】源双击下载镜像,如下图所示:

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器) 

2.3、配置RustDesk Server的hbbs、hbbr容器

安装 :: RustDesk文档开源远程桌面软件_RustDesk_(可自建远程桌面服务器)https://rustdesk.com/docs/zh-cn/self-host/install/群晖 :: RustDesk文档开源远程桌面软件_RustDesk_(可自建远程桌面服务器)https://rustdesk.com/docs/zh-cn/self-host/synogy/

2.3.1、配置hbbs容器为rustdesk的注册服务器

hbbs即【RustDesk ID/Rendezvous server】是注册服务器
序号 说明
1 默认情况下,hbbs 监听21115(tcp), 21116(tcp/udp), 21118(tcp)务必在防火墙开启这几个端口
2 21115是hbbs用作NAT类型测试
3 21116/UDP是hbbs用作ID注册与心跳服务
4 21116/TCP是hbbs用作TCP打洞与连接服务
5 21118是为了支持网页客户端使用websocket协议
6 请注意21116同时要开启TCP和UDP;
7
  • TCP(21115, 21116, 21117, 21118, 21119)
  • UDP(21116)
8 如果您不需要网页客户端(21118,21119)支持,对应端口可以不开。

    选择【映像】-->选中【rustdesk/rustdesk-server:latest】-->点击【启动】按钮进行配置hbbs容器:

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

我这里选择将hbbs的生成的key等相关文件都放置在群晖的【docker/rustdesk/hbbs】目录下 

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)开源远程桌面软件_RustDesk_(可自建远程桌面服务器) 在环境下输入命令【hbbs - r 群晖服务器的ip地址(或者是你的外网IPV4地址)】;我这里使用我的群晖内网地址:192.168.3.131,如下图所示:开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器) 点击【应用】按钮后查看【docker/rustdesk/hbbs】 目录下是否生成私钥公钥和对应的数据库文件内容,如下图所示则表示配置正确。

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

2.3.2、配置hbbr容器为rustdesk的中继服务器

hbbr即【RustDesk relay server】是RustDesk 中继服务器
序号 说明
1 默认情况下,hbbr 监听21117(tcp), 21119(tcp)
2 21117是hbbr用作中继服务
3 21119是为了支持网页客户端
4 如果您不需要网页客户端(21118,21119)支持,对应端口可以不开。

 可以安装《2.3.1、配置hbbs容器为rustdesk的注册服务器》的步骤配置hbbr容器,只是注意一点在配置hbbr容器的【高级设置】-->【环境】下的命令只用输入【hbbr】后点击【应用】后点击

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

 开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

 开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

 最后可以查看到hbbs和hbbr容器都在运行即可

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

 

三、安装使用RustDesk客户端

使用手册 :: RustDesk文档开源远程桌面软件_RustDesk_(可自建远程桌面服务器)https://rustdesk.com/docs/zh-cn/manual/以在Windows系统上安装RustDesk客户端和使用为例进行说明

3.1、下载Windows系统的RustDesk客户端

RustDesk | 开源远程桌面软件开源远程桌面软件_RustDesk_(可自建远程桌面服务器)https://rustdesk.com/zh/开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

将下载的压缩文件加压后双击打开即可安装,如下图所示:

开源远程桌面软件_RustDesk_(可自建远程桌面服务器) 这是关于RustDesk客户端界面的功能介绍开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

 3.2、设置客户端的中继服务器免费公共服务器

docs/README-ZH.md · Gitee 极速下载/rustdesk - Gitee.com开源远程桌面软件_RustDesk_(可自建远程桌面服务器)https://gitee.com/mirrors/rustdesk/blob/master/docs/README-ZH.md

    以下是您可以使用的、免费的、会随时更新的公共服务器列表,在国内也许网速会很慢或者无法访问。

  • 首尔, AWS lightsail, 1 VCPU/0.5G RAM
  • 新加坡, Vultr, 1 VCPU/1G RAM
  • 达拉斯, Vultr, 1 VCPU/1G RAM
  • 德国, Codext, 2 VCPU / 4GB RAM
  • 德国, Hetzner, 4 VCPU / 8GB RAM

3.2.1、未加密直接远程连接设置

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

 3.2.2、加密远程连接设置

①到自建服务器上下载公钥文件

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

②将下载好的公钥文件使用记事本打开将内容复制到中继器的KEY输入框后点击【确认】按钮,如下图所示:

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

 开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

3.3、测试

    在其他Windows电脑上也按照 【3.1、下载Windows系统的RustDesk客户端】和【 3.2、设置客户端的中继服务器】后,直接在rustdesk的【输入对方ID】里输入ID后点击【连接】即可连接到对方电脑上进行远程控制操作;如下图所示:

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)

开源远程桌面软件_RustDesk_(可自建远程桌面服务器)