What is Guacamole?
Guacamole is an HTML5 remote desktop gateway.
Guacamole provides access to desktop environments
using remote desktop protocols like VNC and RDP. A
centralized server acts as a tunnel and proxy, allowing
access to multiple desktops through a web browser.
No browser plugins are needed, and no client
software needs to be installed. The client requires
nothing more than a web browser supporting HTML5 and
The latest release of Guacamole is
Pre-built packages for Guacamole and its components may be
already available in your distribution's repository. Ubuntu
users can also obtain recent stable builds from the Guacamole stable PPA.
If your distribution does not provide packages for
Guacamole, or the packages provided are too out-of-date, you
can also build Guacamole and all its components from source. General
and distribution-specific installation
instructions are provided in the Guacamole manual.
The proxy required by the web application, guacd, is part of
guacamole-server and built along with libguac and all protocol
support by the guacamole-server package.
The so-called "guacamole-client" package below is not client
software, but rather the web application that runs on the
server. When a user connects to this web application using
Both "guacamole-server" and "guacamole-client" must be
installed on the server for Guacamole to work. No software
needs to be installed on any client machine.
Guacamole supports extensions. Currently, there are
supported extensions for MySQL-driven authentication,
integration with LDAP, and disabling the authentication
entirely. Other extensions can be developed with the
The MySQL authentication module provides features not
present with the default authentication mechanism, like the
ability to manage users and connections from within the web
The LDAP authentication module allows all Guacamole users
and connections to be managed through an LDAP directory.
Disabled Authentication ("NoAuth")
The "NoAuth" authentication module removes authentication
entirely, providing a static set of connections to all users
of the web application without prompting for a username or
Guacamole is supported by Glyptodon LLC, through
donations to the project from the community, and by corporate
sponsors that fund changes for the benefit of the community.
If you appreciate Guacamole and would like to donate, thank
you! We accept donations through PayPal.
Another way to send money to the project is to buy the print
version of the manual. The Guacamole User's Guide is updated
with every release and as necessary. The contents are available for free here as the
official documentation, but having a physical reference is
always nice, and proceeds from book sales enter the project
directly as donations.
Beware that the contents of the book are currently
out-of-date. We are currently in the process of
proofreading and releasing a new edtion covering
Code contributions are also always welcome. If you have
patches you think would benefit the project, feel free to
contact us via IRC or email, or open a new ticket on Trac with your patch attached.
Public discussion of development efforts is done over IRC at
freenode.net on the #guacamole-dev channel. If you wish to
develop a Guacamole-based web application, or to develop new
protocol support plugins for guacd, please consult the API documentation.
If you need help getting started, the manual contains
If you need (or wish to provide) help with Guacamole, there
on the SourceForge
project page. You will need to register a username with
SourceForge to use the forums. There
is also an IRC channel on freenode.net dedicated to
Guacamole support: #guacamole-help.
If you think you've encountered a bug in Guacamole or any of
its components, or you wish to request a feature, please create
a new ticket at the Trac system hosted here. New tickets and
comments are moderated to prevent spam. Be sure to provide
your email address if you wish to be kept updated regarding