Need desktop access over the Web? Try some Guacamole

No client software required

Guacamole allows a Linux desktop to be accessed through a Web browser

Guacamole allows a Linux desktop to be accessed through a Web browser

A new open source project dubbed Guacamole allows users to access a desktop remotely through a Web browser, potentially streamlining the requirements for client support and administration.

Guacamole is a HTML5 and JavaScript (Ajax) VNC viewer, which makes use of a VNC-to-XML proxy server written in Java.

According to its developers, Guacamole is almost as responsive as native VNC and should work in any browser supporting the HTML5 canvas tag.

The Guacamole server requires a Java servlet container like Apache Tomcat, while the client side requires just a Web browser supporting HTML5 and Ajax.

Features include CopyRect encoding and client-side cursor, if both are supported by the VNC server.

With Guacamole, any Linux desktop should be accessible over the Web, without the need for dedicated client software.

The HTML 5 canvas element allows for dynamic, scriptable rendering of two dimensional shapes and bitmap images.

According to the W3C, the canvas element provides scripts with a resolution-dependent bitmap canvas, which can be used for rendering graphics or other visual images on the fly.

Guacamole release 0.2.0 (testing) was released this week and adds clipboard and mouse scroll wheel support and a redesigned user interface.

The only other requirement is a VNC server for X, the graphical display for Unix. X11vnc is recommended.

The Guacamole project online at: The software is licensed under the AGPL.

Tags Linuxopen sourceremote displaysGuacamoleXMLjavadesktop linuxvirtual desktopshtml 5VNC

More about ApacheLinuxW3CWikipedia


Antoine Martin


another new project dealing with VNC, but also NX and xpra released just recently too.

It is a bit different, as it targets LANs more than over-the-web use, but it can shadow your local display too, as well as starting new applications in seamless mode or full virtual desktops from a remote box (found automatically via mDNS if on your LAN)
All that is done through a desktop applet and menus showing all your remote applications.
Includes binaries for Linux (DEBs and RPMs) as well as Windows, FreeBSD, Solaris and OSX.

And yes, providing a VNC via web option is in the works too... stay tuned.

Daniel Lawson


Open source replacement for LogMeIn/etc

With a VPN client/server set up, this can be an open source replacement for LogMeIn and its ilk. Have the server running the shifter server component also running an OpenVPN server, with each of the client machines running the OpenVPN client, and you can have roadwarrior remote desktop!

Daniel Lawson



shifter = guacamole!



what of firewalls?

I have concerns about firewalls inbetween. Does it need to have open up HTTP port to the desktop to be accessed?



RE: what of firewalls?

Your web server (Apache Tomcat or some other servlet container) would need to be accessible from outside your network, so yes: you would need to open the HTTP or HTTPS ports.




ThinVNC is another pure web alternative that uses HTML5 to replace the old VNC.

Here you have a link to the product page. There's a exe setup ready to be used, and free for non commercial use:

<a href="" title="Web HTML5 Remote Desktop Access">ThinVNC</a>




Windows only. Fail.



The "Windows Only" comment

The "Windows only. Fail" comment was supposed to be a reply to the ThinVNC comment.



I known one of that apllication wich is very usefull.
This application is team viewer for When i provide remoute support and i dont know what kind of system is that i use this.

try that.

Joel Martin


Another alternative to Guacamole is noVNC ( noVNC takes a different approach and implements the VNC protocol in the browser instead of in a servelet proxy. The connection to the server is made via WebSockets (includes web-socket-js Flash emulator for browsers without native WebSockets support).

noVNC still requires a WebSockets to TCP socket proxy until WebSocket support is added to VNC servers. noVNC includes wsproxy which is a generic WebSockets to TCP socket proxy. wsproxy is a fairly simple python program.

Merijn Vogel


It saved my day, thank the maker of guacamole and open source in general. Behind a corporate firewall, but tomcat+ssl and guacamole still give me access to vnc machines. Without having to ask for permission to install realvnc or otherwise leaving a trace actually, which is very nice when you are in (semi-)public environments (hotels, libaries, internet bars)

Comments are now closed

Top Whitepapers

Twitter Feed

Featured Whitepapers