时间轴
时间轴
2025-03-14
init
本文介绍了如何自建RustDesk远程桌面服务器,以替代ToDesk免费版的限制。文章详细描述了在Ubuntu上通过Docker部署ID/中继服务器的完整流程,包括安装Docker和docker-compose-plugin、编写docker-compose.yaml文件、开放所需端口等步骤;同时说明了在Windows客户端安装RustDesk后,配置ID服务器和中继服务器IP、填写key,并最终通过ID和密码实现远程连接的方法。该方案免费且帧率、分辨率均优于ToDesk免费版。
ToDesk使用了几天后因为一直没关机,在当月中旬用完了所有额度,不让继续免费使用了,直接卸载告别切换到RustDesk,使用自建服务器,免费而且帧率、分辨率都比ToDesk免费版高多了,下面是搭建的记录。
基本环境搭建
我使用的是两台Windows电脑(Win10)和一台Ubuntu(配置如下图),通过Ubuntu作为ID/中继服务器,让一台Windows连接到另一台Windows,Ubuntu需要安装Docker,两台Windows需要安装RustDesk并进行一些配置。
注意:我的三台机器是在同一局域网下的。

安装 Docker 和 docker-compose-plugin
参考:
安装完成后,可以把当前用户加入到docker用户组
1234567 | # 添加docker用户组,一般已存在,不需要执行sudo groupadd docker# 添加当前用户到docker用户组sudo gpasswd -a $USER docker# 更新用户组newgrp dockerdocker version |
docker-compose.yaml
参考官方文档:
如果开启了ufw,需要打开这些端口:
1234 | sudo ufw statussudo ufw allow 21115:21119/tcpsudo ufw allow 8000/tcpsudo ufw allow 21116/udp |
选一个目录用来存放ID/中继服务器数据:
123 | mkdir -p ~/rustdeskcd ~/rustdesktouch docker-compose.yaml |
下面是docker-compose.yaml文件,是上面的rustdesk官方文档的:
123456789101112131415161718192021 | services: hbbs: container_name: hbbs image: rustdesk/rustdesk-server:latest command: hbbs volumes: - ./data:/root network_mode: "host" depends_on: - hbbr restart: unless-stopped hbbr: container_name: hbbr image: rustdesk/rustdesk-server:latest command: hbbr volumes: - ./data:/root network_mode: "host" restart: unless-stopped |
然后启动:
12345 | docker compose up -d# 进入~/rustdesk/data文件夹中cd data# 查看keycat id_*.pub |
rustdesk安装配置
安装访问以下链接:
安装好后,打开网络设置,将ID/中继服务器的IP也就是跑Docker的那个服务器IP地址填写到ID服务器和中继服务器中,被控端可以不填写中继服务器,控制端建议填写,然后控制端填写key(上面data文件下的.pub文件的内容)。

最后输入被控端的ID和密码连接即可。