How to remote desktop on Ubuntu

Remote desktop on Ubuntu lets you access and control an Ubuntu computer from another device without being physically in front of it. Depending on what you need to do, you can use Ubuntu’s built-in remote desktop functionality, RDP, SSH, or dedicated remote access software.

The right method depends on whether you need full graphical desktop control or command-line access, whether you are connecting over a local network or remotely, and which operating system you are connecting from. Below, we cover the main options, how to set them up, and what to check if the connection does not work.

What is remote desktop on Ubuntu?

Remote desktop technology allows you to view and interact with an Ubuntu desktop from another computer or mobile device. Instead of working directly on the Ubuntu machine, you send keyboard and mouse input from the connecting device and see the remote desktop on your screen.

This can be useful for:

  • Remote work
  • IT support and troubleshooting
  • Server and workstation administration
  • Accessing files and applications
  • Supporting Linux users from another location
  • Managing unattended Ubuntu systems

For tasks that require a graphical interface, remote desktop provides access to the complete desktop environment. If you only need to run commands or administer a server, SSH may be a simpler alternative.

Method 1: Use Ubuntu’s built-in Remote Desktop feature

Ubuntu includes native remote desktop functionality, making it possible to share and control the desktop without installing a separate remote desktop application. The exact settings and options available can vary depending on the Ubuntu release and desktop environment.

How to enable Remote Desktop on Ubuntu

  1. Open Settings on the Ubuntu computer.
  2. Navigate to the Remote Desktop settings.
  3. Enable desktop sharing or remote control.
  4. Configure the available authentication and access settings.
  5. Identify the computer name or IP address of the Ubuntu device.
  6. Open a compatible remote desktop client on the device you want to connect from.
  7. Enter the Ubuntu computer’s address and the required credentials.
  8. Start the connection.

Before connecting, make sure both the network and firewall allow the required remote desktop traffic. Ubuntu’s built-in option is particularly suitable when you want straightforward graphical access and do not require broader device-management or remote-support functionality.

Method 2: Connect to Ubuntu using RDP

Remote Desktop Protocol, or RDP, provides graphical remote access and is particularly familiar to users working in Windows environments. For an Ubuntu remote desktop connection, the Ubuntu machine needs to be configured to accept the remote connection before another device can connect to it.

How to connect to Ubuntu with RDP

  1. Enable remote desktop functionality on the Ubuntu computer.
  2. Make sure remote connections are permitted.
  3. Find the Ubuntu device’s IP address or hostname.
  4. Open a compatible RDP client on the computer you are connecting from.
  5. Enter the Ubuntu computer’s address.
  6. Provide the required user credentials.
  7. Start the remote desktop session.

If the connection is being made from outside the local network, additional network configuration may be required depending on how remote access is set up. RDP can be a practical option in environments where users already work with remote desktop clients and need graphical access to Ubuntu machines.

Method 3: Use SSH for command-line access

A full graphical desktop is not necessary for every remote task. For server administration, configuration changes, updates, and other command-line work, SSH provides remote terminal access to Ubuntu. SSH is therefore different from a conventional remote desktop connection. Instead of displaying the Ubuntu desktop, it gives you access to the system through a terminal.

Install OpenSSH on Ubuntu

Install the SSH server with: sudo apt install openssh-server

You can then check whether the service is running with: sudo systemctl status ssh

Once SSH is configured, connect to the Ubuntu system from an SSH client using the appropriate hostname or IP address and credentials. SSH is especially useful for headless Ubuntu servers and administration tasks where a graphical interface would add unnecessary overhead.

Method 4: Use remote access software

Dedicated remote access software is another option when you need to connect to Ubuntu devices from different operating systems or locations. This approach can be particularly useful when remote connections need to work across Windows, macOS, Linux, and mobile devices, or when IT teams are supporting multiple remote endpoints.

TeamViewer supports remote connections involving Linux systems and can be used for remote support and unattended device access. Rather than replacing Ubuntu’s native tools in every scenario, it provides an alternative for environments where cross-platform access or broader remote-support workflows are required.

This is particularly relevant for:

  • Supporting remote employees
  • Accessing Ubuntu computers from other operating systems
  • Providing remote IT support
  • Managing devices across multiple locations
  • Accessing unattended systems

For a single Ubuntu machine on a local network, native remote desktop or SSH may already cover what you need. Dedicated remote access software becomes more relevant as the number of devices, users, operating systems, or locations increases.

How to remote desktop into Ubuntu from Windows, macOS, or Linux

The basic connection process is similar regardless of the device you start from: The Ubuntu computer must first be configured to accept remote connections, and the connecting device needs a client that supports the chosen connection method.

From Windows, you can use an RDP-compatible client when the Ubuntu host is configured accordingly. From another Linux device, you can use an appropriate remote desktop or SSH client. On macOS, you likewise need a client compatible with the protocol or remote access solution configured on the Ubuntu computer.

If you regularly move between operating systems, check compatibility before choosing a method. A setup that works well between two devices on the same network may not be the best choice for supporting several operating systems or connecting across different networks.

Security considerations for Ubuntu remote desktop

Any method that provides remote control of a computer should be configured with security in mind. Remote access credentials and permissions determine who can reach the Ubuntu system and what they can do once connected.

Important practices include:

  • Use strong, unique passwords.
  • Enable multi-factor authentication where the chosen solution supports it.
  • Restrict remote access to authorized users.
  • Keep Ubuntu and remote access software up to date.
  • Use encrypted connections.
  • Review access permissions regularly.
  • Avoid unnecessarily exposing remote desktop services to the public internet.
  • Apply appropriate network and firewall controls.

For business environments, access should also reflect the organization’s existing authentication, device, and security policies.

Common Ubuntu remote desktop issues

If your Ubuntu remote desktop connection fails, the problem often relates to the network, authentication, firewall, or remote desktop configuration rather than the desktop itself.

The remote desktop connection cannot be established

First, confirm that remote desktop access is enabled on the Ubuntu computer and that the device is switched on and connected to the network.

Then check that you are connecting to the correct hostname or IP address.

Authentication fails

Check that the credentials you are using belong to an account permitted to access the Ubuntu computer remotely. If credentials have recently changed, update them in the remote desktop client as well.

The Ubuntu device cannot be reached

Verify that both devices have network connectivity. A local connection and an internet-based connection can require different network configurations, so also check whether a VPN, firewall, router, or other network control is blocking the connection.

The connection works but performance is poor

Remote desktop responsiveness depends in part on available network connectivity. If the session is slow or unstable, check the connection on both the local and remote devices and reduce unnecessary network traffic where possible.

The screen does not behave as expected

Linux desktop behavior can vary according to the distribution, desktop environment, software version, and system configuration. TeamViewer’s internal Linux documentation likewise notes that desktop capabilities can differ according to the running distribution and desktop environment.

Remote desktop vs. SSH on Ubuntu

Remote desktop and SSH both let you work with an Ubuntu machine remotely, but they serve different purposes.

Remote desktop is best for:

  • Using graphical applications
  • Supporting end users
  • Troubleshooting desktop problems
  • Working with the complete Ubuntu desktop
  • Accessing applications that require a GUI

SSH is best for:

  • Server administration
  • Running commands remotely
  • Automation
  • Configuration and maintenance
  • Systems without a graphical desktop

You do not necessarily need to choose one permanently. Administrators can use SSH for routine command-line tasks and remote desktop when graphical access is required.

Best practices for Ubuntu remote access

A reliable remote desktop setup should make the Ubuntu system accessible without granting more access than necessary.

To maintain that balance:

  • Keep Ubuntu and remote access tools updated.
  • Limit remote access to users who actually need it.
  • Use strong authentication.
  • Use encrypted connections.
  • Review user and device permissions periodically.
  • Monitor remote access where appropriate.
  • Test remote connectivity before relying on it for critical support.
  • Document the connection method and configuration used for managed systems.

For larger Linux environments, consistent remote access policies can also make it easier for IT teams to support systems without maintaining a different process for every endpoint.