RustDesk 完整部署教程:支持 Web 管理后台和网页客户端远程,保姆级教学来了!

RustDesk API本项目使用 Go 实现了 RustDesk 的 API,并包含了 Web Admin 和 Web 客户端。RustDesk是一个远程桌面软件,提供了自托管的解决方案,官方API是收费的,这次咱们用到的是Github开源的第三方API源码。

✅特性

  • PC端API

    • 支持 github , google OIDC 登录,

    • 支持 web后台 授权登录

    • 支持 LDAP (AD和OpenLDAP已测试), 如果API Server配置了LDAP

    • 个人版API

    • 登录

    • 地址簿

    • 群组

    • 授权登录

    • i18n

  • Web Admin

    • 用户管理

    • 设备管理

    • 地址簿管理

    • 标签管理

    • 群组管理

    • Oauth 管理

    • 配置LDAP, 配置文件或者环境变量

    • 登录日志

    • 链接日志

    • 文件传输日志

    • 快速使用web client

    • i18n

    • 通过 web client 分享给游客

    • server控制

  • Web Client

    • 自动获取API server

    • 自动获取ID服务器和KEY

    • 自动获取地址簿

    • 游客通过临时分享链接直接远程到设备

    • v2 Preview

  • CLI

    • 重置管理员密码

Docker部署

飞牛 Compose方式部署代码

1️⃣我们需要先创建一个路径,这个路径储存我们的docker-Compose.yml的文件和配置文件

2️⃣打开Docker,Compose新增项目->输入项目名称->设置路径->上传或者创建docker-
compose.yml把下面代码复制进去,点击完成直至构建完成

🐳Docker compose

networks:rustdesk-net:external: falseservices:rustdesk:ports:- 21114:21114- 21115:21115- 21116:21116- 21116:21116/udp- 21117:21117- 21118:21118- 21119:21119image: lejianwen/rustdesk-server-s6:latestenvironment:- RELAY=反代21117的域名:端口- ENCRYPTED_ONLY=1- MUST_LOGIN=N  # 是否必须登录才能远程- TZ=Asia/Shanghai- RUSTDESK_API_RUSTDESK_ID_SERVER=反代21116的域名:端口- RUSTDESK_API_RUSTDESK_RELAY_SERVER=反代21117的域名:端口- RUSTDESK_API_RUSTDESK_API_SERVER=反代21114的域名:端口- RUSTDESK_API_RUSTDESK_WS_HOST=反代21114的域名:端口- RUSTDESK_API_KEY_FILE=/data/id_ed25519.pub- RUSTDESK_API_JWT_KEY=    # jwt 为空不启用- RUSTDESK_API_JWT_EXPIRE_DURATION=   # jwt 为空不启用volumes:- ./data/rustdesk/server:/data- ./data/rustdesk/api:/app/data #将数据库挂载networks:- rustdesk-netrestart: unless-stopped

注意: 一定要仔细看注释,看注释,修改对应的域名,先跳到文章后面( 外网访问
)看看怎么使用lucky反代再回来部署,不然无法使用web网页端远程。

给大家看看我配置好的截图
![](https://i-blog.csdnimg.cn/img_convert/e7a1eeb004138e2a9c0c332113a10c2f.png

API后台使用

http://IP:21114

后台管理

以上地址访问API后台, 可以进行添加用户,设备管理等操作!

  • 默认管理员用户名为:admin

  • 通过容器日志获取管理员密码,自己查看日志往下翻,找到如下图的内容就是密码

    登录后可以修改一下用户名和密码

2. 客户端使用

配置21114端口的API后,客户端登录即可同步登录账号的信息。

外网访问

外网访问需要有公网,我家是ipv6,所以需要配合域名使用,通过lucky进行DDNS然后再反向代理,通过域名配置客户端,并且进行访问。

如果不使用网页端远程只反代21114、21116、21117端口就行

如果需要web网页端远程就需要反代21118端口和21119端口,注意,21118和21119端口反代的前端域名要与21114使用的一样,并且反代的前端地址一定要带详细地址,必须要按照我说的来,不然网页远程不了,会报错,具体设置如下

21118端口:(前端:21114地址/ws/id) ‍

21119端口 : (前端:21114地址/ws/relay )

看图已经很明了了,如果还不懂,就私信问我吧,这里弄好了再返回到上面配置compose部署代码,部署就行了。

配置客户端

配置客户端之前先去容器查看日志获取key


下载安装客户端

去官网下载对应设备的客户端,我以Windows为例

无法访问github的朋友公众号回复: 远程 获取Windows版网盘下载地址,我会持续更新

# 下载地址
https://github.com/rustdesk/rustdesk/releases


控制端和受控端都需要安装RustDesk,双击下载的exe文件打开就是这个界面,需要点击左边的安装才能完全安装完成

配置ID/中继服务器

1️⃣点击右上角设置


2️⃣选择网络,点击解锁网络设置

3️⃣控制端和受控端都需要设置ID/中继服务器

  • ID服务器: 填入21116端口反代的域名不加端口

  • 中继服务器 : 填入21117端口 反代的域名 不加端口

  • API服务器 : 填入21114端口 反代的域名:端口

  • key : 前面日志里面获取的key

✅ 前面两个开头不要加https或http也不要加端口,切记千万不要加端口,否则连接不上,API需要加https或http

💥再次重申ipv6通过lucky反向代理的朋友,ID、中继服务器域名前面不要加https/http,域名后面也不要加端口,API服务器需要加https/http和端口
,参考 如下图

使用方法

使用方法和向日葵、ToDesk一样,知道ID和密码就能远程连接,也可以通过登录账号后同步自己的设备,设置自定义密码直接连接

登录成功

底部出现“就绪”才算成功,如果提示(提示未就绪,请检查网络连接)请检查前面第三步重申的内容

如果登录账号后看不到设备,点击设置->常规,停止服务,再开启服务就行了

网页端

网页端远程访问,最直接的就是访问下面的地址,点击 右上角三个点点,网络配置一下中继服务器,和pc端方法一样,然后登录账号或者直接输入对方的ID远程

21114端口反向代理域名/webclient2/

或者直接访问21114端口反向代理的域名,登录到后台,点击我的设备-> Web Clien 快速访问

APP客户端

APP配置如下

总结

这篇文章部署教程算是详细的了,没有缺斤少两,教程其实很简单,只要你认真看完,百分百能实现web管理、web远程,不会有任何问题,我已经这样使用很久了,使用op软路由拨号的,总是会有问题通讯不上特别是有V4公网的,直接使用DDNS吧,别反代,我是小米路由器,开启了DMZ,通不上的可以试试看。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/bicheng/90790.shtml
繁体地址,请注明出处:http://hk.pswp.cn/bicheng/90790.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

​​GOFLY LIVE CHAT:Golang製オープンソース・ライブチャットシステム​

以下是为日本技术受众优化的日语版介绍文章,采用IT行业惯用术语和简洁表达: ​​GOFLY LIVE CHAT:Golang製オープンソース・ライブチャットシステム​​ ​​現代的なカスタマーサポートのための高性能ソリューション​​ GOFLY LIVE CHATは…

ISIS GR实验案例

一、实验拓扑路由器R1和R2都为双主控设备,主用板和备用板间形成备份关系。路由器间通过IS-IS协议实现网络互连,并提供GR机制。要求当R1通过GR方式重启IS-IS进程或者进行主备倒换时转发不中断。1、基础配置AR1 system sysname AR1 int g 0/0/0 ip add 10.…

智慧农业病虫害识别准确率↑32%:陌讯多模态融合算法实战解析

原创声明本文为原创技术解析,核心技术参数与架构设计引用自《陌讯技术白皮书》,禁止未经授权的转载与篡改。一、行业痛点:智慧农业的识别困境智慧农业中,作物病虫害的精准识别是实现精准植保的核心,但田间复杂环境始终…

# JsSIP 从入门到实战:构建你的第一个 Web 电话

前言 欢迎来到实时通信(Real-Time Communication, RTC)的世界!如果你是一名 JavaScript 开发者,渴望让你的 Web 应用拥有语音通话、视频聊天甚至即时消息的能力,那么你来对地方了。这本书是为你量身打造的指南&#x…

【RHCSA 问答题】第 12 章 安装和更新软件包

目录什么是 RPM?dnf 是什么,它和 rpm 有什么联系和区别?如何设置禁止直接远程登录 root 账户?RHEL 中如何做才能启用对第三方存储库的支持?怎么理解 RHEL9 中的应用流(Application Streams)和模块(Modules)&#xff1f…

GEO优化实战:如何在DeepSeek、豆包等AI平台抢占推荐位?

在当今竞争激烈的 AI 领域,GEO 优化在抢占 AI 平台推荐位上的重要性日益凸显。各大平台都在为优质内容和企业争取更好的展示机会,与此同时,一个现象引发了众人关注:众多企业大力推荐天津诚智未来公司,这背后究竟隐藏着…

机器学习——随机森林算法分类问题案例解析(sklearn)

1. 集成学习:三个臭皮匠,如何赛过诸葛亮?我们之前学习的线性回归、决策树等算法,就像是团队里的某一位“专家”。这位专家可能在某个领域很擅长,但单凭他一人,要解决复杂多变的问题,总会遇到瓶颈…

Mermaid流程图

手动画流程图太复杂了,用极少的字符生成图表是人生的梦想。 Mermaid Chart - Create complex, visual diagrams with text. A smarter way of creating diagrams. Linux开始菜单流程图 flowchartA(["StartMenu"]) --> B["/usr/share/applicati…

Compose笔记(三十八)--CompositionLocal

这一节主要了解一下CompositionLocal&#xff0c;CompositionLocal是Jetpack Compose中用于组件树内隐式数据传递的核心机制&#xff0c;其设计初衷是解决跨多层组件的数据共享问题&#xff0c;避免通过函数参数逐层传递数据。简单总结:API: (1)compositionLocalOf<T>创建…

解决uniapp 使用uview生成小程序包太大无法上传的问题

直接打包的插件内容优化后完美上传&#xff0c; 相信眼尖的小伙伴已经发现了问题的关键 uview 会在每个组件里重复引css。导致包太大。 并且 它的格式是 data-v-哈希 没法简单的处理 需要压缩通用规则。然后 再引用压缩后的规则例如是然后 成功上传

在线工具+网页平台来学习和操作Python与Excel相关技能

&#x1f517;一、在线平台推荐&#xff08;免安装&#xff09; ✅Python平台&#xff08;直接写代码、跑结果&#xff09;&#xff1a; 平台 优点 地址 Google Colab 免费&#xff0c;支持图表和文件操作&#xff0c;最推荐 https://colab.research.google.com …

R Excel 文件处理指南

R Excel 文件处理指南 引言 R语言作为一种强大的统计计算和图形展示工具&#xff0c;在数据分析领域有着广泛的应用。而Excel作为办公软件的佼佼者&#xff0c;在数据记录和计算中也扮演着重要的角色。本文旨在介绍如何使用R语言处理Excel文件&#xff0c;包括读取、写入以及数…

亿级流量短剧平台架构演进:高并发场景下的微服务设计与性能调优

一、短剧系统概述与市场背景短剧作为一种新兴的内容形式&#xff0c;近年来在移动互联网领域迅速崛起。根据最新市场数据显示&#xff0c;2023年中国短剧市场规模已突破300亿元&#xff0c;用户规模达到4.5亿&#xff0c;平均每日观看时长超过60分钟。这种爆发式增长催生了对专…

4G手机控车模块的核心功能与应用价值

4G手机控车模块是基于4G无线通信技术实现车辆远程监控、控制及数据交互的嵌入式设备。其核心功能包括通过4G网络实现高速数据传输&#xff08;支持TCP/IP协议&#xff09;、远程参数配置与设备管理、多网络制式兼容&#xff0c;集成GPS/北斗定位功能&#xff0c;可实时获取车辆…

【leetGPU】1. Vector Addition

问题 link: https://leetgpu.com/challenges/vector-addition Implement a program that performs element-wise addition of two vectors containing 32-bit floating point numbers on a GPU. The program should take two input vectors of equal length and produce a si…

瑞吉外卖学习笔记

TableField 作用: 当数据库中表的列名与实体类中的属性名不一致&#xff0c;使用TableField 使其对应 TableField("db_column_name") private String entityFieldName;exist 属性 : 指定该字段是否参与增删改查操作。 TableField(exist false) private String tempF…

RoPE:相对位置编码的旋转革命——原理、演进与大模型应用全景

“以复数旋转解锁位置关系的本质表达&#xff0c;让Transformer突破长度藩篱” 旋转位置编码&#xff08;Rotary Position Embedding, RoPE&#xff09; 是由 Jianlin Su 等研究者 于2021年提出的突破性位置编码方法&#xff0c;通过复数空间中的旋转操作将相对位置信息融入Tra…

震网(Stuxnet):打开潘多拉魔盒的数字幽灵

在科技飞速发展的今天&#xff0c;代码和数据似乎只存在于无形的数字世界。但如果我告诉大家&#xff0c;一段代码曾悄无声息地潜入一座受到严密物理隔离的核工厂&#xff0c;并成功摧毁了其中的物理设备&#xff0c;大家是否会感到一丝寒意&#xff1f;这不是科幻电影的情节&a…

一文读懂:到底什么是 “具身智能” ?

今天咱们来好好聊聊一个最近很火的一个技术话题——具身智能&#xff01; 这个词听起来是不是有点难懂&#xff1f;其实我们可以简单理解为&#xff1a;具身智能是具有身体的人工智能体。这样是不是会容易理解一些&#xff1f; 具身智能&#xff08;Embodied Intelligence&…

企业级区块链平台Hyperchain核心原理剖析

Hyperchain作为国产自主可控的企业级联盟区块链平台&#xff0c;其核心原理围绕高性能共识、隐私保护、智能合约引擎及可扩展架构展开&#xff0c;通过多模块协同实现企业级区块链网络的高效部署与安全运行。 以下从核心架构、关键技术、性能优化、安全机制、应用场景五个维度展…