RustDesk挺出名的一款远程控制,远程协助的开源软件。完美替代TeamViewer ,ToDesk,向日葵等平台。关键支持自建服务器,更安全私密远程控制电脑!

其中客户端支持安卓,且支持控制安卓手机。这一点我非常喜欢!因为子女们北漂在外,父母需要在手机上操作的审核,却慌乱无措。这时候手机远程协助太重要啦!!

之前就有一次遇到这种情况,从应用市场上下载了一款App。免费使用必须看广告,看完广告只有几分钟免费时长。远程画质烂的一笔。

像ToDesk平台虽然支持远程控制手机,但是前提是你开通了会员!

官方地址

官网:https://rustdesk.com/

开源地址:https://github.com/rustdesk/

准备工作

1,有自己的一台服务器,带宽最好3Mbps以上。推荐是国内服务器,国外UDP协议干扰比较严重

2,(非必须)一个域名,替换IP使用,如果控制多台服务器,ID配置写死IP,不利于后续替换

服务端

开放防火墙

  • TCP(21115, 21116, 21117, 21118, 21119)
  • UDP(21116)

Linux(Ubuntu)

Github下载编译后的文件,直接部署运行即可!启动的服务有俩个:

  • hbbs - RustDesk ID注册服务器
  • hbbr - RustDesk 中继服务器

下载地址:https://github.com/rustdesk/rustdesk-server/releases/

根据自己服务器系统选择下载~

启动注册服务器,执行 ./hbbs

1
2
3
4
5
6
7
8
9
10
11
12
13
14
root@VM-8-4-ubuntu:~/amd64# ./hbbs 
[2023-10-28 22:47:25.255258 +08:00] INFO [src/common.rs:143] Private/public key written to id_ed25519/id_ed25519.pub
[2023-10-28 22:47:25.255285 +08:00] INFO [src/peer.rs:84] DB_URL=./db_v2.sqlite3
[2023-10-28 22:47:25.274615 +08:00] INFO [src/rendezvous_server.rs:98] serial=0
[2023-10-28 22:47:25.274626 +08:00] INFO [src/common.rs:46] rendezvous-servers=[]
[2023-10-28 22:47:25.274629 +08:00] INFO [src/rendezvous_server.rs:100] Listening on tcp/udp :21116
[2023-10-28 22:47:25.274631 +08:00] INFO [src/rendezvous_server.rs:101] Listening on tcp :21115, extra port for NAT test
[2023-10-28 22:47:25.274632 +08:00] INFO [src/rendezvous_server.rs:102] Listening on websocket :21118
[2023-10-28 22:47:25.274643 +08:00] INFO [libs/hbb_common/src/udp.rs:35] Receive buf size of udp [::]:21116: Ok(212992)
[2023-10-28 22:47:25.274667 +08:00] INFO [src/rendezvous_server.rs:137] mask: None
[2023-10-28 22:47:25.274671 +08:00] INFO [src/rendezvous_server.rs:138] local-ip: ""
[2023-10-28 22:47:25.274675 +08:00] INFO [src/common.rs:46] relay-servers=[]
[2023-10-28 22:47:25.274699 +08:00] INFO [src/rendezvous_server.rs:154] ALWAYS_USE_RELAY=N
[2023-10-28 22:47:25.274716 +08:00] INFO [src/rendezvous_server.rs:186] Start

启动注册服务器,执行 ./hbbr

1
2
3
4
5
6
root@VM-8-4-ubuntu:~/amd64# ./hbbr 
[2023-10-28 22:48:16.046008 +08:00] INFO [src/relay_server.rs:60] #blacklist(blacklist.txt): 0
[2023-10-28 22:48:16.046754 +08:00] INFO [src/relay_server.rs:75] #blocklist(blocklist.txt): 0
[2023-10-28 22:48:16.046816 +08:00] INFO [src/relay_server.rs:81] Listening on tcp :21117
[2023-10-28 22:48:16.046818 +08:00] INFO [src/relay_server.rs:83] Listening on websocket :21119
[2023-10-28 22:48:16.046831 +08:00] INFO [src/relay_server.rs:86] Start

服务后台运行

最简单的方式,采用screen 维持服务后台运行!

官方推荐采用PM2来维持后台运行。对于一般不是搞技术的童鞋来说。这样又得安装其他一堆内容!

1,安装nodejs,参考历史文章:【小白教程】nodejs安装教程指南 建议采用NVM方式安装nodejs 且nodejs 必须 v16+

2,执行 nvm install pm2 -g 全局安装PM2

3, 分别执行命令,启动俩个服务

1
2
pm2 start hbbs 
pm2 start hbbr

4,执行 pm2 list 可看见2个服务运行情况

5,服务开机启动(如果需要)

1
2
3
#设置开机启动
pm2 startup
pm2 save

可执行文件所在目录,cat id_ed25519.pub 文件 即可获取KEY!

img

Windows

下载地址:https://github.com/rustdesk/rustdesk-server/releases/

选择适合Windows部署的编译后软件下载解压!

解压后直接运行安装:RuetDeskServer.Setup.exe 程序

img

选择安装目录,稍等一会就安装完成!

img

img

安装完成后,直接启动程序RustDeskServer,菜单栏 - Service -Start 实现hbbs 和 hbbr 俩个服务的启动!

img

服务启动成功后,可以关闭主窗口。右下角可以针对服务进行启动停止管理。无需再利用NSSM维护服务后台运行了。

img

获取KEY,在程序安装目录中可见一个 id_ed25519.pub 文件。打开复制里面内容即可使用。

img

Docker

Docker部署更简单!首先你的服务器需要安装Docker服务。参考历史文章:【小白教程】Docker安装使用教程,以及常用命令!

直接执行下面三行命令即可完成服务部署!

1
2
3
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 -td --net=host rustdesk/rustdesk-server hbbs
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -td --net=host rustdesk/rustdesk-server hbbr

在root账户目录中会有一个 id_ed25519.pub 文件。没错,这就是KEY!如果你是非root用户执行,在用户工作目录查找这个文件即可!

Docker Compose

官方还提供了Docker Compose 配置信息的示例!如果童鞋服务器都是采用Docker Compose 配置管理服务,可参考下面配置修改!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
version: '3'

networks:
rustdesk-net:
external: false

services:
hbbs:
container_name: hbbs
ports:
- 21115:21115
- <hbbs_port>:21116 # 自定义 hbbs 映射端口
- <hbbs_port>:21116/udp # 自定义 hbbs 映射端口
image: rustdesk/rustdesk-server
command: hbbs -r <your_domain>:<hbbr_port> # 填入个人域名或 IP + hbbr 暴露端口
volumes:
- <mount_path>:/root # 自定义挂载目录
networks:
- rustdesk-net
depends_on:
- hbbr
restart: unless-stopped
deploy:
resources:
limits:
memory: 64M

hbbr:
container_name: hbbr
ports:
- <hbbr_port>:21117 # 自定义 hbbr 映射端口
image: rustdesk/rustdesk-server
command: hbbr
volumes:
- <mount_path>:/root # 自定义挂载目录
networks:
- rustdesk-net
restart: unless-stopped
deploy:
resources:
limits:
memory: 64M

客户端

官方提供下载地址:https://github.com/rustdesk/rustdesk/releases/

Windows

Windows版本双击运行后,可看见左下角红色提醒!我们点击安装!

img

img

安装完成后,左下角提醒就消失了!

img

设置自建服务器,左侧 ID 旁边 单击 三个竖点,设置 - 网络 - ID/中继服务器

ID 服务器填写 服务器IP

Key 填写部署服务生成的 id_ed25519.pub 文件中的内容

img

Android

将官方的APK文件复制到手机上!直接安装App即可。

需要针对RustDesk App 需要开启授权!下面2图是小米手机授权过程!

不同的手机可能略有不同!童鞋自行搜索!

主要权限有 屏幕录制,输入控制

img

img

设置 - ID/中继服务器

ID 服务器填写 服务器IP

Key 填写部署服务生成的 id_ed25519.pub 文件中的内容

img

远程协助

前提,主控制 和 被控制 必须在同一个ID服务器内!!

依Windows界面为例!

左侧ID 和 一次性密码 信息谨慎提供给别人,对方通过这些信息就可以远程控制你的电脑了!

需要控制其他人电脑或者手机,需要将对方的ID 和 密码 输入即可!

img

下面为电脑控制Andrond的效果!非常流畅!

img

最后总结

1,安卓被控,基础屏幕共享功能需要安卓6及以上版本,共享手机系统内部音频需要安卓10及以上版本。

2,IOS尚不支持屏幕共享。

3,网络带宽问题,被控传输1080P视频需要的带宽在3Mbps到9.5Mbps之间,建议使用5Mbps及以上的带宽。

4,网络流量问题,被控传输1080P视频每分钟大约消耗150MB左右。1小时约9G流量。如果你的服务器有流量限制,一定要留意。

5,本文仅介绍了软件的基本使用!文字聊天,语音电话,传输设置等等功能,不多介绍。大家用到的时候参考官网。或者本文留言。