A big variety of technologies are available to provide access to Linux machines remotely. A number of words are related to this topic, such as rdp client, vnc servers, ssh, x11, pulse audio, port forwarding, and much more. There are as well a lot of other components that are relevant to this discussion, such as the operating system in use on the client machines, the distribution used on the remote computer, user interface preferences, etc. The purpose of this post is to clarify how to get a remote desktop connection to Linux, and we intend to do so by comparing different alternatives for getting remote access to Linux.
What does it mean to connect remotely to Linux?
The basic definition of remotely connecting to Linux is that the machine with Linux is accessed through a network, either internal or by the internet. The end-user does not have any direct input peripherals such as a keyboard and mouse connected directly to the server. The Linux server, in this case, should be accessed by the network through another computing device, called a client device. One example of such a setup could be a Raspberry Pi as a client device, with a keyboard and mouse connected through the internet to a Linux server located in another country.
Which methods can be used to remotely connect to Linux?
There are two basic methods to connect to a remote Linux machine, CUI and GUI. CUI means character user interface or, more commonly known as the command line – fully text-based. GUI is an abbreviation for Graphical User Interface, which allows the visualization of graphical elements, such as application interfaces and desktops.
Accessing a remote Linux machine through CUI (Character User Interface)
SSH (Secure Shell) is a straightforward alternative for accessing Linux remotely. An SSH connection can easily be established directly from the Linux terminal shell or through an SSH client. SSH is a widely known open-source protocol.
Connecting to a Linux remotely through GUI (Graphical User Interface)
Remote access through a graphical user interface allows access to a full Linux Desktop or isolated applications.
X11 is a protocol that can be used with SSH to provide GUI access on remote systems. It has limitations concerning graphical performance over long-distance connections.
VNC (Virtual Networking Computing) is another technology that allows controlling of other machines remotely with better graphical performance than pure SSH with X11. Several VNCs are available on the internet for free use. Despite being popular, VNCs have limitations for those aiming to provide graphical user interface access to many users as the management of such a system becomes complex. VNCs, in general, is limited to the transport of pixels or image and normally don’t offer support for audio remotely.
A third alternative for remote access is the Linux Remote Desktop Servers. This technology is more sophisticated than SSH, X11, or pure VNC, because it packages well-known components and makes it easier for system administrators to set up remote desktops available to end-users. Below we explain more about Linux Remote Desktops.
What is a Linux Remote Desktop Server?
For this post, we refer to Linux Remote Desktop software as a solution that allows the provision of Linux Desktops remotely to several users at the same time. This specific type of software not only provides GUI access to the end-users but brings session management capabilities, allowing faster and easy deployments and also providing sound through the network.
ThinLinc is one example of a Linux Remote Desktop Server solution. ThinLinc is developed by Cendio in Sweden, one of the oldest Linux-centric companies in the world. ThinLinc can be categorized under the VNCs; however, ThinLinc is not limited to VNC as it provides much more. The main differences are sound; image quality and responsiveness; security; easy configuration, redundancy, load balance, and high availability. Here you find a comparison of ThinLinc and VNC.
ThinLinc packages well-known open-source components and orchestrate them in a way that makes easy the system administrator’s responsibility to provide access to Linux systems remotely. Remote desktop clients are available for Windows, macOS, Linux, ARM, and web browsers. Learn more about the Anatomy of a ThinLinc Session.
FAQ – Frequently Asked Questions about Linux Remote Desktop
What is Linux VDI?
VDI normally means having a dedicated virtual machine per user. These
virtual machines are created, started, and stopped as required by the
What is Linux Terminal Server?
A Linux Terminal Server is capable of hosting multiple user sessions on
the same operating system simultaneously. Users share the same machine,
and operating system, but have their own isolated desktop environment.
ThinLinc is a Linux Terminal Server.
How do I set up remote desktop on Linux?
To set up remote desktop on Linux, you should start by preparing two parts.
First, the server, and, second, the client. The server is the machine which
you want to access remotely, and the client is the computer that will connect
to the remote desktop. If your server already has a Linux distro and a desktop
environment installed, you should be able to install the ThinLinc server out-of-the-box!
Follow the installation steps and finalize by downloading and installing
the client compatible (macOS, Linux, Windows) or setting up the web client.
How do I RDP to Linux GUI?
You can get “RDP to Linux GUI” by using a software that provides Linux Remote Desktop
access, such as ThinLinc. RDP means Remote Desktop Protocol and is a proprietary
protocol developed by Microsoft. As the term RDP is very popular, people often refer
the term RDP as a way to connect remotely through a graphical user interface to another
computer. To answer this question, we assumed that “How do I RDP” means “How do I
If you are interested in learning more about ThinLinc, please visit our website. ThinLinc is totally free for up to 10 concurrent users. In less than 5 minutes, you can download the server and test it by yourself.