Self-hosted remote support
Direct Line
Server as the Switchboard
The server runs on Linux and Windows. I will address the various installation options later; suffice to say for now that you can either install directly or use containers for the Docker and Podman container managers. Under the hood, the server comprises two services: the relay server (hbbr) and the signal server (hbbs), which the project's online documentation also refers to as the rendezvous server or simply the ID server.
A client connects to the signal server and receives a unique ID and password; another client can use this password to connect remotely. The clients then attempt to establish a direct connection with end-to-end encryption. If not possible, the relay server enters play, and the clients communicate through it indirectly.
You do not need to install your own server to get started. The project currently operates its own free public server instances. With an earlier version, the manufacturer still indicated the number and locations of the servers in the online documentation, but unfortunately this is no longer the case. As with commercial providers, this means you need to trust the server operators. A dedicated server is recommended for production. If you just want to use RustDesk on an internal network, you can rely on direct IP access without a server, but in this case, the clients' communication is unencrypted. A server is therefore the better choice. Before turning your attention to your server, I'll take a look at the client functions.
Windows Client
On Microsoft Windows, you have the choice of installing the RustDesk client or using a portable version. The project's website points users to the latest stable version of the client in the GitHub repository. The portable executable file opens the client directly but also offers the option of installing retroactively with a note saying that installation can help avoid potential issues with Windows User Account Control (UAC).
If you decide to install the program, the setup routine offers the option of changing the installation path and creating shortcuts in the Start menu and on the desktop by default; you can disable these if you like. A virtual display driver is also installed by default, which is RustDesk's way of enabling access to systems that do not have a connected monitor.
As soon as you start the client, it contacts the project's public servers and reports at the bottom of the window: Ready, For faster connection, please set up your own server . The link redirects you to the website with pricing information. Follow the link for the free plan for the installation instructions and the downloadable resources on GitHub.
Helping and Finding Help by ID or IP Address
The interface is similar to other remote maintenance tools; even less experienced users will quickly find their way around. In the left half of the window, the client shows your local system's ID with the password for access by an external helper below it. You can let the client generate a new, random password or manually set your own permanent password in the settings. The client helps you choose a strong password and recommends a mix of upper- and lowercase letters and numbers with a length of eight or more characters.
The three vertical dots take you to the advanced settings, which, up to the earlier v1.1.9 client, still took the form of a context menu; from v1.2.x (used here) a separate tab has several subcategories. In the advanced settings, you can manage the authorizations for remote sessions in the Security category and enable direct IP access and store the coordinates of your own server under Network . If direct IP access is enabled, you can reach the client with its IP address instead of the RustDesk ID, provided a direct network connection to the person seeking help is possible.
In the main area of the window on the right, you can contact other RustDesk clients by entering the ID of the remote site in the Control Remote Desktop field and start either a file transfer or a graphical session by clicking Connect . In both cases, you only need the other party's password to accept the incoming connection request if no one is at the other end.
In the area below, RustDesk remembers your Recent Sessions , which you can remove or add to your personal Favorites . On the Discovered tab, the client displays other RustDesk clients on the same network segment, provided you have not disabled automatic detection in their settings. The Address Book tab next to it requires a login with a username and password. However, this is reserved for users of the commercial Pro version of the self-hosted server.
As soon as you start a connection, the person seeking help will see a pop-up window at the other end with your local username, your RustDesk ID, and the active authorizations. By default, this means the ability to use the keyboard and mouse, the clipboard, bidirectional file transfer, audio transmissions, TCP tunneling, remote restart, and session logging.
The person seeking help can reject or accept the request. If accepted, the connection is opened, even if no password is sent. The pop-up window remains active while the connection is live. A person seeking help can terminate the session at any time and revoke or grant individual authorizations on an ongoing basis.
Buy this article as PDF
(incl. VAT)