type
status
date
slug
summary
tags
category
icon
password
如需技术支持,请点击 👉 联系方式
1、介绍
RustDesk 是一款远程桌面开源软件,可以将服务端部署到自己的服务器上进行使用。
博主先前帮海外的朋友处理问题时,无论是使用 Todesk 、向日葵抑或是 TeamViewer,速度和稳定性都比较差,比如说 Todesk 检测到你连接的是海外 IP 时会要求你进行付费,不然连接速度要么很慢要么每隔几分钟就会主动断开你的连接。
RustDesk 对硬件(CPU 内存)和带宽的要求很低,即使是最低配置的云服务器都可以使用。
关于网络传输,如果 TCP 打洞直连失败就会使用中继服务器的流量进行传输,一个中继连接的流量在 30K-3M 每秒之间(1920x1080 分辨率),具体取决于清晰度设置和画面变化,如果只是办公需求则带宽只需 100K/s 左右,非常低。
即使没有云服务器,也可以将 RustDesk 部署到 Unraid 上提供远程桌面的中转服务,本文将介绍在Unraid 和云服务器部署的流程。
经博主测试,将 RustDesk 服务端部署到云服务器后,在内地通过客户端可以流畅的操作在香港的 PC ,无论是图像画质还是速度都十分优秀,可以完美平替市场上常见的远程工具。
RustDesk 服务端由两部分组成:
- hbbs - RustDesk ID 注册服务器(RustDesk ID/Rendezvous server)
- hbbr - RustDesk 中继服务器(RustDesk Relay server)
手机端(Android)效果
PC(Win)端效果.
其他效果
2、在 Unraid 上部署 RustDesk
Unraid 上的部署十分简单,在 CA 应用市场搜索
rustdeskserver-aio
:由于此 CA 模板没有中文注释,可能有些朋友不清楚相关设置的内容,因此博主对此 CA 模板进行修改并添加了中文注释,你可以通过以下命令获取到博主的 CA 模板:
博主已经在模板中设置好相应的默认参数,一般来说大家直接使用即可不用修改,对于高级用户请根据需要进行调整:
关于 -k
参数:禁止服务器被匿名使用
-k
参数的作用是禁止没有使用服务端公钥 Key 的用户建立非加密连接,防止他人匿名使用部署的 RustDesk 服务器。Key 是 RustDesk 服务器的公钥文件,第一次运行之后会自动生成,保存在配置文件夹
/mnt/user/appdata/rustdeskserver-aio
下,可以通过容器日志获取到 Key 的值:关于端口的说明
默认情况下: hbbs(ID 注册服务器)监听21115(tcp)
,21116(tcp/udp)
,21118(tcp)
端口。 hbbr(中继服务器)监听21117(tcp)
,21119(tcp)
端口。
网页端需要使用专业版(需授权,收费),如果不需要网页客户端(21118,21119)支持,对应端口可以不开。
服务端 | 端口 | TCP / UDP | 用途 |
HBBS | 21115 | TCP | NAT类型测试 |
HBBS | 21116 | TCP + UDP | TCP 打洞与连接服务/UDP ID注册与心跳服务 |
HBBR | 21117 | TCP | 中继服务 |
HBBS | 21118 | TCP | WebSocket 服务(为了支持网页客户端) |
HBBR | 21119 | TCP | WebSocket 转发(为了支持网页客户端) |
外网访问
如果你需要外网访问,需要在路由器/防火墙端做好端口转发或者放行,例如 iKuai 暴露 RustDesk 所需要的端口:
3、使用方法
RustDesk 部署完之后,到官方 Github 中下载客户端:
如果你连接不上 Github,也可以到作者的软件库中下载:
安装好后打开客户端设置服务器地址和公钥 Key :
- ID 服务器(RustDesk ID/Rendezvous server):输入域名或者IP地址,并加上端口号 21116,例如
rustdesk.hello.com:21116
。
- 中继服务器(RustDesk Relay server):输入域名或者IP地址,并加上端口号 21117,例如
rustdesk.hello.com:21117
。
- Key:公钥文件可以通过容器的日志获取。
设置完成后即可进行远程连接。
4、云服务器部署方法
云服务器依然使用的 Docker 部署,如果你的云服务器还没安装 Docker,可以使用以下命令安装:
在云服务器上依然可以部署与 Unraid 一样的 Docker,但本章节我们依照官方提供的资料来进行部署,按照官方提供的标准方式进行操作,这样大家排查问题或者找资料也方便一点。
在云服务器上,需要部署两个 Docker 容器(ID 注册服务器 + 中继服务器),方法如下:
- 拉取镜像:
- 创建文件夹存储配置文件:
- 创建 hbbs 和 hbbs 容器:
请将下面的www.hello.com:21116
替换成你的域名或者 IP ,并加上端口号。
创建 hbbs(ID 注册服务器容器):
创建 hbbr(中继服务器容器):
- 获取公钥文件内容:
如果需要修改 Key 的值,只需要直接删除RustDesk
文件夹下的id_xxxx.pub
文件,然后重启 Docker 容器即可。
- 放行端口:请在你的云服务器后台或者防火墙中放行所用到的端口号,否则外部可能无法访问。
经过上述步骤即可完成部署。
5、其他
常用 Docker 命令:
查看容器日志
停止容器
重启容器
删除容器
需要先停止容器之后才能删除。
查看镜像
删除镜像
删除镜像之前需要先停止、删除 Docker 容器。
- 作者:JackieWu
- 链接:https://www.jackiewu.top/article/RustDesk
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。