吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 10838|回复: 188
收起左侧

[Python 原创] 【开源】界面版Rustdesk Api接口&Web服务器 基于1.2.3及以上版本

    [复制链接]
彩色沙漠 发表于 2023-12-5 09:08
本帖最后由 彩色沙漠 于 2023-12-6 14:02 编辑

各位朋友反馈问题的时候,先说清楚自己用的开箱即用版还是源码自己部署的。

Rustdesk Api接口介绍

缘起
看了市面上各类RustDesk WEB API版本,或多或少的存在一些问题,比如说,需要通过url注册、新版客户端某些接口不支持、无法方便的修改密码等不足,因此博采众长,撸一个自己喜欢的版本来用。在此要感谢论坛及github的各位朋友写的接口,省去了我抓包找接口的时间。
front_main.png
front_login.png front_reg.png

功能特点
1、支持前台网页自主注册和登录。
2、支持前台展示设备信息,分为管理员版、用户版。
3、支持后台管理。
4、支持彩色标签。
5、支持设备在线统计。
6、支持设备密码保存。
7、利用心跳接口自动管理token并保活。
8、支持分享设备给其他用户

计划开发
1、分享设备给其他已注册用户
说明:类似网盘url分享,url激活后可以获得某个或某组或某个标签下的设备
备注:其实web api作为中间件,可做的不多,更多功能还是需要修改客户端来实现,就不太值当了。

管理员设置
当数据库中不存在账户时,第一个注册的账户直接获取超级管理员权限,之后注册账户为普通账户。







image.png
rust_books.png image.png



其他说明
设备信息
经测试,客户端会在非绿色版模式下,安装为服务的模式中,定时发送设备信息到api接口,
所以如果想要设备信息,需要安装rustdesk客户端并启动服务。
image.png


image.png

连接速度慢
新版本Key模式链接速度慢,可以在服务端启动服务时,不要带参数的-k,此时,客户端也不能配置key





获取方法



1、开源代码版本
github地址:点击访问github

2、开箱即用版
Window独立打包版,无需安装环境,直接运行启动.bat即可。点这里进入蓝奏云下载绿色开箱即用版

image.png windows_run.png


支持Django3及Django4+
注意,如果cengtos配置时,Django4会因为系统的sqlite3版本过低而出问题,请修改依赖库中的文件:
路径:xxxx/site-packages/django/db/backends/sqlite3/base.py
[Python] 纯文本查看 复制代码
# 修改内容
# from sqlite3 import dbapi2 as Database   #(注释掉这段)
from pysqlite3 import dbapi2 as Database # 启用pysqlite3




admin_main.png
image.png
image.png
image.png

免费评分

参与人数 11吾爱币 +11 热心值 +11 收起 理由
wyl0205 + 2 + 1 用心讨论,共获提升!
langyoChina + 1 + 1 可以
zisedeyu + 1 你是猴子请来的救兵吗?太强了!
boyhong + 1 + 1 谢谢@Thanks!
2019Uranus + 1 + 1 谢谢@Thanks!
taichi1983 + 1 + 1 我很赞同!
党魁 + 1 + 1 谢谢@Thanks!
林乔伊 + 1 + 1 谢谢@Thanks!
楼上有人 + 1 + 1 热心回复!
wanfon + 1 + 1 热心回复!
心伤的天堂 + 1 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| 彩色沙漠 发表于 2023-12-5 11:20
GMCN 发表于 2023-12-5 10:38
rustdesk新版本的后台是单独的版本,都没开源

RustDesk分为3个部件:
1、客户端。
2、服务端中间件。
3、Api中间件。

我这是第三部分。谢谢。
党魁 发表于 2023-12-16 15:59
彩色沙漠 发表于 2023-12-15 22:44
这玩意是官方自己阉割了。放到付费版了。

我找到了个批处理可以修改ID的,把安装路径改成自己本机的就行,Win11下运行没问题

Dingtalk_20231216155538.jpg
Dingtalk_20231216155611.jpg

[C] 纯文本查看 复制代码
:: INFO:
:: RustDesk Github: https://github.com/rustdesk/rustdesk

:: RustDesk ID Changer Github: https://github.com/abdullah-erturk/RustDesk-ID-Changer

::===============================================================================================================
@echo off
mode con:cols=90 lines=30
title RustDesk ID Changer by mephistooo2 ^| www.TNCTR.com
net file 1>nul 2>nul && goto :Main || powershell -ex unrestricted -Command "Start-Process -Verb RunAs -FilePath '%comspec%' -ArgumentList '/c ""%~fnx0""""'"
goto :eof
::===============================================================================================================
:Main
cls
if exist "F:\ruanjian\RustDesk\rustdesk.exe" (
cd "F:\ruanjian\RustDesk\"
for /f "delims=" %%i in ('rustdesk.exe --get-id ^| more') do set rustdesk_id=%%i
goto :Run
) else (
echo.
echo RustDesk is not installed, install RustDesk first.
echo.
echo Press any key to exit.
pause >nul
exit
)
:Run
pushd %temp% >nul 2>&1
echo.
echo ==========================================================================================
echo.
echo          RustDesk ID Changer by mephistooo2 ^| TNCTR.com
echo.
echo                   1 - Set RustDesk ID with computer name : "%computername%"
echo.
echo                   2 - Set RustDesk ID with 9-digit random numbers
echo.
echo                   3 - Set RustDesk ID to the value you specify
echo.
echo                   4 - Exit
echo.
echo ==========================================================================================
echo.
choice /c 1234 /cs /n /m "Make Your Choice : "
echo.
if errorlevel 4 Exit
if errorlevel 3 goto :ID_UserDefined
if errorlevel 2 goto :ID_Random
if errorlevel 1 goto :ID_Host
echo.
::===============================================================================================================
:ID_Host
echo.
echo Stop-Service RustDesk > RustDesk_ID_Host.ps1
echo taskkill /im rustdesk.exe /f >> RustDesk_ID_Host.ps1
echo $id = Get-Content "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" ^| Select-Object -Index 0 >> RustDesk_ID_Host.ps1
echo $hostname = hostname >> RustDesk_ID_Host.ps1
echo Write-Host "Current ID: %rustdesk_id%" >> RustDesk_ID_Host.ps1
echo $newId = "id = '$hostname'" >> RustDesk_ID_Host.ps1
echo Write-Host "New ID: $newId" >> RustDesk_ID_Host.ps1
echo $fileContent = Get-Content -Path "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" >> RustDesk_ID_Host.ps1
echo $newContent = $fileContent -replace [regex]::Escape($id), $newId >> RustDesk_ID_Host.ps1
echo $newContent ^| Set-Content -Path "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" >> RustDesk_ID_Host.ps1
echo Restart-Service RustDesk >> RustDesk_ID_Host.ps1
powershell.exe -ExecutionPolicy Bypass -File RustDesk_ID_Host.ps1
start "" "F:\ruanjian\RustDesk\rustdesk.exe" --tray
goto :done
::===============================================================================================================
:ID_Random
echo.
echo Stop-Service RustDesk > RustDesk_ID_Random.ps1
echo taskkill /im rustdesk.exe /f >> RustDesk_ID_Random.ps1
echo $randomId = -join ((48..57) ^| Get-Random -Count 9 ^| ForEach-Object {[char]$_}) >> RustDesk_ID_Random.ps1
echo $id = Get-Content "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" ^| Select-Object -Index 0 >> RustDesk_ID_Random.ps1
echo Write-Host "Current ID: %rustdesk_id%" >> RustDesk_ID_Random.ps1
echo $newId = "id = '$randomId'" >> RustDesk_ID_Random.ps1
echo Write-Host "New ID: $newId" >> RustDesk_ID_Random.ps1
echo $fileContent = Get-Content -Path "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" >> RustDesk_ID_Random.ps1
echo $newContent = $fileContent -replace [regex]::Escape($id), $newId >> RustDesk_ID_Random.ps1
echo $newContent ^| Set-Content -Path "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" >> RustDesk_ID_Random.ps1
echo Restart-Service RustDesk >> RustDesk_ID_Random.ps1
powershell.exe -ExecutionPolicy Bypass -File RustDesk_ID_Random.ps1
start "" "F:\ruanjian\RustDesk\rustdesk.exe" --tray
goto :done
::===============================================================================================================
:ID_UserDefined
echo.
echo Stop-Service RustDesk > RustDesk_ID_UserDefined.ps1
echo taskkill /im rustdesk.exe /f >> RustDesk_ID_UserDefined.ps1
echo $id = Get-Content "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" ^| Select-Object -Index 0 >> RustDesk_ID_UserDefined.ps1
echo THE NEW RUSTDESK ID VALUE MUST BE AT LEAST 6 CHARACTERS
timeout /t 2 >nul 2>&1
echo.
echo $newId = Read-Host "Enter RustDesk ID" >> RustDesk_ID_UserDefined.ps1
echo Write-Host "Current ID: %rustdesk_id%" >> RustDesk_ID_UserDefined.ps1
echo $newId = "id = '$newId'" >> RustDesk_ID_UserDefined.ps1
echo Write-Host "New ID: $newId" >> RustDesk_ID_UserDefined.ps1
echo $fileContent = Get-Content -Path "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" >> RustDesk_ID_UserDefined.ps1
echo $newContent = $fileContent -replace [regex]::Escape($id), $newId >> RustDesk_ID_UserDefined.ps1
echo $newContent ^| Set-Content -Path "C:\Windows\ServiceProfiles\LocalService\AppData\Roaming\RustDesk\config\RustDesk.toml" >> RustDesk_ID_UserDefined.ps1
echo Restart-Service RustDesk >> RustDesk_ID_UserDefined.ps1
powershell.exe -ExecutionPolicy Bypass -File RustDesk_ID_UserDefined.ps1
start "" "F:\ruanjian\RustDesk\rustdesk.exe" --tray
goto :done
::===============================================================================================================
:done
del RustDesk_ID_Host.ps1 >nul 2>&1
del RustDesk_ID_Random.ps1 >nul 2>&1
del RustDesk_ID_UserDefined.ps1 >nul 2>&1
echo.
echo         PROCESS COMPLETED
echo.
choice /C:MX /N /M "Press M for MAIN MENU -- X for EXIT: "
if errorlevel 2 Exit
if errorlevel 1 goto :Main
::===============================================================================================================

免费评分

参与人数 3吾爱币 +3 热心值 +3 收起 理由
Pas85810 + 1 + 1 谢谢@Thanks!
金金相印 + 1 + 1 用心讨论,共获提升!
Scenery + 1 + 1 热心回复!

查看全部评分

不知道改成啥 发表于 2023-12-5 09:16
 楼主| 彩色沙漠 发表于 2023-12-5 09:29

感谢关注,只要对大家有帮助就好
Rx0 发表于 2023-12-5 09:44
感谢分享,已下载。
qqycra 发表于 2023-12-5 10:13
rustdesk 真是越来越好了,我现在经常用
GMCN 发表于 2023-12-5 10:38
rustdesk新版本的后台是单独的版本,都没开源
GMCN 发表于 2023-12-5 10:40
Tianmoy 发表于 2023-12-5 11:04
感谢分享
tianyagk1314 发表于 2023-12-5 11:46
这个好,必须关注
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 10:24

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表