Remotely connecting to a computer has several advantages. Maybe you want to help troubleshoot an issue on your friend's desktop, or maybe you want to use another desktop session remotely for work.
Whatever your use case is, remote desktop tools on Linux allow you to connect easily. Of course, every tool is built differently. So, you can pick the one that suits your personal or professional requirements.
Here are the best remote desktop tools for Linux:
1. Remmina
Remmina is a versatile free and open-source remote desktop client with support for various protocols that include RDP, VNC, SPICE, X2GO, SSH, and HTTP(S).
If you want a capable open-source remote desktop tool, you cannot go wrong with it.
Along with the protocol support, it has features to let you easily take screenshots, resume connection, scale quality, configure resolutions, and more.
Moreover, the features can be extended with the help of plugins.
Pros:
- Written in GTK, providing native support to Linux distributions.
- Quick connections are set up through the server address.
- Ability to save connection profiles
- Support for multiple protocols
- Plugin to extend functionalities like Kiosk mode, Proxy support, terminal emulator, and more.
Cons:
- Available only for Linux
- It may not be very easy to use for new users
Installation π₯
Reminna is available in most of the distribution repositories. However, to ensure you get the latest version, you can install it as a Flatpak via Flathub or Snap, as you prefer.
For Flatpak, you can use the following command (if not using the software center) or follow our Flatpak guide to set it up.
flatpak install flathub org.remmina.Remmina
Suggested Read π
2. GNOME Connections
GNOME Connections is a straightforward app that lets you quickly connect to a remote desktop using RDP/VNC protocol.
It does not support other protocols or any fancy features. You get a simple one-click app with support for scaling, bandwidth tweaks, and a couple more options.
Pros:
- Easy to use and simple
- Tailored for GNOME but can work on other desktop environments
Cons:
- It does not support many protocols
- It may not offer all kinds of functionalities for most, and no plugin support
Installation π₯
You can install GNOME Connections through Flathub on any distro of your choice.
If you already have Flatpak setup, use the command below to install it via the terminal:
flatpak install flathub org.gnome.Connections
3. RustDesk
RustDesk is a Rust-based remote desktop software that works out-of-the-box without the need for much configuration. It also allows for self-hosting, to further enhance the security of your remote connection.
Pros:
- P2P connection with end-to-end encryption based on NaCl.
- Supports many hardware/software codecs.
- Cross-platform.
Cons:
- Not available on Software Center or Store apps.
Installation π₯
It is offered in various package formats such as .deb, .rpm, AppImage, and more. You can find these packages from its GitHub releases section.
4. X2Go
X2Go is an open-source, cross-platform remote desktop client with a client-server architecture. The remote machine must have an X2Go server installed, which should be a Linux system. And you can have X2Go client installed on any platform of your choice and then connect using it to the Linux remote system.
You can connect to Windows as well, using the client software, because you do not have the server available to be installed for other platforms.
So, X2Go is an excellent choice for users frequently connecting to Linux computers.
Pros:
- Linux server support
- Cross-platform clients
- SSH access, printer sharing, clipboard mode, and sound support
Cons:
- It uses a modified NX 3 protocol and does not support other protocols
Installation π₯
X2Go client is available in the software center for Ubuntu. Alternatively, you can use the below command in Debian-based Linux distribution.
sudo get install x2goclient
To install the x2go server, use the below command:
sudo add-apt-repository ppa:x2go/stable
sudo apt update
sudo apt install x2goserver x2goserver-xsession
You can explore more on its official documentation.
Suggested Read π
5. KRDC
KRDC is a free and open-source remote desktop tool built by KDE. You can find it pre-installed in some KDE-powered distributions and install it on any distribution.
It supports two protocols that include RDP and VNC. You have all the essential options like scaling and remote session management.
Pros:
- Easy to use
- Remember connection history
- Native Linux support
- Scaling support
Cons:
- No cross-platform availability; Linux only
Installation π₯
You can find KRDC from KDE's Discover Center or install it using Flathub or Snap.
If you want to install the Flatpak via the terminal, use the command below:
flatpak install flathub org.kde.krdc
6. TigerVNC
TigerVNC is a free and open-source remote computer connection tool with a client-server architecture.
In other words, you need to install the server on the remote computer and the client program to connect from.
The client program is pretty simple, with essential options like display settings and multiple tweaks for compression. TigerVNC manages to provide you with a fast experience for the remote connection compared to some other options.
Pros:
- Cross-platform
- Fast performance
Cons:
- GUI feels dated
- It does not support multiple protocols
Installation π₯
You can find packages from its GitHub releases section or grab the binaries on SourceForge. Refer to our deb file installation article if you need help with it.
7. TeamViewer (Not FOSS)
TeamViewer is a popular tool available cross-platform, even with the option to connect through mobile devices. Interestingly, there's a web client available. So, to connect to other systems, you do not need the client installed on your computer.
It is one of the oldest remote desktop-sharing tools out there. While it mentions experimental Wayland support exists, TeamViewer recommends an Xorg session.
Users frequently use TeamViewer for remote support and collaboration. While it is free for personal use cases, it needs a commercial license for businesses and enterprises.
Unlike some other options, you do not need an IP address. With TeamViewer installed on the remote computer, you get a unique ID, share it with the user you want to authorize connecting remotely, and that's it!
Pros:
- Intuitive user experience
- Good for beginners
- Mobile support
Cons:
- Need to create an account to enable desktop sharing
- Not a lightweight tool
- Not open-source
Installation π₯
TeamViewer provides binaries for Linux distributions for easy installation. You can grab the .deb package for Ubuntu or refer to our TeamViewer guide for help.
8. AnyDesk (Not FOSS)
AnyDesk is one of the industry-leading remote desktop tools with a nice feature set and secure access.
You can use it for free, along with mobile support for Android and iOS. You will need to purchase a license to unlock all of its features.
Pros:
- Cross-platform support
- Mobile support
Cons:
- Limited functionality for free
- Not open-source
Installation π₯
You can find binaries for all kinds of Linux distributions on its download page, supporting Ubuntu, openSUSE, and RHEL.
9. Apache Guacamole
Apache Guacamole is a special remote desktop tool for cloud systems (or servers).
If your server runs an operating system, you can install Apache Guacamole and access it from any other platform via the web browser. Hence, it pitches itself as a clientless remote desktop gateway.
Pros:
- Tailored for cloud computing
- Free and open-source
Cons:
- A specialized tool not fit for everyone
Recommended Read π
Wrapping Up
There are some more open-source options like FreeRDP and XRDP. FreeRDP did not work for me, but it is actively maintained. So, you can give it a try.
XRDP needs to be installed from the source. Feel free to look at it if you want to go through the hassle of compiling from source.
π¨ Let us know which one prefer from the list or if you have something else to suggest. We might update the list with your suggestion.