RustDesk Remote Access Setup: A Complete Guide

Overview
This documentation provides a detailed walkthrough of how to set up and use RustDesk, a free, open-source remote access software that allows users to self-host their own relay and rendezvous servers for secure and low-latency remote connections across Windows, Linux, macOS, and mobile platforms.
1. Why Use RustDesk?
Compared to traditional remote access tools like TeamViewer, AnyDesk, RDP, and VNC:
Tool | Limitations |
---|---|
Windows RDP | Requires Pro edition, limited to local network or VPN, lacks native Mac support |
VNC | Not encrypted by default, high latency, complex setup |
TeamViewer | Free only for personal use, disconnects after 45 minutes, routes traffic via external servers |
AnyDesk | Free version lacks server self-hosting |
Parsec | Paid service, targeted for low-latency gaming |
RustDesk Benefits:
- Free and Open Source
- Self-hostable for full data ownership
- Supports Windows, Linux, macOS, Android, iOS
- Works with VPN (e.g., Tailscale)
- GPU-accelerated for performance
- Direct LAN (IP-to-IP) access
2. Installation
2.1. Installing RustDesk Client On Windows
- Download MSI installer from RustDesk GitHub Releases.
- Run installer to complete installation.
- RustDesk generates:
- RustDesk ID
- Password for access
On Linux (e.g., Ubuntu on ARM SBC like Orange Pi)
sudo apt update && sudo apt upgrade -y
wget https://github.com/rustdesk/rustdesk/releases/download/<version>/rustdesk-<version>-arm64.deb
sudo dpkg -i rustdesk-<version>-arm64.deb
(Replace <version>
with actual version from GitHub)
Launch RustDesk from the system menu post-installation.
3. LAN-Based Remote Access (IP-to-IP)
To enable secure direct LAN access:
Steps (on both client and remote PC):
- Open RustDesk → Menu (three dots) → Security Settings
- Unlock security with system password
- Enable:
- Remote configuration modification
- Set a permanent password
- Enable RDP session sharing
- Enable Direct IP access
- Set Port to
21118
(default)
Connect Using LAN IP
- Input remote machine's local IP (e.g.,
192.168.0.181
) - Enter permanent password
- Connection established (unsecured unless relay server is used)
4. Hosting Your Own RustDesk Relay Server
Self-hosting enhances privacy and performance.
4.1. Requirements
- Minimal VPS (1 vCPU, 1GB RAM sufficient)
- Docker & Docker Compose installed
- Public static IP or dynamic DNS
4.2. Setup on Oracle Cloud (Free Tier Example)
Create Instance
- OS: Ubuntu 22.04
- Specs: 1 vCPU, 1GB RAM
Install Docker
sudo apt update && sudo apt install docker.io docker-compose -y
Prepare RustDesk Docker Compose File
mkdir rustdesk && cd rustdesk
nano docker-compose.yml
Docker Compose Content
version: '3'
services:
hbbs:
image: rustdesk/hbbs
container_name: hbbs
network_mode: host
restart: unless-stopped
volumes:
- ./data:/root
hbbr:
image: rustdesk/hbbr
container_name: hbbr
network_mode: host
restart: unless-stopped
volumes:
- ./data:/root
Run RustDesk Server
sudo docker-compose up -d
5. Configuring Clients to Use Custom Relay Server
5.1. Retrieve Server Public Key
cd rustdesk/data
cat id_ed25519.pub
Copy the full key including the =
symbol at the end.
5.2. Client-Side Configuration
- Open RustDesk → Menu (three dots) → Network
- Unlock network settings
- Set:
- ID Server = your server IP
- Relay Server = your server IP
- Key = public key from above
- Click OK
Once configured, RustDesk uses your private relay. Connections will be shown as "Direct and Encrypted".
6. Cross-Platform Remote Control
Tested platforms:
- Windows → Windows
- Windows → Linux (Ubuntu on Orange Pi 5 Plus ARM64)
- Linux → Windows
Common issue on Linux:
- Wayland support is experimental; use X11 for better compatibility.
7. Security Notes
- Direct IP connections on LAN are unencrypted. Use relay for encryption.
- Ensure your relay server is secured (firewall, SSH keys, etc.).
- Use VPN or Tailscale for cross-network access if not using public relay.
8. Troubleshooting Tips
Issue | Solution |
---|---|
Wayland error on Linux | Switch to X11 or install Xorg |
High latency on VNC/TeamViewer | Use RustDesk or Parsec |
Remote not connecting | Check firewall, port 21118 , IP settings |
Client still shows “Ready...” | Double-check relay setup and key input |
9. Resources
10. Conclusion
RustDesk is a reliable, private, and performant alternative to mainstream remote access tools. By self-hosting the relay server, users can ensure security and control over their data while enjoying low-latency connections across multiple operating systems.
Youtube Video
Was this Article Helpful?
