由于工作原因经常需求衔接公司的电脑进行长途的代码调试和数据处理,用过许多的长途桌面东西,可是怎么办长途衔接东西都是要收费的,不付费就只能忍受辣眼睛的画质,特别是疫情隔离期间对长途桌面的需求极具增加。终究在白嫖过无数长途衔接东西后终于找到了开源且能够自己树立的长途桌面程序 RustDesk

1、简介

开源的虚拟与长途桌面基础架构。长途桌面软件,开箱即用,无需任何装备。您彻底掌控数据,不必担心安全问题。您能够运用我们的注册/中继服务器,或许自建,亦或许开发您的版别。

假如仅仅运用RustDesk软件且不需求自己树立服务器的话,能够直接在官网下载对应的体系版别即可运用,不过由于共享运用作者的服务器画质和响应速度或许存在问题。此处主张有自己云服务器的同学自己树立中继服务器,画质和响应速度会得到大幅度提高。

软件官网:RustDesk

2、树立中继服务器

本博客基于:CentOS Linux release 7.6.1810树立,并选用pm2 发动的方法进行办理,docker树立方法没有测验成功,欢迎树立成功的同学一起沟通。

自建中继服务器基本要求:

硬件要求很低,最低装备的云服务器就能够了,CPU和内存要求都是最小的。关于网络大小,假如TCP打洞直连失利,就要消耗中继流量,一个中继衔接的流量在30k-3M每秒之间(1920×1080屏幕),取决于清晰度设置和画面改变。假如仅仅办公需求,平均在100K/s。

2.1 下载中继服务器软件

2.1.1 进入RustDeck官网下载软件

官网下载地址:rustdesk-server,找的与自己体系相匹配的软件包,如图2-1所示

图2-1 中继软件下载
使用RustDesk建立专属自己的远程桌面

弥补一些关于Linux体系中软件区分的资料

  • Linux下软件包的分类及deb、rpm、tar.gz的差异
  • x86/x64/x86-64/amd64/arm指令集架构之间的关系

2.1.2 上传到自己的服务器

① 在 /usr/local/lib 目录下树立文件夹 rustdesk

mkdir rustdesk

② 运用FTP软件上传软件包到 /usr/local/lib/rustdesk 目录下

或许运用 wget 指令直接下载

wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.7-1/rustdesk-server-linux-amd64.zip

③ 解压软件包

unzip rustdesk-server-linux-amd64.zip

此刻软件包以及能够运用,可是主张装置pm2进行服务的启停和办理

发动指令

./hbbs -r <hbbr运转地点主机的地址[:port]>
./hbbr

2.2 装置nodejs

① 在 /usr/local/lib 目录下树立文件夹 nodejs

mkdir nodejs

② 下载nodejs,nodejs官网运用FTP软件上传到目录 /usr/local/lib/nodejs

或许运用 wget 指令直接下载

wget https://nodejs.org/dist/v16.14.0/node-v16.14.0-linux-x64.tar.xz

注意:需求装置nodejs16+版别

③ 解压文件,装备软衔接

# 解压文件
tar -xvf node-v16.14.0-linux-x64.tar.xz
# 装备软衔接
ln -s /usr/local/lib/nodejs/node-v16.14.0-linux-x64/bin/node /usr/local/bin
ln -s /usr/local/lib/nodejs/node-v16.14.0-linux-x64/bin/npm /usr/local/bin

④ 检查是否装备成功

node -v
npm -v

2.3 装置pm2包并发动服务

① 运用npm指令装置pm2

npm install -g pm2

② 运用pm2 运转 hbbs/hbbr

进入中继软件地点目录履行以下指令

pm2 start hbbs -- -r <your-relay-server-ip[:port]> 
pm2 start hbbr 

③ 检查服务运转情况

pm2 list

hhbs的-r参数不是有必要的,他仅仅方便你不必在客户端指定中继服务器,假如是默许21117端口,能够不填port。客户端指定的中继服务器优先级高于这个。

官网指出填不填都能够,可是处于保险起见最好加上参数;

2.4 装备防火墙

找到你服务器的防火墙或安全组装备,开放以下端口,如图2-2所示;

  • TCP(21115, 21116, 21117, 21118, 21119)
  • UDP(21116)
图2-2 防火墙装备
使用RustDesk建立专属自己的远程桌面

必须在防火墙敞开这几个端口, 请注意21116同时要敞开TCP和UDP

  • hbbs 监听21115(tcp), 21116(tcp/udp), 21118(tcp);
  • hbbr 监听21117(tcp), 21119(tcp);
  • 21115是hbbs用作NAT类型测试;
  • 21116/UDP是hbbs用作ID注册与心跳服务;
  • 21116/TCP是hbbs用作TCP打洞与衔接服务;
  • 21117是hbbr用作中继服务, 21118和21119是为了支撑网页客户端;
  • 假如您不需求网页客户端(21118,21119)支撑,对应端口能够不开;

3、装备运用

3.1 不运用密钥衔接

将第二步装备好的服务器地址,填写到RustDesk软件的ID/中继服务器装备,装备完成后即可进行长途衔接。

① 翻开RustDesk软件,找到菜单选项,如图3-1所示;

图 3-1 装备中继服务器
使用RustDesk建立专属自己的远程桌面

② 装备ID服务器和中继服务器地址,如图3-2所示

图 3-2 ID服务器地址装备
使用RustDesk建立专属自己的远程桌面

注意:

① 修正IP地址为你自己的IP地址!!!

② 衔接端和被衔接端都需求添加中继服务器装备!!!

3.2 运用密钥链接

上述中装备完成后现已能够进行正常的长途桌面操作和拜访,可是由于通信之间没有进行加密,不免会被恶意进犯和盗取数据,因而主张中继地址参加强制密钥拜访。

① 重启 hbbs/hbbr 服务强制敞开加密衔接

pm2 start hbbs -r <relay-server-ip[:port]> -k _
pm2 start hbbr -k _

② 找到密钥文件

密钥文件装备在中继软件目录下的 id_ed25519.pub,运用指令检查密钥

cat ./id_ed25519.pub

③ 装备密钥

装备同图3-2,在key选项处添加的密钥信息即可完成加密衔接;

【参考资料】

官方树立文档:rustdesk.com/do