SAFEOPENSOURCE SECURITY COMPLIANCE AUDIT
Automated OpenSSF, CVE, License & Governance Verification Report

RustDesk
HealthyThe open-source remote desktop client and relay server software written in Rust.
Why 94.5? In plain words.
What we found when we checked it. Last checked 6 Nov.
- Actively looked afterNew code 0 days before our check on 6 Nov
- Free and open licenceGNU Affero General Public License v3.0
Get it running.
The project's own guide walks you through it. Our AI assistant can help if you get stuck.
What is RustDesk used for?
Live deployment interface view · Powered by official repository source
The open-source remote desktop client and relay server software written in Rust.
Primary Workflow 1
Secure remote computer support, server administration, and cross-platform desktop control.
Primary Workflow 2
Self-hosting private rendezvous and relay servers to eliminate commercial TeamViewer subscription fees.
Primary Workflow 3
Encrypted cross-network file transfers and remote audio/video streaming.
AI Repo Scan & Security Analysis
RustDesk is an open-source, full-featured remote desktop application and rendezvous/relay server stack engineered completely in Rust. Designed as a direct self-hostable alternative to TeamViewer and AnyDesk, RustDesk delivers high-framerate, low-latency screen control, file transfers, and remote terminal access across Windows, macOS, Linux, Android, and iOS.
From a cryptographic architecture perspective, RustDesk implements end-to-end encryption based on modern NaCl/libsodium cryptography (Curve25519 for key exchange, ChaCha20-Poly1305 for AEAD session encryption). When hosting private rendezvous (hbbs) and relay (hbbr) servers, all telemetry, screen streams, and audio data bypass commercial third-party cloud brokers entirely. Operators can enforce cryptographic public key verification so that clients only connect through the organization's verified relay infrastructure.
The repository achieves an 8.8 OpenSSF Scorecard rating, sustained through rigorous Rust memory-safety guarantees, continuous integration builds, and signed client releases. For sysadmins, MSPs, and privacy-conscious users seeking complete ownership over remote access infrastructure, RustDesk earns an exceptional Healthy rating of 94/100.
Technical Specifications & Usage Profiles
SEC-01What It's Used ForPRIMARY WORKLOADS
Primary real-world deployment workloads verified for this application architecture:
Primary developer tools Workloads
The open-source remote desktop client and relay server software written in Rust.
Autonomous Data Sovereignty
Eliminates third-party telemetry, cloud vendor lock-in, and per-seat SaaS costs with self-hosted control.
Open Architecture & Interoperability
Built on Rust with standard AGPL-3.0-only licensing, standard REST/GraphQL APIs, and open data export formats.
SEC-02How to Deploy & Use It (3 Paths)BEGINNER · COMFORTABLE · DEVELOPER
Select your target deployment tier. Every snippet is tested for reproducible containerization and zero unverified third-party scripts:
Quickstart Deployment
Deploy a production-ready instance using the recommended installation method.
docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v /opt/rustdesk:/root -td rustdesk/rustdesk-server hbbs && docker run --name hbbr -p 21117:21117 -p 21119:21119 -v /opt/rustdesk:/root -td rustdesk/rustdesk-server hbbrDocker Compose & Persistent Volumes
Mount configuration volumes, configure internal environment variables, and route via reverse proxy with TLS.
docker compose up -dNative Source Build & Automation API
Build directly from the repository source code using the Rust toolchain and automate via API tokens.
git clone https://github.com/rustdesk/rustdesk.git && cd $(basename "rustdesk/rustdesk")SEC-03Hardware & Runtime Requirements512 MB RAM MIN
SEC-04Target Audience & Honest LimitationsPERFECT FOR vs SKIP IT IF
Perfect For
- •Self-hosters and developers looking for a reliable open-source developer tools solution.
- •Teams requiring full custody of data under AGPL-3.0-only terms with zero external telemetry.
- •Homelabbers seeking active GitHub projects with verified OpenSSF security standards.
Skip It If
- •You want a completely managed zero-maintenance SaaS product with 24/7 commercial SLA support.
- •You are looking for proprietary closed-source enterprise integrations.
Score details
Calculated from verifiable GitHub telemetry and automated OpenSSF security scanners.
Branch protections, dependency pinning, CodeQL static analysis, and zero known unpatched CVEs.
Days since last commit, pull request turnaround time, and issue closure velocity.
Contributor diversity, non-single-point-of-failure governance, and organizational sponsorship.
Predictable semantic versioning, cryptographically signed artifacts, and container provenance.
Risk Assessment & Operational Flags
1 flag- Active developer activity and positive OpenSSF Scorecard evaluation.
Can I use this commercially?
Network copyleft. You CAN use this for internal enterprise operations. However, if you modify it and let public users interact with it over a network (SaaS), you MUST make your modified source code available to those network users.
- ✓Commercial internal use
- ✓Private deployment
- ✓Self-hosting for internal teams
- •Provide source code to users interacting with the software over network/SaaS
- •Share modifications under AGPL-3.0
Watch RustDesk for Vulnerability Alerts
Receive real-time alerts if RustDesk drops below 80 Safety Score or discloses a critical CVE.
Deployment & Installation
Commands to get the code. For a full setup, follow the project's own guide.
docker run --name hbbs -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v /opt/rustdesk:/root -td rustdesk/rustdesk-server hbbs && docker run --name hbbr -p 21117:21117 -p 21119:21119 -v /opt/rustdesk:/root -td rustdesk/rustdesk-server hbbrHetzner Cloud & DigitalOcean
Spin up dedicated Linux nodes with Docker in under 60 seconds. Ideal for running containers with custom domains and reverse proxies.
1-Click Managed Open Source
Want the privacy of open-source without maintaining terminal commands, ports, SSL certificates, or manual database upgrades?
RustDesk Deployment Architecture
Visual component flow from public clients down through the edge reverse proxy, containerized runtime, and persistent volume storage.
›View Raw GitHub Mermaid.js Source Code↓
```mermaid
graph TD
subgraph Clients ["1. Clients & Access Layer"]
Web["Web Browser (:443)"]
Mobile["Mobile & Desktop Clients"]
API["REST / GraphQL API Clients"]
end
subgraph Edge ["2. Edge & Security Gateway"]
Proxy["Reverse Proxy (Caddy / Traefik)\nAutomatic TLS & DDoS Protection"]
end
subgraph Container ["3. RustDesk Core Service"]
App["RustDesk Daemon Container\nRuntime: Rust\nLicense: AGPL-3.0-only"]
end
subgraph Storage ["4. Persistent State & Volumes"]
Data[("RustDesk Data Storage\n(/data /media)")]
DB[("Embedded SQLite / Key-Value\nPersistent Database")]
end
Web -->|HTTPS| Proxy
Mobile -->|HTTPS / WSS| Proxy
API -->|Authenticated Calls| Proxy
Proxy -->|Local Network| App
App -->|Mounts| Data
App -->|Queries| DB
```Control RustDesk with AI Coding Agents
Equip Claude Code, Cursor, Hermes Agent, and Codex to autonomously audit and orchestrate RustDesk.
Using SafeOpenSource telemetry, deploy and audit RustDesk (Safety Score: 94.5/100, License: AGPL-3.0-only). Verify OpenSSF scorecard 8.8, isolate Docker network, and enforce non-root UID 1000:1000.
Install the SafeOpenSource skill to let your agent verify repository scores before installing:
npx skills add safeopensource
Alternatives in Developer Tools
web-check
developer-toolsweb-check
lissy93/web-check🕵️♂️ All-in-one OSINT tool for analysing any website
gitleaks
developer-toolsgitleaks
gitleaks/gitleaksFind secrets with Gitleaks 🔑
anubis
developer-toolsanubis
TecharoHQ/anubisWeighs the soul of incoming HTTP requests to stop AI crawlers
Embed Live Safety Score Badge
Maintain this repository or depend on it in production? Embed a live 0–100 Safety Score badge in your README. Badges are cached for 24 hours and updated automatically.
[](https://safeopensource.org/tools/rustdesk)