# rustdesk/rustdesk

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/rustdesk-rustdesk).**

116,258 stars · 17,579 forks · Rust · AGPL-3.0

## Links

- GitHub: https://github.com/rustdesk/rustdesk
- Homepage: https://rustdesk.com
- awesome-repositories: https://awesome-repositories.com/repository/rustdesk-rustdesk.md

## Topics

`android` `anydesk` `dart` `flatpak` `flutter` `flutter-apps` `ios` `linux` `macos` `p2p` `rdp` `remote-control` `remote-desktop` `rust` `rust-lang` `teamviewer` `vnc` `wayland` `windows`

## Description

RustDesk is a cross-platform remote desktop client that enables users to initiate and receive remote sessions. It provides a complete infrastructure for self-hosted remote access, utilizing a signaling and relay server architecture to maintain connectivity when direct peer-to-peer links are unavailable. The software is designed to function across desktop and mobile environments, offering native remote control, screen sharing, and file management capabilities.

What distinguishes the platform is its centralized administrative control plane, which allows for granular management of security policies, user identities, and device access permissions. Administrators can define scoped roles, implement hierarchical permission logic, and enforce security strategies across large deployments. The system supports integration with external identity providers, including OIDC and LDAP, alongside multi-factor authentication methods like TOTP to secure access to the infrastructure.

The software provides extensive tools for managed environments, including automated deployment scripts, command-line configuration, and bulk policy management. It includes specialized mechanisms for handling system-level elevation, allowing remote operators to interact with administrative prompts on target machines. The server infrastructure is designed for flexibility, supporting containerized deployments and geolocation-based routing to optimize connection paths and minimize latency.

Documentation and installation support cover a wide range of operating systems, providing native packages, portable formats, and guidance for running server components as persistent background services.

## Tags

### DevOps & Infrastructure

- [Private and Enterprise Infrastructure Management](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/private-enterprise-management.md) — Deploy custom signaling and relay servers to maintain full control over remote connectivity within private enterprise environments. ([source](https://rustdesk.com/docs/en/self-host/))
- [Administrative Management Systems](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/private-enterprise-management/administration-access-control/administrative-management-systems.md) — Centralize administrative oversight and identity management across all self-hosted remote access infrastructure. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/))
- [Container Orchestration](https://awesome-repositories.com/f/devops-infrastructure/container-orchestration.md) — Bundle signaling and registration services into containerized deployments for streamlined orchestration within isolated environments. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-oss/docker/))
- [Server Installation Methods](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/infrastructure-as-code/provisioning-and-deployment/server-installation-methods.md) — Support diverse installation methods including container images, native packages, and automated service scripts. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-oss/install/))
- [Self-Hosted Applications](https://awesome-repositories.com/f/devops-infrastructure/self-hosted-applications.md) — Host server components on private infrastructure using service managers for persistent, background operation. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-oss/windows/))
- [Automated Deployment Scripts](https://awesome-repositories.com/f/devops-infrastructure/deployment-management-strategies/automation-and-tooling/deployment-tooling/automated-deployment-scripts.md) — Packages automated installation scripts and MSI installers for large-scale software rollouts. ([source](https://rustdesk.com/docs/en/self-host/client-configuration/))
- [API Token Management](https://awesome-repositories.com/f/devops-infrastructure/infrastructure/operational-observability-access/api-token-management.md) — Generates API tokens to facilitate programmatic management of users, devices, and audit logs. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/console/))

### Networking & Communication

- [Display and Control Settings](https://awesome-repositories.com/f/networking-communication/remote-access-control/display-and-control-settings.md) — Adjust image quality, cursor behavior, and viewing modes to optimize performance during active remote sessions. ([source](https://rustdesk.com/docs/en/self-host/client-configuration/advanced-settings/))
- [Remote Desktop Clients](https://awesome-repositories.com/f/networking-communication/remote-access-control/remote-desktop-clients.md) — Initiate and manage secure remote desktop connections through either public or private self-hosted infrastructure. ([source](https://rustdesk.com/docs/en/client/))
- [Control Planes](https://awesome-repositories.com/f/networking-communication/remote-access-control/control-planes.md) — Manage global user permissions, device configurations, and infrastructure settings through a unified web-based control plane. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/console/))
- [Relay Server Management](https://awesome-repositories.com/f/networking-communication/remote-access-control/relay-server-management.md) — Deploy distributed relay nodes with geolocation settings to minimize latency and optimize connection routing. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/relay/))
- [Network Port Requirements](https://awesome-repositories.com/f/networking-communication/network-infrastructure-routing/network-infrastructure-configuration/network-and-server-infrastructure/network-port-requirements.md) — Documents essential network ports for signaling, relaying, API traffic, and proxy communication. ([source](https://rustdesk.com/docs/en/self-host/))
- [Client Configuration Settings](https://awesome-repositories.com/f/networking-communication/remote-access-control/client-configuration-settings.md) — Overrides default connection behavior through advanced settings like address book presets, window management, and service elevation. ([source](https://rustdesk.com/docs/en/self-host/client-configuration/advanced-settings/))

### Security & Cryptography

- [Connection Security Policies](https://awesome-repositories.com/f/security-cryptography/governance-policy-frameworks/security-frameworks/policy-management-systems/connection-security-policies.md) — Configure granular security policies to restrict file transfers, peripheral access, and input permissions during remote sessions. ([source](https://rustdesk.com/docs/en/self-host/client-configuration/advanced-settings/))
- [Elevation Mechanisms](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/access-control-models/elevation-mechanisms.md) — Interact with protected system dialogs and administrative prompts remotely through specialized elevation handling. ([source](https://rustdesk.com/docs/en/client/windows/windows-portable-elevation/))
- [Device Access Policies](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/device-connection-authorization/device-access-policies.md) — Assign specific hardware assets to individual users or teams to enforce precise device access boundaries. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/permissions/))
- [Access Control Systems](https://awesome-repositories.com/f/security-cryptography/identity-access-management/authentication-strategies/authorization-and-user-administration/access-control-authorization/access-control-systems.md) — Enforce strict connection eligibility rules to determine which users or groups can access specific remote devices. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/permissions/))
- [Control Role Management](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/device-connection-authorization/control-role-management.md) — Define specific operator capabilities, such as clipboard access or terminal usage, on a per-device basis. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/control-role/))
- [Administrative Role Management](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/identity-role-management/administrative-role-management.md) — Assign scoped administrative roles and permissions to users to delegate management of the remote access environment. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/admin-role/))
- [Bulk Policy Management](https://awesome-repositories.com/f/security-cryptography/governance-policy-frameworks/compliance-governance/audit-and-compliance/policy-enforcement-frameworks/bulk-policy-management.md) — Standardizes security and behavioral settings across multiple managed environments to eliminate manual client-side configuration. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/strategy/))
- [Device Group Permissions](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/device-connection-authorization/device-group-permissions.md) — Applies cumulative permission structures to regulate access across specific device collections. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/permissions/))
- [Identity and Role Management](https://awesome-repositories.com/f/security-cryptography/identity-access-management/access-control/identity-role-management.md) — Governs cross-group access by defining which user roles can interact with specific device sets. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/permissions/))

### Artificial Intelligence & ML

- [OIDC Authentication Integrations](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-systems-frameworks/agent-orchestration-multi-agent/security-and-auth/authentication-strategies/identity-providers/oidc-authentication-integrations.md) — Delegate user authentication to external OpenID Connect providers for seamless identity management. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/oidc/))
- [LDAP Authentication](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-systems-frameworks/agent-orchestration-multi-agent/security-and-auth/authentication-strategies/identity-providers/ldap-authentication.md) — Integrate with directory services for centralized authentication and automatic user account provisioning. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/ldap/))
- [TOTP Authentication Systems](https://awesome-repositories.com/f/artificial-intelligence-ml/agentic-systems-frameworks/agent-orchestration-multi-agent/security-and-auth/authentication-strategies/passwords-mfa/totp-authentication-systems.md) — Secure user accounts with time-based one-time passwords and provide backup codes for account recovery. ([source](https://rustdesk.com/docs/en/self-host/rustdesk-server-pro/2fa/))

### Part of an Awesome List

- [Remote Access](https://awesome-repositories.com/f/awesome-lists/devops/remote-access.md) — Virtual remote desktop infrastructure.
- [Remote Access Tools](https://awesome-repositories.com/f/awesome-lists/devops/remote-access-tools.md) — Simple, secure remote desktop and screen sharing software.
- [Remote Desktop](https://awesome-repositories.com/f/awesome-lists/devops/remote-desktop.md) — Virtual remote desktop infrastructure.
- [Developer Tools](https://awesome-repositories.com/f/awesome-lists/devtools/developer-tools.md) — Remote desktop and support software.
- [Media & Communication](https://awesome-repositories.com/f/awesome-lists/media/media-communication.md) — Remote desktop software.
- [Remote Desktop](https://awesome-repositories.com/f/awesome-lists/media/remote-desktop.md) — Open-source infrastructure for remote desktop access.
- [General Productivity Tools](https://awesome-repositories.com/f/awesome-lists/productivity/general-productivity-tools.md) — Open-source remote desktop software.
- [Open Source Applications](https://awesome-repositories.com/f/awesome-lists/productivity/open-source-applications.md) — Remote desktop and screen sharing application.
- [Personal Productivity and Utilities](https://awesome-repositories.com/f/awesome-lists/productivity/personal-productivity-and-utilities.md) — Open-source remote desktop application for self-hosting.
- [Remote and Utility](https://awesome-repositories.com/f/awesome-lists/productivity/remote-and-utility.md) — Open source remote desktop software.

### Mobile Development

- [Mobile Screen Sharing](https://awesome-repositories.com/f/mobile-development/mobile-capabilities/mobile-screen-sharing.md) — Capture and transmit mobile device screens and system audio using native mobile operating system permissions. ([source](https://rustdesk.com/docs/en/client/android/))
- [Android Remote Control](https://awesome-repositories.com/f/mobile-development/mobile-infrastructure-security/mobile-remote-desktop/android-remote-control.md) — Navigate and control remote systems from mobile devices using touch input modes and custom shortcuts. ([source](https://rustdesk.com/docs/en/client/android/))

### Development Tools & Productivity

- [CLI Tooling](https://awesome-repositories.com/f/development-tools-productivity/terminal-shell-cli/cli-tooling-frameworks/cli-tooling.md) — Exposes command-line parameters for silent installation, persistent credential storage, and programmatic ID management. ([source](https://rustdesk.com/docs/en/client/))

### Operating Systems & Systems Programming

- [Platform Permission Requirements](https://awesome-repositories.com/f/operating-systems-systems-programming/kernel-core-internals/system-programming-primitives/system-abstractions/os-specific-integration-modules/platform-permission-requirements.md) — Details system-level requirements for screen recording, input monitoring, and accessibility permissions. ([source](https://rustdesk.com/docs/en/client/mac/))

### Software Engineering & Architecture

- [Client](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/configuration-scopes/client.md) — Replicates connection settings using custom binary generation, import/export utilities, and command-line automation. ([source](https://rustdesk.com/docs/en/self-host/client-configuration/))
