I remember, when the good folks at Canonical introduced the Ubuntu tour feature on their website, I wished for there to be a way to access my Ubuntu desktop via a browser for real. Although it is possible to use VNC clients to remotely access your Ubuntu desktop from anywhere including your Android phone, it would be sure good to be able to access your desktop from any computing device without having to install a client side application.
After a late night spent hunting for a solution on the internet, I am glad to share a solution with you: Guacamole. This app allows you to access your Ubuntu desktop from your browser using HTML5 and without the need for you to install any client side software. If your browser does not support HTML5 then there is something really wrong with you. Unlike Windows solutions that come gift-wrapped in nice .exe/.msi packages, installing Guacamole requires a considerable number of commands.
- There are several caveats before you begin installing the app not least of which is the fact that, for remote access purposes, a non-3D desktop like LXDE and XFCE is preferable to all the glitz and candy of KDE, GNOME and Unity. The second caveat is that the installation instructions on the Guacamole wiki page are too generalized and confusing, I have used my experience and pitfalls to write this guide. Lastily you should know by now that you need an active internet connection to install software on Ubuntu.
- Add the Guacamole PPA using the command: sudo apt-add-repository ppa:guacamole/stable&&sudo apt-get update
- Now install guacamole and its dependents: sudo apt-get install guacamole-tomcat
- You can now choose to install the version of FreeRDP and xrdp from the official repositories using the command: sudo apt-get install sudo apt-get install freerdp-x11 xrdp or compile it from source to get the latest version. If you choose to compile from source code pull down the source code using the command: git clone https://github.com/scarygliders/X11RDP-o-Matic.git . Make sure you have git installed first. When the cloning process completes enter the commands: cd X11RDP-0-Matic.git followed by sudo ./X11rdp-o-matic.sh –justdoit and then sudo ./RDPsesconfig.sh make sure to choose your desktop (xfce or lxde) when prompted by the menu
- Install more components: sudo apt-get install libguac-client-ssh0 libguac-client-rdp0
- Edit the file /etc/guacamole/user-mapping.xml using your favourite editor. There are many tweaks you can make here but the following changes will suffice:
- <authorize user=”yourLoginID” password=”your password“>
<connection name=”Put a Unique Name here”>
- Where yourLoginID and your Password are your prefered username and password respectively.
- Now restart tomcat using the commands: sudo service tomcat6 restart
- To access your desktop just type the following url in your browser:http://<IP or host address of your computer>:8080/guacamole.html
- You should be able to login using your guacamole username and password.
- You can also set up a reverse proxy using Apache/Nginx so as to access the service on port 80 or 443.
You can now access your desktop from any of your devices that support HTML5 and wow them.
Picture credit: Ubuntu.com
Source credit: I used considerable material from bmullan2