OUR EXPERT
Tam Hanna
often finds himself press-ganged into IT admin duty for friends and family. Sadly, they are usually a few hours’ worth of travel away from his bunker.
Remote desktop connections are nothing new. More than 20 years ago, the venerable VNC R protocol enabled this writer to access their Vienna-bound workstation from abroad. Furthermore, accessing the headless CVS server was made much easier via its VNC service. In practice, however, VNC is not particularly comfortable. Firstly, the workstation that is to be remote-controlled usually needs to publicly expose the port where the VNC server will wait for commands. This requires router configuration and is a first-grade attack vector for every type of miscreant seeking to add a new machine to their botnet. Keep in mind that Towarisch Haxxor never sleeps and that port scans explicitly search for VNC services.
On the other hand, a service such as TeamViewer requires the inputting of an ID – punching through the various routers is handled by the operator. This can be of great value when the system to be administrated has a dynamic IP address; services such as http://heise.de/ip tend to be a major challenge for technically unsophisticated users.
In principle, RustDesk realises the user experience that users of TeamViewer know and like. The user interface on the front-end (see screenshot, above-right) is difficult to distinguish from what is rendered by its larger, well-established competitor.
Most importantly, a signalling service helps the client computer connect to the remote computer – in RustDesk lingo, the client computer is the machine that takes control of the remote computer. If the two machines can communicate directly, screen and control data flows between the two machines without an intermediary relay. In practice, however, the two servers often can’t directly communicate with one another due to firewalls, NATs and various other realities of modern computer internet working.
RustDesk presents itself as mostly platform-agnostic.
In this case, a second server called the relay server is brought into the connection. This machine acts as an intermediary between the two machines, ensuring data can be exchanged without network reconfiguration. In the interest of efficient product promotion, the RustDesk team provides a basic complement of servers of its own. However, serious open source aficionados and people who are concerned about performance are well advised to host their own servers. Hosting can be done either in the cloud or on a process computer – for small installations, the system requirements specify a minimum of 1GB of random access memory. Sadly, 512MB machines cannot be used, which disqualifies some of the earliest Raspberry Pi models.
TeamViewer, sorry, RustDesk is ready to help.