当前位置: 首页 > article >正文

【补充】RustDesk一键部署及账号登录配置

前言

之前分享的配置rustdesk的帖子只是搭建了一个简易服务器,仅能实现简单的远程桌面功能。在后续的使用中切换设备使用时无法看到之前连接的设备,必须知道每个设备的id号,才能在新设备上连接。数据无法在设备间迁移,感觉很麻烦。而官方将账号登录的功能放到了专业版里,普通的自建服务器想实现账号管理只能另想办法。

好在网上有一些大佬自建了rustdesk-api服务器项目,本文测试了网上的一些方法,统一整理了一个简单搭建方案作为补充。另外还整理了傻瓜式搭建rustdesk服务器的方法。

参考资料:
https://github.com/lejianwen/rustdesk-api
https://github.com/lejianwen/rustdesk-api/pkgs/container/rustdesk-api
文章目录
  • 前言
  • windows一键部署
    • 1、RustDesk
        • · 下载安装包
        • · 运行
            • a. 解压文件
            • b. 运行前需要安装node.js
            • c. 安装pm2
            • d. 运行hbbr和hbbs
    • 2、API
        • · 下载安装包
        • · 运行
            • a. 解压安装包
            • b. 编辑配置文件
            • c. 双击运行apimain.exe
            • d. 访问后台
  • Linux一键部署
    • 1、RustDesk
        • · 下载安装包
        • · 运行
    • 2、API
        • · 下载安装包
        • · 运行
            • a. 编辑配置文件
            • b. 执行`apimain`
            • c. 访问后台
  • Linux的docker安装
    • RustDesk
    • API
        • · 拉取镜像(需要能访问国外网站)
        • · 使用docker-compose安装
        • · 运行docker
        • · 访问后台
  • 后续登录配置
    • 若想使用github绑定登录账号,需要配置oauth
        • · GitHub创建oauth apps
        • · api后台创建oauth
        • · 配置完后就可以使用GitHub绑定账号进行授权登录了
  • 解决登录账号后连接慢的问题
    • 4种解决方案
        • 1、server端指定key。
        • 2、server端使用系统生成的key,或者自定义的密钥对,但如果client已登录,链接时容易超时或者链接不上,可以退出登录后再链接就可以了,webclient可以不用退出登录
        • 3、server端使用系统生成的key,或者自定义的密钥对,fork官方客户端的代码将secure_tcp修改成直接返回,然后通过Github Actions编译,下载编译后的客户端。 参考官方文档
        • 4、使用编译好的客户端,操作简单
  • 有问题可以评论或者私信(=.=)

windows一键部署

下载文件需要能访问国外网站

1、RustDesk

· 下载安装包

下载地址:windows-x86_64.zip

· 运行
a. 解压文件

在这里插入图片描述

b. 运行前需要安装node.js

下载地址:Node.js

c. 安装pm2

打开cmd,输入下列命令

npm install -g pm2
npm install pm2-windows-startup -g
pm2-startup install
d. 运行hbbr和hbbs

在解压后的文件目录下打开cmd

cd C:
ustdesk-server-windows-x64
pm2 start hbbs.exe
pm2 start hbbr.exe
pm2 save	#保存PM2,开机自启

查看运行状态

pm2 list

2、API

· 下载安装包

下载地址:Releases · lejianwen/rustdesk-api

· 运行
a. 解压安装包

在这里插入图片描述

b. 编辑配置文件

在这里插入图片描述

记事本或其他文本编辑器打开config.yaml

lang: "zh-CN"
app:
  web-client: 1  # 1:启用 0:禁用
gin:
  api-addr: "0.0.0.0:21114"
  mode: "release" #release,debug,test
  resources-path: 'resources'  #对外静态文件目录
  trust-proxy: ""
gorm:
  type: "sqlite"
  max-idle-conns: 10
  max-open-conns: 100
mysql:
  username: ""
  password: ""
  addr: ""
  dbname: ""
rustdesk:	# 自行配置信息
  id-server: "你的api服务器的域名或IP:21116"
  relay-server: "你的api服务器的域名或IP:21117"
  api-server: "http://你的api服务器的域名或IP:21114"
  key: "自己设置key"
  personal: 1
logger:
  path: "./runtime/log.txt"
  level: "warn" #trace,debug,info,warn,error,fatal
  report-caller: true
proxy:
  enable: false
  host: ""
redis:
  addr: "127.0.0.1:6379"
  password: ""
  db: 0
cache:
  type: "file"
  file-dir: "./runtime/cache"
  redis-addr: "127.0.0.1:6379"
  redis-pwd: ""
  redis-db: 0
oss:
  access-key-id: ""
  access-key-secret: ""
  host: ""
  callback-url: ""
  expire-time: 30
  max-byte: 10240
jwt:
  private-key: "./conf/jwt_pri.pem"
  expire-duration: 360000
c. 双击运行apimain.exe

在这里插入图片描述

d. 访问后台

浏览器打开IP或域名:21114,默认用户名和密码都是admin

在这里插入图片描述

Linux一键部署

1、RustDesk

· 下载安装包

下载地址:Release 1.1.12 · rustdesk/rustdesk-server

下载压缩包直接解压,下载deb文件使用dpkg命令进行安装。

· 运行

给hbbr和hbbs增加可执行权限,然后直接 ./ 运行即可

2、API

· 下载安装包

下载地址:Releases · lejianwen/rustdesk-api

· 运行
a. 编辑配置文件
vim ./release/conf/config.yaml

在这里插入图片描述

配置信息和之前的一样

b. 执行apimain

给apimain文件增加执行权限,./apimain 直接执行即可

c. 访问后台

依旧浏览器打开IP或域名:21114,默认用户名和密码都是admin

Linux的docker安装

RustDesk

查看我的rustdesk基础配置文章:自建RustDesk实现远程桌面

API

· 拉取镜像(需要能访问国外网站)
docker pull ghcr.io/lejianwen/rustdesk-api:latest
· 使用docker-compose安装
mkdir /data/rustdesk/api	# 创建项目目录
cd /data/rustdesk/api
vim docker-compose.yaml		# 创建yaml文件

docker-compose.yaml文件

version: '2.1'
services:
   rustdesk-api:
    container_name: rustdesk-api
    environment:
      - TZ=Asia/Shanghai
      - RUSTDESK_API_RUSTDESK_ID_SERVER=域名或IP:21116
      - RUSTDESK_API_RUSTDESK_RELAY_SERVER=域名或IP:21117
      - RUSTDESK_API_RUSTDESK_API_SERVER=http://域名或IP:21114
      - RUSTDESK_API_RUSTDESK_KEY=自设置key
    ports:
      - 21114:21114
    image: lejianwen/rustdesk-api
    volumes:
      - /data/rustdesk/api:/app/data #将数据库挂载出来方便备份
    networks:
      - rustdesk-net
    restart: unless-stopped
networks:
  rustdesk-net:
    external: false
· 运行docker
docker-compose up -d
· 访问后台

依旧浏览器打开IP或域名:21114,默认用户名和密码都是admin

后续登录配置

上面的步骤配置完后就能在后台创建账号,客户端要使用创建的账号进行登录,还需要配置客户端信息。在客户端设置中配置api服务器,就能实现登录功能。

在这里插入图片描述

在这里插入图片描述

若想使用github绑定登录账号,需要配置oauth

· GitHub创建oauth apps

地址:https://github.com/settings/developers

填写相关信息,自己服务器的IP或域名

在这里插入图片描述

创建好后会生成ClientId和ClientSecret

· api后台创建oauth

在这里插入图片描述

填入生成的ClientId和ClientSecret

RedirectUrl为:http://你的域名或IP/api/oauth/callback

选择github进行创建

· 配置完后就可以使用GitHub绑定账号进行授权登录了

解决登录账号后连接慢的问题

4种解决方案

1、server端指定key。

· 优点:简单
· 缺点:链接不是加密的

hbbs -r <relay-server-ip[:port]> -k <key>
hbbr -k <key>
比如
hbbs -r <relay-server-ip[:port]> -k abc1234567
hbbr -k abc1234567
2、server端使用系统生成的key,或者自定义的密钥对,但如果client已登录,链接时容易超时或者链接不上,可以退出登录后再链接就可以了,webclient可以不用退出登录

· 优点:链接加密
· 缺点:操作麻烦

3、server端使用系统生成的key,或者自定义的密钥对,fork官方客户端的代码将secure_tcp修改成直接返回,然后通过Github Actions编译,下载编译后的客户端。 参考官方文档

· 优点:链接加密,可以自定义客户端一些功能,编译后直接可用
· 缺点:需要自己fork代码,编译,有点难度

4、使用编译好的客户端,操作简单

使用大佬fork的代码,已经修改了secure_tcp,可以直接下载使用,下载地址
· 优点:代码改动可查看,Github Actions编译,链接加密,直接下载使用
· 缺点:可能跟不上官方版本更新

对链接加密要求不高的可以使用1,对链接加密要求高的可以使用3或4

有问题可以评论或者私信(=.=)


http://www.kler.cn/a/536392.html

相关文章:

  • Kubernetes是什么?为什么它是云原生的基石
  • element-ui rate 组件源码分享
  • python学opencv|读取图像(五十六)使用cv2.GaussianBlur()函数实现图像像素高斯滤波处理
  • 多用户同时RDP登入Win10
  • 【LeetCode】152、乘积最大子数组
  • 自定义多功能输入对话框:基于 Qt 打造灵活交互界面
  • 深入理解Python上下文管理器:从基础到高级应用
  • java版本
  • 8.stack和queue
  • Linux交叉编译gpsd移植至arm板
  • CI/CD相关概念
  • AWS 上的 Red Hat OpenShift 服务
  • uniapp 使用 tree.js 解决模型加载不出来的问题
  • Python办公笔记——将csv文件转Json
  • c#对接deepseek 聊天AI接口
  • 使用数学工具和大模型结合训练专有小模型(有限元算法和大模型微调)
  • 使用 Docker 部署 RabbitMQ 的详细指南
  • 紧跟潮流,将 DeepSeek 集成到 VSCode
  • Windows 电脑安装 mysqldump 的详细教程
  • 数据结构与算法面经
  • ZooKeeper相关知识点
  • C++ Primer 递增和递减运算符
  • 配置#include “nlohmann/json.hpp“,用于处理json文件
  • 【c++】析构函数
  • pytest-xdist 进行多进程并发测试!
  • 团建 蓝桥杯省a 15