RustDesk 是一款开源的远程桌面工具,它允许用户通过互联网或局域网远程控制另一台计算机,支持用自己的云服务器、NAS等设备来搭建专属的RustDesk中继服务器,获得更好的体验
搭建教程
下载 Rustdesk Server
https://github.com/rustdesk/rustdesk-server/releases
因某种原因国内访问 GitHub 的速度会很慢,这里推荐大家使用 github 代理进行下载 (这里我用的是Linux版本)
解压Rustdesk Server
下载完成后解压RustDesk
软件包,如遇unzip: command not found
请先安装 unzip
解压完成之后会有三个文件,如上图所示,这里对这三个文件简要介绍一下;
hbbr:
hbbr
是RustDesk Relay Server,即RustDesk中继服务器,当客户端之间无法直接建立P2P连接时,会通过hbbr
中继服务器进行数据传输hbbr
允许无法直接建立P2P连接的客户端通过中继服务器进行通信。
hbbs:
hbbs
代表RustDesk ID / Rendezvous Server,即RustDesk ID注册服务器。它用于分配和注册ID,并且是RustDesk的中介服务器(Broker Server),用于管理和协调客户端连接。hbbs
帮助客户端找到并建立P2P连接,负责维护客户端的在线状态,并处理连接请求。当客户端A希望连接客户端B时,它会向hbbs
发送请求,hbbs
会帮助它们建立连接。
rustdesk-utils:
rustdesk-utils
是RustDesk的命令行工具,提供了一些管理和操作RustDesk服务器端的工具和命令。
配置守护进程
现在我们需要将hbbr
hbbs
这两个服务启动起来,这里推荐编写 systemd unit 服务单元来守护进程,从而实现开机自启。
/etc/systemd/system/hbbr.service
/etc/systemd/system/hbbs.service
保存并关闭这两个文件后,需要重新加载 systemd
配置,启动服务,并设置它们在系统启动时自动启动
放行端口
RustDesk Server 共占用如下端口
- 21115:用于NAT类型测试。
- 21116:用于TCP打洞与连接服务。
- 21117:用于中继服务。
- 21118:用于支持网页客户端。
- 21119:用于支持网页客户端。
UDP端口:
- 21116:用于ID注册与心跳服务。
我们需要在防火墙中放行以上端口,如果是云服务器则需要再安全组中允许上述端口的流量通过
获取Key
在我们首次启动 RustDesk Server之后会自动生成一个名为 id_ed25519.pub
的公钥文件以及,id_ed25519
私钥文件,放在你的 RustDesk Server 目录中,这个密钥的主要用途是确保客户端和服务器之间的通信安全,这里我们主要会用到公钥文件,如果要获取新的密钥对的话把这俩玩意删掉重启一下hbbr
hbbs
服务就可以了。
配置客户端
接下来从官网:rustdesk.com 获取到客户端并配置好中继服务器就可以了