Manual Installation on Debian 11
In this guide, I will show you how to install Apache Guacamole server natively on Debian 11.
Apache Guacamole have a nice, official install guide for installing Guacamole natively, located at https://guacamole.apache.org/doc/gug/installing-guacamole.html#building-guacamole-server .
Update and install wget, build-essential
A fresh Debian 11 system does not come with wget or build-essential by default.
Update your Debian installation, then install the two packages.
sudo apt update && sudo apt upgrade -y
sudo apt install -y build-essential wget
Install Apache Guacamole Dependencies
You can learn more about each dependencies from the official documentation: https://guacamole.apache.org/doc/gug/installing-guacamole.html#building-guacamole-server
sudo apt install -y libcairo2-dev libjpeg62-turbo-dev libpng-dev libtool-bin uuid-dev libavcodec-dev libavformat-dev libavutil-dev libswscale-dev freerdp2-dev libpango1.0-dev libssh2-1-dev libvncserver-dev libwebsockets-dev libpulse-dev libssl-dev libvorbis-dev libwebp-dev
Install Tomcat 9
Tomcat is needed to run the Guacamole client applications.
sudo apt install -y tomcat9 tomcat9-admin
Restart and enable Tomcat9 service at boot.
sudo systemctl start tomcat9
sudo systemctl enable tomcat9
Download and Compile the Guacamole Server
Guacamole Server needs to be compile from the source before it can be use.
Download the package from the Apache website, and then extract the contents.
wget https://downloads.apache.org/guacamole/1.5.1/source/guacamole-server-1.5.1.tar.gz
tar -xzf guacamole-server-1.5.1.tar.gz
Change into the guacamole-server folder, and then run the ./configure command to run the pre-check process. This process will check your system to see if the conditions for compiling the Guacamole Server is satisfied or not.
cd guacamole-server-1.5.1
./configure --with-systemd-dir=/etc/systemd/system/
You should see the following check-list when the command finishes.
Compile the server.
make
This will take a while. Once finished, we can install the application.
sudo make install
Update symbolic links of the system libraries, and enable Guacamole to start on boot
sudo ldconfig
sudo systemctl daemon-reload
sudo systemctl enable guacd