在Todesk这个远程服务刚出来的时候,免费试用之后,得效于精心的C语言代码编写,这远程服务整体高效、流畅、响应极速,体验远远甩了向日葵好几条街。
后来开启收费计划,最开始还有半价优惠给初体验的用户,博主从Todesk开启收费计划之后就直接购买了10年期。
自从以400+元购买Todesk会员10期后,这是一笔巨划算的买卖,平均每年的远程服务费用才40多,这个价格远比向日葵还便宜,而且走的是VIP路线,不用与免费路线急网络资源。
但随着时间的发展,Todesk的限制越来越多,各种各样的认证,手机端的远程数量限制、各种新出的功能,我买的会员服务都无法使用,需要重新购买新出的高级功能,这让人感觉到背刺。
还有一个问题在我的使用场景中一直无法忽视,远程被控端如果是Windows(其他端我倒是没有使用这个Todesk远程),一连接被控,被控的CPU占用会比较高,即使没有任何服务在运行,todesk也会占用15%+的CPU资源(4代i5),这应该是在编码远程图像。这么高的资源占用,导致被控端的CPU一直在全功率的运行模式下,温度持续高水位,排风口一直很热。而且使用windows自带的RDP则没有这个现象,CPU一直运行在很低的频率水位。
RustDesk
其实我很早就听说RustDesk,这还是一款由华人开发的远程控制软件(在新加坡),只是我一直没空去研究这个,毕竟在我的网络里面RDP用得蛮好的,工作期间绝大多数还是内网直接用RDP连接远程服务。
最近有空了开始部署RustDesk,使用了一段时间,才发现,真香,Todesk可以丢进垃圾桶了,可惜我还有7、8年的会员期。
我认为它很有用的特性如下:
- 内网穿透式远程控制,穿透成功,延时很低,就跟内网差一点点。
- 客户端支持走强制走中继,当穿透很不稳定的时候,强制走中继,真香
- 支持自建注册\中继服务端(服务中继和主机列表分发,闭源),部署不难,独占自己的服务器资源,但需要自己准备公网服务器
- 客户端可定义与被控的端口转发,真香,这是独特功能,其他远程控制没有的功能,约等于高级版的FRP
- 全终端,支持安卓、windows、MacOS、Linux等操作系统,支持Arm、arch、X86等硬件平台,只需要下载相应操作系统的客户端即可
总结一下,真香
用法
安装与部署
访问github/rustdesk,下载相应的平台客户端,按照说明书安装或者部署即可,客户端的功能为全功能,可以被控也可以主控。
在主控端,我一般没有安装,但在被控端,因为想让RustDesk随主机启动而启动,就把它安装到系统里面。
连接使用
常规的使用,看家本领远程控制,在主控端这里,直接打开客户端之后,输入被控ID和密码,就可以远控了。
远程端口映射
常规的使用,RustDesk同样有Todesk高占用Cpu的毛病,应该是通病,毕竟需要截取屏幕并压缩再传输,这个过程比较占用CPU资源。那么,接下来,我介绍一种高级使用方法,那就是端口映射,这是RustDesk独特的功能。
- 把远程被控端的3389映射到本地,不就可以直接使用Windows自带的RDP,实现超低CPU资源远程控制。
RustDesk其实自身也支持直接RDP访问,但那个每次连接远程被控都随机指定一个本地端口,造成mstsc
的访问列表花了。我有点点洁癖,忍不了。
- 映射非被控主机但网络可达的服务资源,如同被控网络的Mysql数据库
如上面截图中的33306,则是映射了同网段的Mysql数据库端口,在家里可以直接调用远程的数据库,而不用把数据库暴露在公网,妈妈再也不用担心数据库被暴肛门。
因此RustDesk变成一个配置极其简单的远程端口映射服务,而且这是自带内网穿透功能的,穿透成功后网络很稳定很稳定。
自建注册/中继服务
RustDesk有公用的注册/中继服务,但官方也说了,公共的可能会很慢,而且需要注册账号,也不保证可用。
所以,既然已经有公有云服务器了,那就搭建一个私有的注册/中继服务器,这玩意还占用很小的资源,只需要宽带足够即可,个人使用1M都够用了,34元的轻量阿里云服务器走起。
参考资料,我选择的是Docker部署,找个地方和有docker权限的用户,执行以下两条命令就搞定了。分别部署hbbs和hbbr,一个中继、一个注册。
docker run --name hbbs -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbs
docker run --name hbbr -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr
打开防火墙端口
返回控制台,打开防火墙-添加规则,以下端口全部开放:
hbbs占用的端口:21115、21116(TCP/UDP)、21118
hbbr占用的端口:21117、21119
记录好运行这个RustDesk服务的IP,然后回到各个客户端,把IP写入到配置即可,IP保护好,泄露了就变成公共服务器了,流量杠不住的。
最后
这个远程控制软件,远不只上面介绍的功能,还有文件传输、录屏、手机端的互控等等,等你们去发现。
感谢开源
感谢RustDesk作者,开源这么好用的软件。