Rustdesk自建服务器

对于现在常见的远程控制软件,例如 ToDesk、向日葵,其免费版本总有诸多限制(帧率低、分辨率低、控制时间有限制),而 RustDesk 的公共服务器现在在国内也不可用,因此我就想到了 RustDesk 的自建服务器。现在我们实验室有几台空闲的电脑,并且这些电脑都有 IPv6,这就省去了我购买云服务器的花费,可以实现零成本搭建远程服务😁

安装 RustDesk Server

我使用 https://github.com/sshpc/rustdesktool 这里的脚本来一键安装,安装完后,RustDesk Server 的默认安装目录为:

1
/usr/local/rustdesk-sever

开放端口

我们需要放行防火墙 TCP & UDP 端口 21115-21119,其中

  • 21115 是 hbbs 用作 NAT 类型测试
  • 21116/UDP 是 hbbs 用作 ID 注册与心跳服务
  • 21116/TCP 是 hbbs 用作 TCP 打洞与连接服务
  • 21117 是 hbbr 用作中继服务
1
2
3
4
5
6
7
# 允许 TCP 端口 
sudo ufw allow 21115:21119/tcp

# 允许 UDP 端口
sudo ufw allow 21115:21119/udp

sudo ufw enable

然后执行

1
sudo ufw status

如果有如下类似输出,表明端口已经放行并且防火墙正在运行。

1
2
3
4
5
6
7
8
状态:活动

至              动作        来自
--              --          --
21115:21119/tcp ALLOW       Anywhere
21115:21119/udp ALLOW       Anywhere
21115:21119/tcp (v6) ALLOW  Anywhere (v6)
21115:21119/udp (v6) ALLOW  Anywhere (v6)

启动服务

在我们用脚本一键安装后,服务安装目录为:

1
2
/usr/lib/systemd/system/RustDeskHbbr.service
/usr/lib/systemd/system/RustDeskHbbs.service

可以通过 systemd 启动服务:

1
2
3
4
5
sudo systemctl start RustDeskHbbs
sudo systemctl start RustDeskHbbr

# 或者重载systemd配置
# sudo systemctl daemon-reload

配置客户端

在 RustDesk 的客户端的 设置 -> 网络 -> ID/中继服务器 中:

第一第二栏中打马赛克的地方填入服务器的 ip,由于实验室电脑有 IPv6,因此我这里使用的是 IPv6;key 栏填入默认安装目录下的 id_ed25519.pub 中的值。

确认后,左下角显示 就绪 就说明配置完成了。

在自己所需的电脑上都进行这一步的客户端配置即可开连!尝试了一下分辨率比 ToDesk 高多了,延迟也还好。

使用 Hugo 构建
主题 StackJimmy 设计