1Panel自建RustDesk服务器方案实现Windows远程macOS
文章目录
- 缘起
- RustDesk 基本信息
- 实现原理
- 中继服务器的配置建议
- 中继服务器自建指南
- 准备服务器
- 安装1Panel
- 安装和配置 RustDesk 中继服务
- 防火墙配置和安全组配置
- 查看key
- 下载&安装&配置客户端
- 设置永久密码
- 测试连接
- macOS安装客户端提示finder写入失败
- hbbs和hbbr说明
- **hbbs - RustDesk ID 服务器**
- **hbbr - RustDesk 中继服务器**
- **使用建议**
缘起
设备繁多屏太少, 独用不便费周章。
综合共享更划算, VNC 延迟令人慌。
三方工具价高昂, 自建方案解愁肠。
中继自设稳如磐, 远程操控心不忙。
RustDesk 基本信息
- RustDesk 是一款开源的远程桌面软件,支持跨平台操作(Windows、macOS、Linux、Android、iOS 等)。它的核心特点是轻量、高效、安全,且支持自建中继服务器,确保用户数据的隐私和安全性。
实现原理
- P2P 连接:RustDesk 优先尝试通过 P2P(点对点)方式建立连接,这种方式延迟低、速度快。如果双方设备位于同一局域网或 NAT 穿透成功,则直接通过 P2P 传输数据。
- 中继服务器:如果 P2P 连接失败(例如由于 NAT 或防火墙限制),RustDesk 会通过中继服务器进行数据传输。中继服务器负责转发双方的通信数据,确保连接成功。
- 加密通信:所有数据传输都经过加密,确保通信的安全性。
中继服务器的配置建议
- 最低配置的 VPS 足以满足您的使用需求。服务器软件对 CPU 和内存的要求并不高。
- 我们托管在 Vultr 服务器(2 CPU/4 GB)上的公共 ID 服务器能够为超过 100 万个终端提供服务。每个中继连接平均消耗 180 KB/秒的带宽。
- 1 个 CPU 核心和 1G 内存足以支持 1000 个并发中继连接。
中继服务器自建指南
准备服务器
- 选择一台云服务器或物理服务器,确保其具备公网 IP 和足够的带宽(带宽要求很低,基本可以忽略不计)。
- 安装 Linux 操作系统(如 Ubuntu、CentOS 等)。
安装1Panel
- 1Panel安装指南地址,根据不同的系统执行响应的命令,安装过程配置相关要求,然后访问控制面板,使用设置的用户登录。
- 如果无法访问,请在防火墙服务器默认安全组中开放1panel面板的访问端口,类型为TCP类型
安装和配置 RustDesk 中继服务
防火墙配置和安全组配置
- 除了开放之前1Panel面板访问端口外,防火墙配置和安全组配置还需开放以下端口,两者必须都开放
- TCP端口:21115-21119
- UDP端口:21116
查看key
下载&安装&配置客户端
- 控制端和被控端都要安装客户端,配置内容相同
- rustdesk GitHub下载地址,需要魔法环境,或者能打开页面复制下载链接,使用代理加速网站下载
- 安装完成后,打开rust desk,配置完整安装(具体不再接受,打开你就能看到,软件提示很清楚)
- 配置中继服务器IP和Key,确定提示成功,首页显示就绪即可
设置永久密码
测试连接
macOS安装客户端提示finder写入失败
- 可能是安装包下载时损坏,重新下载安装即可
hbbs和hbbr说明
hbbs
和hbbr
是 RustDesk 的核心服务器组件,分别用于 ID 服务器和中继服务器的功能。
hbbs - RustDesk ID 服务器
-
hbbs
是 RustDesk 的 ID 服务器,负责设备的注册、发现和信令传输。它监听以下端口: -
TCP 端口:
- 21114:用于 HTTP 通信(仅在 Pro 版本中启用)。
- 21115:用于 TCP 通信。
- 21116:用于 WebSocket 通信。
- 21118:用于 WebSocket 通信。
-
UDP 端口:
- 21116:用于 UDP 通信。
hbbs
的主要功能包括:
- 管理设备的唯一 ID 和连接信息。
- 处理设备的注册和发现请求。
- 提供信令服务,帮助设备建立 P2P 连接。
hbbr - RustDesk 中继服务器
hbbr
是 RustDesk 的中继服务器,负责在无法建立 P2P 连接时转发数据。它监听以下端口:- TCP 端口:
- 21117:用于 TCP 通信。
- 21119:用于 WebSocket 通信。
hbbr
的主要功能包括:
- 在设备之间无法直接连接时,作为中继转发数据。
- 确保远程控制会话的稳定性和流畅性。
使用建议
-
端口开放:
- 确保服务器防火墙开放上述端口,以便客户端能够正常连接。
- 如果使用云服务器,还需在云服务商的安全组中开放这些端口。
-
性能优化:
hbbs
和hbbr
对资源要求较低,1 核 CPU 和 1GB 内存即可支持大量并发连接。- 根据实际需求调整服务器的带宽和性能配置。
相关文章:

1Panel自建RustDesk服务器方案实现Windows远程macOS
文章目录 缘起RustDesk 基本信息实现原理中继服务器的配置建议 中继服务器自建指南准备服务器安装1Panel安装和配置 RustDesk 中继服务防火墙配置和安全组配置查看key下载&安装&配置客户端设置永久密码测试连接 macOS安装客户端提示finder写入失败hbbs和hbbr说明**hbbs…...

STM32完全学习——使用定时器1精确延时
一、定时器的相关配置 首先一定要是递减定时器,递增的不太行,控制的不够准确,其次在大于10微秒的延时是非常准确的,小于的话,就没有那没准,但是凑合能用。误差都在一个微秒以内。使用高级定时器也就是时钟…...

深度学习——损失函数汇总
1. 连续值损失函数 总结:主要使用胡贝儿损失函数,应用于连续数值的预测之间的误差损失,参考地址 import torch import torch.nn as nna = torch.tensor([[1, 2], [3, 4]], dtype=torch.float) b = torch.tensor([[3, 5], [8, 6]], dtype=torch.float)loss_fn1 = torch.nn.M…...

1、单片机寄存器-io输入实验笔记
1、硬件 时钟总线如下: PB端口挂载在AHB1总线上,因此要对该位进行使能。 引脚 LED0和LED1挂载在PB0和PB1上:推挽输出、100M、 上拉默认高电平,低电平点亮。 2、软件 位带操作 #ifndef _IO_BIT_H_ #define _IO_BIT_H_#define …...

记忆旅游系统|Java|SSM|VUE| 前后端分离
【技术栈】 1⃣️:架构: B/S、MVC 2⃣️:系统环境:Windowsh/Mac 3⃣️:开发环境:IDEA、JDK1.8、Maven、Mysql5.7 4⃣️:技术栈:Java、Mysql、SSM、Mybatis-Plus、VUE、jquery,html 5⃣️数据库可…...
CentOS7下的 OpenSSH 服务器和客户端
目录 1. 在 IP 地址为 192.168.98.11 的 Linux 主机上安装 OpenSSH 服务器; 2. 激活 OpenSSH 服务,并设置开机启动; 3. 在 IP 地址为 192.168.98.22 的 Linux 主机上安装 OpenSSH 客户端,使用客户端命令(ssh、 scp、…...

RabbitMQ基础篇之Java客户端 Topic交换机
文章目录 Topic 交换机概述 Routing Key 与 Binding Key优缺点及场景优点缺点应用场景 案例演示创建队列和交换机:消费者代码:消息发送代码:测试: 总结 Topic 交换机概述 路由机制: Topic交换机与Direct交换机类似&am…...
微服务-Sentinel新手入门指南
微服务为什么要使用流控降级组件 为了提高系统运行期间的稳定性和可用性 在微服务环境下,服务之间存在复杂的调用关系,单个服务的故障或过载可能会迅速影响到整个系统,导致服务雪崩效应。流控组件可以限制进入系统的流量,防止系…...

传统听写与大模型听写比对
在快节奏的现代生活中,听写技能仍然是学习语言和提升认知能力的重要环节。然而,传统的听写练习往往枯燥乏味,且效率不高。现在,随着人工智能技术的发展,大模型听写工具的问世,为传统听写带来了革命性的变革…...
http性能测试命令ab
华子目录 使用方法常用选项示例输出解读注意事项 在 Linux系统中, ab( ApacheBench)是一个用于 测试HTTP服务器性能的 工具。它是 Apache HTTP服务器项目的 一部分,专门设计用来模拟 多个用户对 服务器发起 并发请求&am…...
前端:轮播图常见的几种实现方式
目录 前言 一、轮播图是什么? 二、实现方法 1.使用纯 HTML、CSS、JavaScript 实现 2.使用组件来快速实现 总结 前言 在学习前端的过程中,总是有要实现轮播图效果的时候,本文就介绍了轮播图常见的几种实现方式。 一、轮播图是什么?…...

Pytest基础01: 入门demo脚本
目录 1 Pytest接口测试 1.1 最简单版hello world 1.2 pytest.ini 2 pytest兼容unittest 3 封装pytest执行入口 1 Pytest接口测试 Pyest是一个可以用于接口测试的强大框架,开源社区也有非常多的pytest插件。 按江湖传统,学习一个新语言或者新框架&…...

ruoyi 多租户 开启后针对某一条sql不适用多租户; 若依多租户sql规则修改
文章参考:多租户功能 | Ruoyi-TDesign 忽略租户 1.如果需要指定单独 SQL 不开启过滤,可在对应的 Mapper 接口添加如下忽略注解: InterceptorIgnore(tenantLine "true", dataPermission "false") 此处注意事项 使…...

driftingblues6靶机
打开靶场 查看页面源代码,最下面有一个注释,提供了一个网址 vmlist.github.io,我们去访问一下 这里是一个github页面,提供攻防虚拟机的下载,对我们解题并没有什么有用的信息,我们再去扫描端口 发现只有80端…...

Neo4j GDS 2.0 安装与配置
Neo4j GDS 2.0 安装与配置 GDS插件安装:Neo4j官方文档 1. GDS简介 Neo4j Graph Data Science (GDS) 库作为 Neo4j Graph Database 的插件提供。该插件需要安装到数据库中并在 Neo4j 配置中列入白名单。有两种主要方法可以实现这一点,我们将在本章中详…...

A*算法与人工势场法结合的路径规划(附MATLAB源码)
A*算法与人工势场法(APF)结合实现路径规划 路径规划是机器人、无人机及自动驾驶等领域中的一个重要问题。本文结合了经典的 A* 算法与 人工势场法(Artificial Potential Field, APF),实现了一种改进的路径规划方法。下…...

BootstrapTable处理表格
需求背景 历史项目使用 BootstrapTable 作为前端组件 应客户需要调整: 冻结前四列对于大文本文字显示部分内容,鼠标悬浮显示完整内容 冻结列 1、引入相关CSS,JS CSS <link rel"stylesheet" href"/css/bootstrap.min.css"> …...
UniApp 打开文件工具,获取文件类型,判断文件类型
注意:以下代码使用 typeScript 开发,如果想在 js 中使用,可参考 npm 已经发布的包:https://www.npmjs.com/package/uni-easy-file NPM 使用 如果想直接在 npm 项目中使用可以直接执行以下命令 npm i uni-easy-file然后直接使用 …...

docker-开源nocodb,使用已有数据库
使用已有数据库 创建本地数据库 数据库:nocodb 用户:nocodb 密码:xxxxxx修改docker-compose.yml 默认网关的 IP 地址是 172.17.0.1(适用于 bridge 网络模式)version: "2.1" services:nocodb:environment:…...

Mysql COUNT() 函数详解
简介 COUNT()函数定义 COUNT()函数是SQL中常用的 聚合函数 ,用于统计满足特定条件的记录数。它可以灵活地应用于各种查询场景,帮助用户快速获取所需的数据统计信息。该函数不仅能够计算所有行的数量,还能针对特定列进行计数,并支…...

XML Group端口详解
在XML数据映射过程中,经常需要对数据进行分组聚合操作。例如,当处理包含多个物料明细的XML文件时,可能需要将相同物料号的明细归为一组,或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码,增加了开…...
挑战杯推荐项目
“人工智能”创意赛 - 智能艺术创作助手:借助大模型技术,开发能根据用户输入的主题、风格等要求,生成绘画、音乐、文学作品等多种形式艺术创作灵感或初稿的应用,帮助艺术家和创意爱好者激发创意、提高创作效率。 - 个性化梦境…...

CMake基础:构建流程详解
目录 1.CMake构建过程的基本流程 2.CMake构建的具体步骤 2.1.创建构建目录 2.2.使用 CMake 生成构建文件 2.3.编译和构建 2.4.清理构建文件 2.5.重新配置和构建 3.跨平台构建示例 4.工具链与交叉编译 5.CMake构建后的项目结构解析 5.1.CMake构建后的目录结构 5.2.构…...

visual studio 2022更改主题为深色
visual studio 2022更改主题为深色 点击visual studio 上方的 工具-> 选项 在选项窗口中,选择 环境 -> 常规 ,将其中的颜色主题改成深色 点击确定,更改完成...

【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...

如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...

让AI看见世界:MCP协议与服务器的工作原理
让AI看见世界:MCP协议与服务器的工作原理 MCP(Model Context Protocol)是一种创新的通信协议,旨在让大型语言模型能够安全、高效地与外部资源进行交互。在AI技术快速发展的今天,MCP正成为连接AI与现实世界的重要桥梁。…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

通过 Ansible 在 Windows 2022 上安装 IIS Web 服务器
拓扑结构 这是一个用于通过 Ansible 部署 IIS Web 服务器的实验室拓扑。 前提条件: 在被管理的节点上安装WinRm 准备一张自签名的证书 开放防火墙入站tcp 5985 5986端口 准备自签名证书 PS C:\Users\azureuser> $cert New-SelfSignedCertificate -DnsName &…...