RustDesk自建远程桌面搭建

最后更新于 2024-09-18 657 次阅读


1.RustDesk介绍

RustDesk 是一款开源的远程桌面软件,允许用户通过网络从远程位置控制其他计算机。它是用 Rust 语言编写的,这使得它在性能和安全性方面具有一定的优势。RustDesk 支持多种操作系统,包括 Windows、macOS、Linux 和 Android。

RustDesk 的主要特点包括:

  • 高性能和安全性:利用 Rust 语言的特性,提供了高效且安全的远程访问体验。
  • 易于使用:界面友好,便于用户设置和开始远程控制。
  • 支持多平台:可以在多种操作系统上运行,增加了其通用性。
  • 开源和免费:作为开源软件,用户可以免费使用,并可以查看和修改源代码以适应个人需求。

RustDesk 主要用于远程办公、IT 支持和系统管理等场景,为用户提供了一种灵活且可靠的远程桌面解决方案。

官网:https://rustdesk.com/

开源地址:https://github.com/rustdesk/rustdesk

2.RustDesk部署

2.1.准备工作

有一台自己的公网服务器.推荐使用阿里云.腾讯或其他厂商的服务器.,有兴趣的可以去看看(带推广连接)雨云

这里我就不用国内的服务器了.因为我买的腾讯是按流量计费的.不适合.雨云的服务器已经有项目再跑了.

这次就用国外的服务器来试试水.

2.2.服务端

前往官方Girhub仓库releases页下载最新构建版.根据服务器架构选择下载.下载后上传到服务器

image-20240804105132519

解压后上传到服务器.最好单独创建个文件夹

image-20240804105823481

2.2.1.安装PM2进程守护工具

RustDesk官方文档建议安装PM2.

PM2是node进程管理工具,可以利用它来简化很多node应用管理的繁琐任务,如性能监控、自动重启、负载均衡等,而且使用非常简单。

首先服务器要按装Node.js.使用 nvm 安装 Node.js

  1. 首先安装nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash

安装完成后,重启终端或运行 source ~/.bashrc 来更新你的 shell。

  1. 通过 nvm 安装 Node.js

官方文档建议pm2 需要 nodejs v16+.那我们安装16版本的

nvm install 16

image-20240804110752241

Node.js安装完毕.测试下命令是否正常

image-20240804110853583

好了.接下来安装pm2.一句命令简直不能更简单(注意这时全局安装)

npm install -g pm2

安装完成后.输入命令查看下版本,检查是否安装成功

image-20240804111210914

PM2 安装完毕!

2.2.3.服务端运行hbbs和hbbr

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

hhbs的-r参数不是必须的,他只是方便你不用在客户端指定中继服务器,如果是默认21117端口,可以不填port。客户端指定的中继服务器优先级高于这个。

默认情况下,hbbs 监听21115(tcp), 21116(tcp/udp), 21118(tcp),hbbr 监听21117(tcp), 21119(tcp)。务必在防火墙开启这几个端口, 请注意21116同时要开启TCP和UDP。其中21115是hbbs用作NAT类型测试,21116/UDP是hbbs用作ID注册与心跳服务,21116/TCP是hbbs用作TCP打洞与连接服务,21117是hbbr用作中继服务, 21118和21119是为了支持网页客户端。如果您不需要网页客户端(21118,21119)支持,对应端口可以不开。

这里设置默认端口

image-20240804111638934

这样 服务端就设置完毕了.如果有防火墙需要把网络端口放行

image-20240804112203813

21116 需要放行TCP与UDP

注意.途中 cpu 和内存显示 为0 .实际上根本没运行.后来检查原因.原来是权限问题,成功后的界面应该是这样的

image-20240804113604893

且目录下多出来很多文件.才是运行成功的

image-20240804113722167

这样 服务端才算设置完毕.最后再设置客户端.

2.3.客户端

到github网站上找到客户端版本下载

https://github.com/rustdesk/rustdesk/releases

  1. 运行后 点击三角 设置配置

image-20240804134929377

  1. 选择网络,填写ID服务器与中继服务器与Keyimage-20240804135023583

  2. ID 服务器就是 服务器IP+21116端口,中继服务器:服务器ID+21117端口 Key 在服务器 RustDesk 目录下 ,生成后戳为.pub的文件

image-20240804135442975

这样客户端配置也设置完毕了

3.结语

全部搞定之后,另一台电脑当作被控端.下载client客户端.

可以把客户端文件名改成 rustdesk-host=127.0.0.1,key=1234.exe 发给他

127.0.0.1 改为你服务器的IP key 随便写 因为被控端是不需要key的

测试下来.速度还不错

image-20240804143509415