用Docker部署RustDesk远程桌面控制工具
现在不管是个人远程管理设备,还是团队日常协作运维,远程桌面工具都成了刚需。市面上的 TeamViewer 、 AnyDesk 、向日葵、 ToDesk 各有优势,可要么商用版价格不菲,要么免费版功能受限,还得依赖第三方服务器,数据安全总让人有点不踏实。
而开源免费的 RustDesk 正好能解决这些问题,它支持 Windows 、 MacOS 、 Linux 、安卓、苹果全平台使用,还能自建服务器,数据完全自己掌控,不用依赖第三方。和那些要么商用版收费贵、要么免费版功能受限的工具比起来,它按AGPLv3协议合规使用即可免费商用,直接用官方版本的话,没有额外开源义务,也没有连接时长、设备数量的限制,自带端到端加密,远程连接稳定又安全,不管是个人管理设备还是团队协作运维都够用。今天刘郎就把这款零成本、高实用的远程控制工具分享给大家。
RustDesk为堡塔公司中国大陆地区唯一的代理商,主要负责国内业务的运营和售后
RustDesk的部署
1.新建 RustDesk 文件夹
mkdir rustdesk2.进入 RustDesk 文件夹
cd rustdesk3.多容器编排部署
进入 RustDesk 文件目录后,在该目录下新建 docker-compose.yaml 文件,然后将以下代码复制到其中:
version: '3'
services:
hbbs:
image: rustdesk/rustdesk-server
container_name: rd-hbbs
restart: always
network_mode: "host"
volumes:
- ./hbbs:/root
command: hbbs -r 123.12.123.123 # 你的服务器IP
hbbr:
image: rustdesk/rustdesk-server
container_name: rd-hbbr
restart: always
network_mode: "host"
volumes:
- ./hbbr:/root
command: hbbr在部署 RustDesk 项目之前,记得先开放21115、21116(UDP+TCP)、21117、21118、21119端口,避免后续在运行 RustDesk 项目时无法正常运行:
① 21115端口(TCP):NAT类型测试,非必需,可不开
② 21116端口(TCP+UDP):TCP打洞、建立直接连接;UDP必须开,否则设备ID注册不上,连不了自建服务器,心跳保活,必需
③ 21117端口(TCP):核心中继数据传输,必需
④ 21118端口(TCP):网页客户端支持,不需要可不开
⑤ 21119端口(TCP):网页客户端支持,不需要可不开
如果仅用于基础远程控制,只需要放行 21116(TCP+UDP) 和 21117(TCP)即可。21115、21118、21119都属于可选端口,不影响核心远程功能,按需放行即可。
然后在 RustDesk 目录下打开命令行终端,执行以下命令:
docker-compose up -d4.访问 RustDesk 服务
运行成功后,在浏览器地址输入:http://<服务器IP地址>:21116(或其它开放端口),即可访问 RustDesk 服务。
但此时你会发现,页面会提示“ 无法访问此网站 ”。
其实这是正常的,因为 RustDesk 这个项目没有 Web 界面,所以不能用 http://<服务器IP地址>:21116(或其它开放端口) 访问,而需要使用客户端来访问。
RustDesk的下载和设置
1.下载 RustDesk 客户端
打开 RustDesk 客户端的下载地址,根据自己使用的设备,选择对应平台版本下载即可:
我这里就以PC端的Windows系统和移动端的iOS系统为例。
2.PC端 RustDesk 客户端的设置
下载完成之后,打开 RustDesk 程序,如果看到提示“ 你正在运行未安装版本,由于UAC限制,作为被控端…… ”点击“ 安装 ”即可:
安装完成之后,重新打开 RustDesk 程序,点击页面右上角的“ ≡ ”设置,然后点击左侧菜单栏的“ 网络 ”,“ 解锁网络设置 ”,接着点击展开“ ID/中继服务器 ”,依次填写“ ID服务器 ”、“ 中继服务器 ”和“ Key ”确认即可:
连接密钥Key的获取:
cat ./hbbs/id_ed25519.pub注意:该命令在服务器终端执行,且以第一次执行后出现的连接密钥Key值为准。(执行后,如果又忘记保存了,可以直接到 RustDesk 项目目录查看:/ RustDesk / id_ed25519.pub )
AyIX0HGaYe7SNz7fkoHdj54H62Rj5GVazkzvvC0SJpk=注意:连接密钥Key值是以“ = ”结尾
返回主页,看到“ 就绪 ”二字,PC端 RustDesk 客户端的设置就算设置成功了:
3.iOS移动端 RustDesk 客户端的下载和设置
① 下载
回到第1步:下载 RustDesk 客户端,打开 RustDesk 客户端的下载地址,选择iOS移动端下载:
② 设置
下载完成之后,打开软件开始进行iOS移动端 RustDesk 的配置:点击页面右下角的“ 设置 ”,然后在“ 设置 ”页面选择“ ID/中继服务器 ”:
操作与PC端一样,依次填写“ ID服务器 ”、“ 中继服务器 ”和“ Key ”确认即可:
注意:这里在填写“ API服务器 ”时,一定要添加“ https:// ”或“ http:// ”协议,否则连接会报错。
RustDesk的使用
在“ 连接 ”页面的顶部输入框里填入被控端(电脑或其他设备)的ID,点击“连接”后,输入被控端的密码,如果被控端没设置固定密码,就用它界面上显示的随机密码,设置过的话直接输固定密码就行,确认后就能成功建立远程连接。
连接成功后,操作逻辑和 TeamViewer 、向日葵这些主流的远程操控工具大同小异,都能实现远程控制、文件传输、剪贴板同步这些核心功能,比如电脑端可直接用鼠标键盘操作被控设备,手机端单指点击对应鼠标左键、长按是右键、双指拖动能移动鼠标,上手没难度。

配置得啥样,能满足日常需求哇
得看你个人的需求而定了 配置低了 项目带不动 玩啥都没意思 配置高了 也挺好 就是有点浪费资源罢了
懒得折腾的群辉用户可以直接使用“我不是矿神”源的rustdesk,一键安装使用,比docker版本好使。rustdesk就是手机端操作不舒服。
移动端操控确实需要点时间来适应 不然操作起来真的挺不舒服的
我曾经那么中意 todesk,后来它也变了。 inkss 倒是给我推荐过好几次 rustdesk,但是我嫌折腾就没搞。
有时候兴趣来了 我觉得越是麻烦 越是不好弄的项目 我越要去尝试 直到成功的那一刻 那种优越感 舒服 哈哈
做完高频使用远程操作我的我todesk,向日葵会员全开了🥹,客户就基本上这俩😓
按理说 开了向日葵会员的友友 远程操控基本稳了呀
我是用NPS/C,windows直接把3389端口映射出来,通过系统自带的远程桌面链接,速度也嘎嘎的。
这方法也不错
教程很详细,在NAS上部署一个!
目前使用下来 感觉还不错
个人没有用过,我们公司全部使用的是向日葵。
向日葵我也在用 部署这个项目也只是锦上添花罢
现在都在用微软的远程桌面服务,挺好用的
不论是那款工具 只要能满足自己的需求即可
请教一下,部署docker的设备需要有公网ip吗
好的,了解了,感谢
本地使用可以不用公网 但如果想要实现外网访问那就必须有外网环境
这个挺好,话说你不是使用文言文写文吗,技术文章都用白话?
(昵称不少于两个字符是什么规则,新加的吗)
遭老,行为准则被定向分析之后被问责了
作者试着用文言文写这个教程呢,那更没有人能看懂了
记录生活用文书 折腾记录用白话 哈哈 哦对了 这个昵称规则前两天改了一下 现在改回去了