How to Establish Remote Desktop Access to Ubuntu From Windows

Affiliate Disclosure: By buying the products we recommend, you help keep the lights on at MakeUseOf. Read more.


You’re in one room, sitting in front of a PC; the data you want is in another, on a computer running Ubuntu. If both computers are in the same house, no problem; but what if they’re in the same office block? It might be a bit of a walk!

The answer, therefore, is setting up a remote desktop connection. Two good remote desktop options are available for Windows users to access Ubuntu.

Why Remote Connect to Ubuntu From Windows?

There are several reasons why you might want to remote connect to your Ubuntu computer. Perhaps you’re at work and need to log into your home computer. Alternatively, you might have an Ubuntu PC in one room, your Windows PC in another, and a desire to run updates on Ubuntu.

Remote control Ubuntu using RDP

Alternatively, you might be running an Ubuntu server. Perhaps you set this up to manage the running of a game, like Counter-Strike, or Minecraft. Either way, a method of setting up a remote connection will save a lot of time and effort.

You have two options for establishing a remote connection with your Ubuntu machine: you can use Remote Desktop (RDP) or Virtual Network Computing (VNC).

Let’s look at each method in turn.

Find Your Ubuntu PC’s IP Address

Before you can establish a connection to your Ubuntu device, you’ll need to know the IP address.

The first way is the easiest. Physically go to the Ubuntu machine, press Ctrl + Alt + T to open the Terminal, and input the command:


Look for the “inet addr” against the connection you’re currently using. For instance, if you’re on Wi-Fi, look for wlan0. If the computer is connected to the network for Ethernet, look for eth0.

Another way to find the IP address is to find the connection icon in the panel, right-click, and select Connection Information. You’ll find the IP address listed here.

Neither of these options open? You can also connect to your router directly, via your computer’s browser.

Once signed into the router’s admin console, you’ll be able to see which devices are connected. Just look for your Ubuntu device name, find the IP address, and make a note of it for later.

1. Remote Access Using SSH

Before you start, you might want to install PuTTY on your PC (or just try the built-in Windows SSH function Windows 10 SSH vs. PuTTY: Time to Switch Your Remote Access Client? Windows 10 SSH vs. PuTTY: Time to Switch Your Remote Access Client? Let's take a look at how to set up SSH access in Windows 10, and whether the new tools can supplant PuTTY. Read More ). This enables you to set up an SSH connection, which gives remote access to the Ubuntu command line.

To be clear: this isn’t a remote desktop option; there is no mouse control. But it is useful to have in order to remotely install the tools you’ll be using. SSH is often disabled by default, however, so if it is not installed, you’ll need to fix this.

In short, it depends on which Ubuntu version you’re using, and whether you’ve used SSH previously.

Once installed via the terminal (sudo apt install openssh-server) you’ll be able to make a remote connection (just using the IP address and the Ubuntu username and password) and use the terminal to install the tools you need for RDP and for VNC.

2. Remote Access Using Remote Desktop Protocol

The easiest option is to use Remote Desktop Protocol or RDP. Built into Windows, this tool can be used to establish a remote desktop connection across your home network. All you need is the IP address of the Ubuntu device.

Remotely connect to an Ubuntu PC with RDP

While the necessary software is pre-installed on Windows, you’ll need to install the xrdp tool on Ubuntu. To do this, open a Terminal window (Ctrl + Alt + T) and enter:

sudo apt install xrdp

Follow this with

sudo systemctl enable xrdp

Wait for this to install, then run the Remote Desktop application in Windows using the Start Menu or Search. Type rdp then click on Remote Desktop Connection. With the app open, input the IP address in the Computer field.

Next, click Show Options and add the Username for the Ubuntu PC. You can click Save to keep these settings for reuse on another occasion.

Click Connect to start the connection and input the Ubuntu account password when prompted. The connection will then be established, giving you full mouse and keyboard access to your remote Ubuntu computer. If you plan to use this connection often, you can create a configuration file 8 Windows Remote Desktop Connection Custom Configurations to Save You Time 8 Windows Remote Desktop Connection Custom Configurations to Save You Time Using Windows Remote Desktop Connection? Create custom remote desktop connection configurations to save a lot of time. Read More for it to save time.

Troubleshooting RDP

While RDP is a great option for remote connecting to your Ubuntu PC, with the arrival of Ubuntu 18.04 LTS, it is less reliable. There appears to be an issue with establishing a remote connection while already logged into the same account on the Ubuntu machine.

As such, the simple way around this is to simply log out of the Ubuntu computer.

If this isn’t possible, try switching the RDP connection from using the Xorg server to using X11rdp, waiting for that to fail, and then trying Xorg again.

You might also attempt connection after restarting the Linux machine.

3. Remote Access Using Virtual Network Computing

Another option with full remote desktop functionality is VNC. This requires a client application on the Windows PC and a server on Ubuntu.

On the remote PC, install the TightVNC Server component after checking for updates:

sudo apt update

Then install the server utility:

sudo apt install tightvncserver

You’ll then need to run it:

sudo tightvncserver

At this point you’ll be prompted to set a password for the connection. You’ll also be given a desktop number, usually :1. Keep a note of this.Remote connect to Ubuntu with TightVNC

Now that TightVNC Server is set up on Ubuntu, you’ll need to install the client on Windows. This can be downloaded from—make sure you choose the right version, as it is available in 32-bit and 64-bit flavors.

TightVNC tools are only available as a bundle, so once installed, look for TightVNC Viewer in Windows search.

Once you’ve launched the viewer, input the IP address of the Ubuntu box in Remote Host, followed by the desktop number. So, it might look like this:

Input the password when prompted and commence your remote desktop activity!

Making TightVNC More Secure

By default, TightVNC will encrypt your password, but nothing else. This makes it insecure for connections over the internet. Fortunately, it can be made more secure, thanks to SSH and Xming.

To use this, download and install the Xming tool for Windows from Sourceforge. Once this is done, look for the desktop shortcut, right-click, and choose Properties.

Tweak Xming properties in Windows for a secure connection to Linux

Look for the Shortcut tab, and in the Target field, enter the following:

"C:\Program Files (x86)\Xming\Xming.exe" :0 -clipboard -multiwindow

Click Apply to save the change, then OK. Double-click the icon to run Xming, then open PuTTY. Here, expand the menu on the left to Connection > SSH > X11.

Check Enable X11 Forwarding, then return to Session at the top of the menu.

Enable X11 forwarding over SSH for a secure remote desktop experience

Enter the IP address for the remote device and click Open. Moments later, a secure connection to the remote Ubuntu desktop will be available.

Choosing the Right Remote Access Solution

How you use these methods depends on what you want to get out of your remote desktop experience.

Three main options are available:

  • RDP: This uses the Windows Remote Desktop Protocol, via the open source xrdp implementation.
  • VNC: Virtual Network Computing is an alternative to RDP, but less secure.
  • VNC over SSH: Mixing VNC with SSH improves the security of the connection.

You can also use SSH to issue some remote instructions to your Ubuntu PC.

We’ve shown you three ways to establish a remote connection to your Ubuntu computer or server from Windows. Each has its advantages and disadvantages. But if you just want to quickly dip into Ubuntu, why not try the Windows Subsystem for Linux A Quick Guide to Linux Bash Shell in Windows 10 A Quick Guide to Linux Bash Shell in Windows 10 You can now run Linux on Windows. Learn more about Bash on Windows, from how and why you should install it, to hidden features you probably didn't know about. Read More , available on Windows 10?

Explore more about: Remote Access, Remote Desktop, Ubuntu, VNC.

Whatsapp Pinterest

Enjoyed this article? Stay informed by joining our newsletter!

Enter your Email

Leave a Reply

Your email address will not be published. Required fields are marked *

  1. Bill Pennock
    August 8, 2019 at 7:06 pm

    Need to also allow the port before this will work
    sudo nfw allow 3389/tcp

  2. Palash Aggrawal
    November 11, 2018 at 7:46 pm

    Doesn't ssh work only when the two systems are in the same network? I read that the reason is NAT. I even tried to ssh into my ubuntu machine from outside my home network, but couldn't. What is the way out?

  3. Wellington Torrejais da Silva
    June 29, 2018 at 12:46 pm

    Nice tutorial. Thanks!

  4. Prasanta Shee
    May 16, 2018 at 7:06 am

    You can use tools like logmein, Teamviewer, R-HUB remote support servers etc. for remotely establishing remote desktop access from Windows to Ubuntu.

  5. Tim ODell
    December 12, 2016 at 1:31 am

    This article assumes there is some sort of Windows-like interface installed. It would be helpful to start at the beginning and list prerequisites (a GUI? Which one? or this addreses "X" install of Ubuntu) -- the selection string "System > Preferences > Remote Desktop " doesn't work from the CLI. I'm using from a server installation (because it uses less resources), so maybe a redirect to the "Linux connect" section at the beginning would be helpful for a remote console connection.

  6. Nogero
    December 23, 2009 at 6:50 pm

    NX, which I think is the same as freenx can't be beat for speed and all around use. It is quite easy to install. Download the client, click, click, click. Download the three packages for the server, then do:
    sudo dpkg -i nx*
    Use the wizard to connect first time, thereafter it is one easy click. I used to be a loyal tightvnc user until I discovered NX. Official site and d/l:
    Available for all platforms. It runs over SSH port 22. So fast you will forget you are not on the console.

  7. the_guv
    December 8, 2009 at 4:34 am
  8. the_guv
    December 8, 2009 at 4:26 am

    Varun's solution is ideal for Linux initiates, sure, but FreeNX beats it for speed ...

    For the more adventurous, maybe the best remote access is with ...

    ... but their docs are appalling .. so Google, say, ubuntu openvpn.

    @Mike .. I *think* the above is as close as it gets, but I dunno much on these web apps.

  9. Mike Wilson
    November 30, 2009 at 12:31 pm

    How about a solution like Logmein or Teamviewer that would allow me to connect to my work machine while at home over the internet? I used to use Hamachi and a vnc but was wondering if you knew of a single dedicated client like Logmein for Ubuntu.