RustDesk 是一个开源的远程桌面控制软件,RustDesk 是提供一个安全、高效且易于使用的远程访问解决方案,类似于 TeamViewer、AnyDesk 或向日葵,但更注重隐私、可控性和开源透明性。
注:家里是NAT4网络且没有IPV6网络及公网中继服务器,可以直接放弃了,还不如装个向日葵来得直接。
NAT网络类型检测软件NatTypeTester32,自行搜索下载。家里不是桥接的话大概率是NAT4网络。
RustDesk有以下几 个使用部署方案:
1、家里非NAT4网络,配合tailscale等组网软件搭配使用基本,打洞成功率几乎100%。(最安全方案)缺点:控制的时候要打开两个软件 。
2、家里有IPV6网络,有自己的一个域名并做好DDNS绑定家里IPV6地址。缺点:在没有IPV6的场所无法使用。
3、有公网服务器,最简单便捷。缺点:暴露在公网有一定的风险。
一、家庭部署:需配合tailscale等组网软件使用
家庭服务器部署推荐rustdesk/rustdesk-server双容器方案,下面以极空间为例:

把以下代码复制粘贴到compose.yaml里。由于极空间不支持相对路径方式运行,导入后请自行查询后粘贴修改。
services:
hbbs:
container_name: hbbs
image: rustdesk/rustdesk-server:latest
command: hbbs
volumes:
- 【粘贴极空间查询到的路径】:/root
network_mode: "host"
depends_on:
- hbbr
restart: unless-stopped
hbbr:
container_name: hbbr
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- 【粘贴极空间查询到的路径】:/root
network_mode: "host"
restart: unless-stopped
进入极空间docker,compose新建界面点击查询路径,找到刚才创建的rustdesk下的data文件夹并点击复制路径。把它粘贴到代码里然后点击创建。
二、公网服务器部署推荐s6单容器版本
镜像rustdesk/rustdesk-server-s6:latest更稳定,适合长时间运行。
以1panel面板为例:
在文件管理进入/opt/1panel/docker/compose,创建rustdesk文件夹及compose.yaml文件,把以下代码复制到compose.yaml
version: '3'
services:
rustdesk-server:
container_name: rustdesk-server
ports:
- 21115:21115
- 21116:21116
- 21116:21116/udp
- 21117:21117
image: rustdesk/rustdesk-server-s6:latest
environment:
- "RELAY=【你的域名或IP】:21117"
- "ENCRYPTED_ONLY=1"
volumes:
- ./data:/data
restart: unless-stopped
来到“容器”点击编排,创建编排>粘贴compose.yaml路径即可。
防火墙设置
防火墙放行TCP:21115-21117,UDP:21116
端口说明:
hbbs
:21114
(TCP): 用于网页控制台,仅在付费Pro
版本中可用。21115
(TCP): 用于 NAT 类型测试。21116
(TCP/UDP): 请注意21116
应该同时为 TCP 和 UDP 启用。21116/UDP
用于 ID 注册和心跳服务。21116/TCP
用于 TCP 打洞和连接服务。21118
(TCP): 用于支持网页客户端。
hbbr
:21117
(TCP): 用于中继服务。21119
(TCP): 用于支持网页客户端。
如果您不需要网页客户端支持,可以禁用相应的端口 21118
、21119
。
三、客户端下载
客户端下载地址:https://github.com/rustdesk/rustdesk/releases/tag/1.4.0
根据自己的系统选择
四、客户端设置
家庭用户:
点击网络>>解锁网络设置>>ID服务器写入[你安装设备的IP]:21116,中继服务器写入[你安装设备的IP]:21117,key在刚创建的rustdesk>>data文件夹下的id_ed25519.pub文件里,极空间里无法打开,下载到本地用记事本打开。

控制端必须填KEY,被控端需填写ID服务器地址,无法P2P连接的情况要写入中继服务器。
公网服务器用户:
点击网络>>解锁网络设置>>ID服务器写入[指向你服务器的域名或服务器IP],中继服务器写入[指向你服务器的域名或服务器IP],key在刚创建的rustdesk>>data文件夹下的id_ed25519.pub文件里,在1panel文件管理里打开即可看见,公网用户不用写端口号,但要记得开放21115-21117及21116的UDP端口。注:填写域名不带http或https

总结
RustDesk是一款非常优秀的软件,待机状态下只占10M左右内存,几率可以忽略,关键是不像其它软件一样久不久弹个广告啥的,家里有PC的用户推荐人手一个。有公网服务器的用户都是老油条,家庭用户难免有小白用户,如果不会组网的话,下次我再写个tailscale的文章。