RustDesk

RustDesk

File sharing - Freeware

Description

The last straw was a Tuesday afternoon in March 2023. My mother called because her printer had stopped working — again — and I opened TeamViewer to connect to her laptop. Five minutes into the session, the connection broke. “Commercial use detected.” I was not running a business. I was trying to figure out why an HP DeskJet was showing as offline for the fourth time that month. I already had two appeals to TeamViewer in the past year, both approved, both overruled by whatever algorithm determines that helping your own mother too frequently is a business operation. I sat there staring at the disconnection message and thought: there has to be something else. Something that does not treat me like a suspect for using it the way it was advertised.

I discovered RustDesk the same night. An open source remote desktop application that is written in Rust with the option of self-hosting your own relay server, so you never need to rely on anyone else’s infrastructure. The GitHub repo was around 40,000 stars at the time. The pitch was simple: everything TeamViewer does, only you own it. No licensing. No commercial detection. No five minute session limits. No one can tell you that you are using it wrong because the server is yours, running on your hardware, under your control. I read that description and felt the particular kind of excitement that can only come from discovering free software that solves a problem you have been paying – emotionally if not financially – to tolerate for years.

The client installation was the easy part. Download, install, open. The interface resembles that TeamViewer had a child with a Linux system monitor — functional, minimal, no polish. You get a nine-digit ID, a temporary password, and a connection box in which you type somebody else’s ID. If you just want to use RustDesk with their public relay servers, then you can start connecting right away. The experience is roughly equivalent to TeamViewer circa 2016 — before the bloat, before the upselling, before the commercial detection. Connections work. File transfer works. Clipboard is synchronized between machines. You can switch between quality and performance modes. It is not beautiful. It does not need to be.

But no-one downloads RustDesk to use the public servers. The whole point — the reason this software exists — is self-hosting. And this is where the experience becomes two entirely different stories based on which side you are on.

If you are comfortable with Docker, it is very easy to self-host a RustDesk relay server. Two containers — hbbs for the ID/rendezvous server and hbbr for the relay server — a few environment variables, two ports to open on your firewall (21115-21117 TCP, 21116 UDP), and you are done. I set mine up on a $5 a month VPS from Hetzner running Ubuntu 22.04. The whole process took about forty minutes and fifteen of those were me mistyping a port number and wondering why connections were timing out. Once it was running, I pointed my RustDesk clients to the server’s IP address and all connections from then on went through my own infrastructure. No third party. No relaying through someone else’s data center. No one between me and the machines I was connecting to.

If you are not comfortable with Docker – if the previous paragraph sounded like a foreign language – self hosting rustdesk is going to be a rough afternoon. The documentation is there, but it’s the kind of open source documentation that assumes you already know 70 percent of what you need to know and just need the remaining 30 percent spelled out. There is no guided setup wizard. There is no “click here to deploy” button. The community forums and GitHub issues are helpful, but the help assumes a baseline of Linux knowledge that most people who just want to fix their parents printer do not have.

This is the basic tension at the center of RustDesk: it addresses an issue that mostly affects people who are not technically literate but are assisting other people who are not technically literate, but the self-hosting configuration requires some real technical savvy. My father, the man whose printer problems began this whole journey, could not get a RustDesk server up if his life depended on it. So I set it up for him which means I am still the unpaid IT department — I have just upgraded my tools.

The quality of the connection surprised me. I was expecting a significant downgrade from TeamViewer, as TeamViewer has 20 years of optimization and a global network of relay servers in data centers on every continent. RustDesk, running on my single VPS at Falkenstein, Germany, should have been worse. It was not. On a decent broadband connection — 50 Mbps or above on both ends — the latency was indistinguishable from TeamViewer. Mouse movements were smooth.

Screen updates were fast. I could type in a remote text editor and not feel the delay between keystrokes. The Rust-based codec does a pretty good job of bandwidth efficiency. Where I did notice a difference was on poor connections. When my mother’s DSL fell below 10 Mbps, TeamViewer’s adaptive codec handled the situation more gracefully — lowering quality gracefully while maintaining the usability of the session. RustDesk became choppier more quickly and froze for a second or two at a time. Not unusable, but much less polished in edge cases.

The feature gap between RustDesk and TeamViewer is real and pretending otherwise would be dishonest. TeamViewer includes session recording, an integrated chat, device grouping and tagging with notes, remote printing, multi-monitor switching and individual monitor selection, a management console for IT teams, integration with ticketing systems, and 20 years of enterprise features designed for companies managing thousands of endpoints.

RustDesk has remote control, file transfer, clipboard sync, TCP tunneling, and address book. That is roughly it. If you are a one man operation looking after five or ten machines for family and friends, RustDesk has everything you need. If you are managing an office of fifty machines and you need audit logs and compliance reporting, RustDesk is not there yet. The gap is closing — the project is actively developed and new features land every few months — but as of early 2026, it’s a gap nonetheless.

One thing that RustDesk does that almost no competitor does to this level is a full permission system for the remote user. When someone connects to your machine, a pop-up appears asking you to approve the connection and showing exactly what permissions they are requesting — screen view, keyboard and mouse control, clipboard access, file transfer. You can approve all of them or selectively deny certain permissions. This is a detail that matters enormously for trust. When I connect to my mother’s laptop she sees exactly what I can do. She does not have to wonder whether I am reading her emails when I am supposed to be fixing her printer. TeamViewer has something similar, but RustDesk’s has a sense of transparency and presentation.

The Android client is sufficiently good that I have used it in real emergencies. The screen draws nicely, touch to mouse translation is reasonable, and the on-screen keyboard works. I once rebooted my home server from the shopping mall parking lot using RustDesk on my phone because a Docker container crashed and brought down my Plex instance. Not comfortable, not something I would want to do for more than 5 minutes, but it worked. The iOS app is available but has had a rougher history — Apple’s restrictions on background processes and screen capture make full remote control from an iPhone more limited than on Android. You can view and control remote machines but hosting a session from an iOS device is not really practical.

The privacy angle is the one that persuaded me to stay here for good. When you self-host RustDesk your connection data does not pass through anyone else’s servers. The relay traffic passes through your VPS which you have control over. The encryption is end-to-end. There is no company collecting metadata about which machines are you connecting to, when, for how long, how often. For most people, this is not important — they are connecting to their mom’s laptop, not dealing with state secrets.

But after years of watching companies quietly change their privacy policies, sell usage data or get breached and pretend it did not happen, there is something deeply satisfying about a setup where the answer to “who has access to my connection data” is “me and nobody else.” I sleep better knowing that my remote access infrastructure is not dependent on the continued good will of a corporation and the auditable code of an open source project.

The project is maintained by a small team mainly, and this is reflected in the development pace. Updates are frequent — the client has improved a great deal since I first installed it — but feature requests sometimes languish on GitHub for months. There was a time in late 2023 when a Windows update ruined clipboard sync and it took about 3 weeks for the fix to be available. If this had been TeamViewer it would have been patched in days. That is the trade-off with open source software that has a small team: the code is transparent and the product is free, but you do not get a 24-hour support line when something breaks. You get a GitHub issue thread and a community of people who also are waiting.

I have been using RustDesk as my sole remote desktop tool for almost three years now. The server has cost me $60 in VPS fees a year. It handles connections between six machines — my desktop, my laptop, my parents’ two computers, my sister’s laptop, and a headless Raspberry Pi running in my closet that I use as a home automation controller. Total cost over three years: $180. A Teamviewer Business license for the same period would have been close to $900, and it would have come with the constant risk of being flagged for commercial use because I connected to my father’s machine too many times in one month.

RustDesk is not for everyone. It is for people who got frustrated enough with commercial remote desktop software, that they learned how to host their own, and who value control over convenience. The setup is more difficult than TeamViewer. The polish is not there yet. The feature set is smaller. But the core experience — connecting to a remote machine, controlling it, transferring files — works reliably, costs almost nothing, and is all your own. After years of being a guest in TeamViewer’s house, living by their rules, putting up with their pop-ups, appealing their flags, RustDesk gave me my own house. It is smaller. The furniture is basic. But no one can kick me out.

User Rating:

4.5 / 5. 2

Freeware
21.1 MB
Android, Linux, Mac, Windows PC
Purslane