RustDesk API is a custom implementation of the RustDesk API server written in Go, designed to enhance the self-hosted RustDesk experience. It provides a comprehensive Web Admin interface for managing users, devices, tags, and groups, filling the gap left by the standard open-source server. It also includes a Web Client, allowing users to initiate remote connections directly from their browser without installing the native client.
Key features include robust authentication support via OIDC (compatible with Keycloak, Google, GitHub) and LDAP, making it suitable for enterprise environments. The server logs connections and file transfers, providing visibility into usage. It works best when paired with a modified RustDesk Server (like `lejianwen/rustdesk-server`) to unlock features like forced login and WebSocket support.
Use Cases:
English Doc
本项目使用 Go 实现了 RustDesk 的 API,并包含了 Web Admin 和 Web 客户端。
[lejianwen/rustdesk-server]fork自RustDesk Server官方仓库
- 解决了使用API链接超时问题
- 可以强制登录后才能发起链接
- 支持客户端websocket
github, google 和 OIDC 登录,web后台授权登录LDAP(AD和OpenLDAP已测试), 如果API Server配置了LDAP基本实现了PC端基础的接口。支持Personal版本接口,可以通过配置文件rustdesk.personal或环境变量RUSTDESK_API_RUSTDESK_PERSONAL来控制是否启用
登录
地址簿
群组
使用前后端分离,提供用户友好的管理界面,主要用来管理和展示。前端代码在rustdesk-api-web (https://github.com/lejianwen/rustdesk-api-web)
后台访问地址是http://[:port]/_admin/
初次安装管理员为用户名为admin,密码将在控制台打印,可以通过命令行更改密码
!img.png
管理员界面 !web_admin
普通用户界面 !web_user
每个用户可以多个地址簿,也可以将地址簿共享给其他用户
分组可以自定义,方便管理,暂时支持两种类型: 共享组 和 普通组
可以直接打开webclient,方便使用;也可以分享给游客,游客可以直接通过webclient远程到设备
Oauth,支持了Github, Google 以及 OIDC, 需要创建一个OAuth App,然后配置到后台
Google 和 Github, Issuer 和 Scopes不需要填写.OIDC, Issuer是必须的。Scopes是可选的,默认为 openid,profile,email. 确保可以获取 sub,email 和preferred_usernamegithub oauth app在Settings->Developer settings->OAuth Apps->New OAuth App
中创建,地址 https://github.com/settings/developers (https://github.com/settings/developers)Authorization callback URL填写http:///api/oidc/callback
,比如http://127.0.0.1:21114/api/oidc/callback登录日志
链接日志
文件传输日志
server控制
Feature-rich Android manga reader forked from TachiyomiSY/Mihon with tracker support, offline reading, and advanced library management.
Unified Linux launcher for Windows games using Proton, independent of Steam, with automatic game fixes and multi-storefront support.
Privacy-focused, native macOS voice-to-text app with offline local AI processing, context awareness, and custom dictionary support.
Community edition of the PCL2 Minecraft launcher offering high-speed downloads, mod management, and extensive UI customization.
Automated anime tracking and downloading tool based on RSS, integrating with qBittorrent/Aria2 for seamless media management.
Lightweight Android TV browser for watching web-based live TV channels, optimized for remote control and older devices.