I have Ubuntu installed on my work computer. I am wondering whether I could have access to it from another computer with Windows installed. If so, could you give a step by step guide, please? Thank you!

  • 1
    You could ask your IT department whether or not secure shell is installed, then connect to your work computer using PuTTY – Sergiy Kolodyazhnyy Mar 4 '15 at 7:12
  • Added an answer, give it a try – Faizan Akram Dar Mar 4 '15 at 7:18
  • 1
    You can use any one of following. 1. PuTTY 2. VNC – Novice Mar 4 '15 at 7:20
  • Is this work computer at work? Does your work allow remote connection? Firewalls? – damien Mar 4 '15 at 12:51
  • Yes you can. Check out the first answer for this question, url below. It is the easiest and fastest working solution. Tested it myself. askubuntu.com/questions/477947/… – Ubuntuser Jan 13 '16 at 6:00
up vote 123 down vote accepted

Yes, you can access Ubuntu from Windows remotely.

Taken from this article.

Follow these steps :

Step 1 – Install xRDP

Open Terminal (Crtl+Alt+T) and execute the following commands:

sudo apt-get update
sudo apt-get install xrdp

Step 2 – Install XFCE4 ( Unity doesn't seem to support xRDP in Ubuntu 14.04; although, in Ubuntu 12.04 it was supported ). That's why we install Xfce4.

sudo apt-get install xfce4

Step 3 – Configure xRDP

In this step, we modify two files to make sure xRDP uses Xfce4. First we need to create, or edit, our .xsession file in our home directory. We can either use nano or simply redirect an echo statement (easier):

echo xfce4-session > ~/.xsession

The second file we need to edit is the startup file for xRDP, so it will start Xfce4.

sudo nano /etc/xrdp/startwm.sh

The content should look like this (pay attention to the last line and ignore . /etc/X11/Xsession):

#!/bin/sh

if [ -r /etc/default/locale ]; then
  . /etc/default/locale
  export LANG LANGUAGE
fi

startxfce4

Step 4 – Restart xRDP

To make all these changes effective, restart xRDP as such:

sudo service xrdp restart

Testing your xRDP connection

On the computer that will remotely control your Ubuntu machine, start you RDP client. Windows comes standard with a Remote Desktop client (mstsc.exe – you can start it from a command prompt, or find the shortcut to Remote Desktop under Accessories). Or Search 'remote' in start (Windows 7) Or 'remote' in search box in Windows 8.

Remote Desktop Connection

Whichever client you use, most will work with either the computer network name or IP address of your Ubuntu machine.

To find the IP address on your Ubuntu box, type:

hostname -I

(note: this is a capital “i”)

Enter IP address of your Ubuntu machine. For example:

enter image description here

Depending on your RDP client capabilities and settings (for example: Microsoft RDP Client allows automatic login), you might or might not see the login screen. Here we enter our Ubuntu username and password and click “OK”

xRDP – Login screen

You are done,enjoy

RDP – Your Ubuntu xfce4 desktop

PS: There are some good points mentioned in comments, so I thought to sum them up.

  • If you want to access Ubuntu from outside network, you'll need your Ubuntu at work to have it's own, proper, internet IP address - a fairly unlikely scenario. To work it otherwise, you need the externally visible address of work, AND have port forwarding set to direct incoming RDP requests to your work computer on the router. (Mark Williams)

  • To use the Ubuntu MATE desktop meta-session, replace last line startxfce4 in startwm.sh with mate-session. (Frank N)

  • You can use your actual machine name (by typing hostname) rather than your IP as it might be more stable on dynamic IPs in future sessions. (Frank N)

  • 7
    Odds are this will hit trouble, if the OP means from outside - your example uses a 192.168.1.* address, which is reserved for internal networks - it won't cross the internet. You'll need your Ubuntu box at work to have it's own, proper, internet IP address - a fairly unlikely scenario. To work it otherwise, you need the externally visible address of 'work', AND have port forwarding set to direct incoming RDP requests to your work computer on the router. OK if inside the network though – Mark Williams Mar 4 '15 at 8:42
  • 5
    I have an Ubuntu server and a Windows machine at home, and I'm trying to connect the latter to the former. I followed the instructions above, but after I log into xrdp, all I get is a dialog that says "Connecting to sesman ip 127.0.0.1 port 3350" with an 'OK' button, and nothing more. Any idea why? – Yuval Jan 17 '16 at 18:22
  • 1
    Is ubuntu server and windows on the same network? I mean are you connecting them locally or via internet? Add IP address of your sever on windows machine as shown above, if both systems are on the same local network then the address of the both would be something like 192.xxx.xxx.xxx . If you are connecting across internet then you need to add IP address of remote machine and allow port forwarding on your router, Search google for port forwarding – Faizan Akram Dar Jan 18 '16 at 18:03
  • 2
    hint: To use the ubuntu MATE desktop meta-session, replace last line startxfce4 in startwm.sh with mate-session – Frank Nocke Feb 13 '16 at 18:30
  • 2
    using your actual machine name (by typing hostname) rather than your IP might be more stable on dynamic IPs in future sessions... – Frank Nocke Feb 14 '16 at 12:13

MobaXterm

http://mobaxterm.mobatek.net/

Freeware implementation the X server on windows.

No need to install anything on Ubuntu.

After you connect, you start out with a shell.

Then, if you start a program from the shell, e.g.:

xeyes

xeyes opens as a separate native Windows window.

It just worked out of the box between Windows 10 and Ubuntu 16.04 through a VPN.

It incurs an acceptable lag and resolution loss, even for complex applications like firefox and eclipse, but it is clearly not just dumbly streaming your desktop as video, and actually implementing X widgets.

One annoyance is that if you opened the window at work, and then you get home, you have to start a new instance of the app, and you can't see the already opened window. This is made further annoying by applications that work in single window mode, e.g. browsers: you will have to search for how to force a new instance, and then you will have two instances running.

Cygwin/X

https://x.cygwin.com/

GPL alternative to MobaXterm. Haven't tried it yet, but behaviour should be the same in theory: https://youtu.be/ENkOEknSLv4?t=105

VNC

I've tried the following programs, but they were sending the desktop as video, which incurred unacceptable screen resolution loss / mouse inaccuracy / network bandwidth.

Servers (run on Ubuntu):

Clients (run on Windows):

  • TigerVNC

PuTTY

The go-to solution if all you want is a text terminal via SSH.

It is very convenient as it integrates both an xterm emulator and SSH / telnet and other protocols in a single package.

Then add tmux attach to the mix, and you can use the exact same terminals on work and at home, which is awesome. There are however some annoying glitches with environment variables, particularly DISPLAY: https://unix.stackexchange.com/questions/75681/why-do-i-have-to-re-set-env-vars-in-tmux-when-i-re-attach

  • 1
    I tried MobaXterm. Looks good so far. Thanks. – Pale Blue Dot Nov 11 '17 at 8:07

The best one I found is x2go.

Install on the linux machine http://wiki.x2go.org/doku.php/doc:installation:x2goserver

Install client on the windows machine: http://wiki.x2go.org/doku.php/download:start

Tune compression if it feels slow: (TL;DR use 4k-png) https://uwaterloo.ca/science-computing/student-support/x2go-tutorial

protected by Community Jun 10 '16 at 19:43

Thank you for your interest in this question. Because it has attracted low-quality or spam answers that had to be removed, posting an answer now requires 10 reputation on this site (the association bonus does not count).

Would you like to answer one of these unanswered questions instead?

Not the answer you're looking for? Browse other questions tagged or ask your own question.