Unraid安装RustDeskServer作为中继服务端(支持DDNS)

linken 962 2022-06-29

目前RustDesk这款开源远程桌面软件已经支持用户自行搭建中继服务器,服务端已开源,无需购买licences。鉴于目前TV免费版使用困难,向日葵远程画面质量太差,所以尝试使用RustDesk作为代替。同时可自行搭建中继服务器已经成为了其最大的优点。

中继服务端安装

Unraid可以直接在应用市场搜索RustDeskServer,然后点击安装即可进入Docker的配置界面。
首先对照RustDesk官方给出的Docker运行命令:

sudo docker image pull rustdesk/rustdesk-server
sudo docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -it --net=host --rm rustdesk/rustdesk-server hbbs -r <relay-server-ip[:port]>
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -it --net=host --rm rustdesk/rustdesk-server hbbr

可以看出需要创建两个容器,首先是hbbs的配置:

1656468565769

这是容器的高级视图,需要修改配置的地方主要是容器名字、配置文件路径(两个容器的此路径需要保持一致),以及发布参数那里填写hbbs -r <relay-server-ip[:port]>这部分内容。

这里如果是有固定公网IP的云服务器当然是要填IP,但对于家中的Unraid或群晖等NAS系统填写DDNS域名也是可以正常生效的。并且要注意的是,此条参数只能写在发布参数一栏,加在额外参数一栏会创建报错。

然后第二个hbbr容器的配置类似,需要注意的是要将下方的端口删掉,重新添加hbbr对应的21117/tcp、21119/tcp两个端口,并在发布参数那里填写hbbr

上述两个容器创建成功后,将上面涉及到的端口映射出去,中继服务端的安装就完成了。

客户端配置

官方的文档写的已经比较详细了,主要就是在客户端的配置中找到【ID/中继服务器】一项,然后在第一栏【ID服务器】中填上我们上面服务器对应的公网域名,后面的项不需要填写软件会自动补全。

加密配置

hbbs在第一次运行时,会自动产生一对加密私钥和公钥(分别位于运行目录下的id_ed25519和id_ed25519.pub文件中),其主要用途是为了通讯加密。如果在上一步骤客户端的配置中没有填写Key:(公钥文件id_ed25519.pub中的内容),不影响连接,但是连接无法加密。

如果需要禁止没有key的用户建立非加密连接,在运行hbbs和hbbr的时候添加-k _参数,例如:

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

如果要更改key,删除 id_ed25519 和 id_ed25519.pub 文件并重新启动 hbbs/hbbr即可,hbbs将会产生新的密钥对。

附:群晖安装RustDeskServer服务端

详见官方文档


# unraid