Guacamole 0.3.0 on Ubuntu 10.04

From Linuxintro
Revision as of 10:04, 26 December 2011 by imported>ThorstenStaerk

Guacamole is a program to tunnel a Linux desktop to a browser.

Sometimes in your Linux life, you need to control your servers in the internet with a graphical user interface. This is tedious when you are behind a corporate firewall blocking ssh requests to the public internet. Typical corporate firewalls only allow proxified client access to port 80, 8080 and 443 in the public internet. One way to go is to use a browser to display a Linux desktop. The solution is not, however, to use VNC for a web browser, as it will be blocked by corporate firewalls. The solution is guacamole.

Snapshot-guacamole.png

Quickstart

Here is what I did to configure Guacamole on 2011-06-25 using a rackspace server with Ubuntu 10.04 x64:

apt-get install tomcat6 libvncserver0
tar xvzf guacamole-0.3.0-ubuntu-10.04-x86-64.tar.gz
cd guacamole-0.3.0-ubuntu-10.04-x86-64
dpkg -i *.deb
  • put the software to the right place
ln -s /var/lib/guacamole/guacamole.war /var/lib/tomcat6/webapps
ln -s /etc/guacamole/guacamole.properties /var/lib/tomcat6/common/classes
  • edit /etc/guacamole/user-mapping.xml
<user-mapping>
   <authorize username="user" password="password">
      <protocol>vnc</protocol>
         <param name="hostname">localhost</param>
         <param name="port">5901</param>
         <param name="password">password</param>
    </authorize>
</user-mapping>
This will allow you to log in as user named user with the password password. A VNC service must be listening on port 5901 configured with the password password.
  • install a vnc server
apt-get install tightvncserver
  • start the vnc server
vncserver

Test it

  • Now that this has worked, you want the service to be reachable via port 80, so do a port forwarding:
ssh username@server -L localport:remoteserver:remoteport

Get a better desktop environment

If you want to see a desktop environment (rather than gray background), best modify your .vnc/xstartup to be like this:

#!/bin/sh
xrdb $HOME/.Xresources
xsetroot -solid grey
export XKL_XMODMAP_DISABLE=1
gnome-session &

This will start gnome. Several tests have shown KDE will not work. Also, if you use Ubuntu 11.10 or later, the command gnome-session will not start the complete gnome session.

See also