One of my client’s requirement is to have a Ubuntu server with a Desktop Environment. Once in a while, he will call me up to look at some problem he is having with one of his GUI based application. It’s not always possible for me to physically be there to see what the problem is, so I use a trick that has saved me many times in the past. It’s simply a remote desktop with SSH Tunneling, it’s very simple and easy to set it up. As the name suggest you will need SSH access for this to work.
First you will have to install
x11vnc on the remote desktop that you are trying to login to
sudo apt-get install x11vnc and then create a tunnel using SSH
ssh user@ip_address -L 5900:localhost:5900 "x11vnc -display :0 -noxdamage" now you can use a VNC client like ‘Remote Desktop Viewer’ to connect to
localhost:5900 and you should be able to access your remote desktop. The quality of the display may or may not be ideal but it’s still simpler and quicker than setting up 100 firewall rules for a VNC server or setting up TeamViewer.