操作系统应用开发(九)RustDesk远程桌面介绍——东方仙盟筑基期
RustDesk:开源远程桌面的得力助手
RustDesk 是一款闪耀着开源之光的远程桌面软件,以其卓越的性能和丰富的功能,为远程控制领域带来了新的活力。
从开源角度来看,RustDesk 基于 GPLv3 协议,代码完全开放。这就像是打开了一座知识宝库的大门,开发者可以自由地审查代码逻辑,清楚地了解软件的每一个细节,彻底杜绝了后门风险。而且,它支持用户自建服务器,让用户能够进行私有化部署。就如同在自己的领地内建立了一座坚固的城堡,所有的数据流量都被牢牢掌控,不会有任何外泄的风险。不仅如此,RustDesk 还提供了 SDK 接口,具备深度定制能力,支持二次开发。比如,企业可以将其与 OA 审批流集成,满足个性化的业务需求。
全平台支持
在远程桌面应用方面,RustDesk 的表现同样出色。它支持 Windows、macOS、Linux、Android、iOS、Web 等多个平台。无论你使用的是何种设备,都能轻松通过 RustDesk 实现远程连接,仿佛搭建了一座跨越不同设备类型的桥梁,让远程操作畅通无阻。在远程办公场景中,员工可以在家中通过 RustDesk 访问公司电脑,进行日常工作。在远程技术支持领域,IT 支持人员能够借助 RustDesk 迅速远程访问用户电脑,快速定位并解决故障。教育机构也能利用 RustDesk 进行远程教学和培训,教师可以远程展示教学内容,与学生互动。
远程集成
RustDesk 的自己集成优势明显。它提供了 REST API,能够与 Jenkins、Ansible 等 DevOps 工具无缝集成。这就如同为软件配备了一套智能的连接器,使其可以轻松融入到各种复杂的 IT 系统中。同时,RustDesk 还支持审计日志与 Syslog 集成,满足等保 2.0 合规要求,为企业应用提供了有力的安全保障。
总之,RustDesk 以其开源的特性、强大的远程桌面应用功能和出色的自集成优势,无论是对于个人用户还是企业用户,都是一款不可多得的远程控制软件,为人们的工作和生活带来了极大的便利
服务端下载客户端下载-东方仙盟
官方开源地址:服务端+客户端
- Main Client Repository: https://github.com/rustdesk/rustdesk
- Open Source Server Repository: https://github.com/rustdesk/rustdesk-server
- Pro Server Repository: https://github.com/rustdesk/rustdesk-server-pro
- Documentation Repository: https://github.com/rustdesk/doc.rustdesk.com
网页远程控制电脑
远程集群
服务端
自定义客户端
使用您的品牌定制客户端,使其真正属于您。
您的品牌,您的方式
个性化 RustDesk 客户端,使用您的名称、图标和标志。
轻松部署
内置网络配置和服务器设置使在本地部署 RustDesk 变得轻而易举。
高级配置选项
超过 90 个选项可以配置以满足您的特定需求。
多平台支持
Windows、macOS、Linux、Android。
Web 客户端
在您的服务器上托管 Web 客户端,使用您的域名,使远程访问更加便
Self-host
If you are using RustDesk you should have your own RustDesk Server, these docs will help you on your RustDesk journey.
Support is available via our Discord for OSS and email for Pro.
How does self-hosted server work?
There are technically two executables (servers):
hbbs
- RustDesk ID (rendezvous / signaling) server, listen on TCP (21114
- for http in Pro only,21115
,21116
,21118
for web socket) and UDP (21116
)hbbr
- RustDesk relay server, listen on TCP (21117
,21119
for web socket)
When you install via installation script / docker compose / deb, the two services will be both installed.
Here is illustrations of how RustDesk client communicates with hbbr
/ hbbs
.
As long as RustDesk is running on a machine, the machine constantly pings the ID server (hbbs
) to make its current IP address and port known.
When you start a connection from computer A to computer B, computer A contacts the ID server and requests to communicate with computer B.
The ID server then attempts to connect A and B directly to each other using hole punching.
If hole punching fails, A will communicate with B via the relay server (hbbr
).
In the majority of cases, hole punching is successful, and the relay server is never used.
Here is a discussion about Should you self-host a rustdesk server?
Ports Required
Ports required for RustDesk Server self-hosting depends largely on your environment and what you want to do with RustDesk. The Examples shown throughout the docs will generally have all ports suggested to be opened.
Core Ports:
TCP 21114-21119
UDP 21116
The above 21115-21117
are the minimum required ports for RustDesk to work, these handle the signal and relay ports as well as NAT traversal.
TCP ports 21118
and 21119
are the WebSocket ports for the RustDesk Web Client, you need a reverse proxy to make it support HTTPS, please refer this sample Nginx configuration.
For Pro users without an SSL Proxy you will need to open TCP port 21114
for the API to work alternatively using an SSL Proxy open TCP port 443
.
阿雪技术观
让我们积极投身于技术共享的浪潮中,不仅仅是作为受益者,更要成为贡献者。无论是分享自己的代码、撰写技术博客,还是参与开源项目的维护和改进,每一个小小的举动都可能成为推动技术进步的巨大力量
Embrace open source and sharing, witness the miracle of technological progress, and enjoy the happy times of humanity! Let's actively join the wave of technology sharing. Not only as beneficiaries, but also as contributors. Whether sharing our own code, writing technical blogs, or participating in the maintenance and improvement of open source projects, every small action may become a huge force driving technological progrss.