一、背景
父母经常有些电脑上的功能不会操作,需要我远程协助,以前使用的是Teamviewer,这几年限制越来越多,账号登陆都成了问题。之前想使用自建Tailscale + Derper中继节点 + 微软RDP远程桌面
的方式来实现远程操作,但是使用RDP远程登陆,会导致被控端锁屏,不是一个适合的协助父母远程操作的方式,所以尝试自建Rustdesk来解决。
二、简介
1. Rustdesk
Rustdesk是一个用于自托管的开源远程桌面应用程序,可作为TeamViewer的替代方案。
三、环境准备
1. 国内云服务器
最好是ipv4+ipv6双栈,双栈环境很多时候会提高打洞的成功率。
在云服务器厂商面板或者防火墙开启21115/tcp、21116/tcp、21117/tcp和21116/udp端口。
2. Docker
使用Docker搭建会很方便很多。
四、过程
1. 创建文件夹
先创建/home/ryan/Docker/rustdesk
文件夹,用于储存rustdesk相关的数据。
2. 搭建
1 | docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -v /home/ryan/Docker/rustdesk:/root -td rustdesk/rustdesk-server:1.1.14 hbbs |
其中,hbbs是rustdesk的认证服务,hbbr是rustdesk的中继服务。
3. 客户端使用
获取公钥,
1 | cat Docker/rustdesk/id_ed25519.pub |
这个公钥是在客户端使用时配置来认证的。
下载客户端,参考:https://rustdesk.com/docs/en/client/
在客户端的设置——网络中,修改服务配置:
先点击解锁网络设置
,然后设置ID服务器
和中继服务器
为自己服务器的地址,如果没有自行修改端口,默认不需要填写端口。Key
设置为上面获取的公钥。点击确认保存。
接着就可以使用自己的服务器使用Rustdesk了。