I was setting up a new VM instance of Guacamole today and thought it could be useful to update/tidy up the install commands list I wrote up earlier (for Ubuntu server 18.04.2).

This now includes the necessary detail for a MySQL auth install:


# How-to: Install Guacamole 1.0.0 on Ubuntu 18.04.2 server (VM)

su
apt-get install build-essential autoconf libtool m4 libpng-dev libjpeg-dev libcairo-dev libossp-uuid-dev libtelnet-dev libpango1.0-dev libfreerdp-dev libssh2-1-dev libwebp-dev libvncserver-dev libpulse-dev libvorbis-dev
apt-get install tomcat8 tomcat8-admin tomcat8-common tomcat8-user
cd /tmp
wget https://www.apache.org/dist/guacamole/1.0.0/source/guacamole-server-1.0.0.tar.gz
tar -zxvf guacamole-server-1.0.0.tar.gz
cd guacamole-server-1.0.0
./configure --with-init-dir=/etc/init.d
make
make install
ldconfig
wget https://www.apache.org/dist/guacamole/1.0.0/binary/guacamole-1.0.0.war
mkdir /etc/guacamole
cp guacamole-1.0.0.war /etc/guacamole/guacamole.war
ln -s /etc/guacamole/guacamole.war /var/lib/tomcat8/webapps/
systemctl restart tomcat8
systemctl enable guacd
systemctl start guacd

# Above this line works in standard auth mode, below is detail for MySQL auth

su
cd /tmp
apt-get install mysql-server
apt-get install libmysql-java
wget https://www.apache.org/dist/guacamole/1.0.0/binary/guacamole-auth-jdbc-1.0.0.tar.gz
tar -zxvf guacamole-auth-jdbc-1.0.0.tar.gz
mkdir /etc/guacamole/extensions
mkdir /etc/guacamole/lib
cp guacamole-auth-jdbc-1.0.0/mysql/guacamole-auth-jdbc-mysql-1.0.0.jar /etc/guacamole/extensions/
nano /etc/guacamole/guacamole.properties

mysql-hostname: localhost
mysql-port: 3306
mysql-database: guacamole_db
mysql-username: guacamole_user
mysql-password:
(ctrl-x then y)

mysql -u root -p

create database guacamole_db;
create user 'guacamole_user'@'localhost' identified by '';
grant select,insert,update,delete on guacamole_db.* to 'guacamole_user'@'localhost';
flush privileges;
quit

cat guacamole-auth-jdbc-1.0.0/mysql/schema/*.sql | mysql -u root -p guacamole_db
ln -s /usr/share/java/mysql-connector-java.jar /etc/guacamole/lib/
systemctl restart guacd
systemctl restart tomcat8.service


Go to http://<ip-address>:8080/guacamole
Default login guacadmin:guacadmin


On 31/07/2019 9:33 a.m., Ahmed Khalil wrote:
Worked great for me, thanks Ivan.

On Mon, Jul 29, 2019 at 1:33 AM ivanmarcus <ivanmar...@yahoo.com <mailto:ivanmar...@yahoo.com>> wrote:

    Ahmed,

    This works for me from a bare, brand-new, Ubuntu 18.04 VM, no
    update/upgrade.

    Note I've not much time right now so have simply got as far as
    confirming I can get the initial Guacamole login screen and gone
    no further (although I've no reason to assume it won't work as
    advertised from there):

    apt-get install build-essential autoconf libtool m4 libpng-dev
    libjpeg-dev libcairo-dev libossp-uuid-dev libtelnet-dev
    libpango1.0-dev libfreerdp-dev libssh2-1-dev libwebp-dev
    libvncserver-dev libpulse-dev libvorbis-dev
    apt-get install tomcat8 tomcat8-admin tomcat8-common tomcat8-user
    wget
    
https://www.apache.org/dist/guacamole/1.0.0/source/guacamole-server-1.0.0.tar.gz
    tar -zxvf guacamole-server-1.0.0.tar.gz
    cd guacamole-server-1.0.0
    ./configure --with-init-dir=/etc/init.d
    make
    make install
    ldconfig
    systemctl enable guacd
    systemctl start guacd
    wget
    https://www.apache.org/dist/guacamole/1.0.0/binary/guacamole-1.0.0.war
    mkdir /etc/guacamole
    cp guacamole-1.0.0.war /etc/guacamole/guacamole.war
    ln -s /etc/guacamole/guacamole.war /var/lib/tomcat8/webapps/
    systemctl restart tomcat8
    systemctl restart guacd

    go to browser and enter http://ip_address_of_vm:8080/guacamole



    On 29/07/2019 4:11 p.m., Ahmed Khalil wrote:

    Hello,

    ??

    I seen guacamole for the first time at another company, and I I
    was amazed of how beautiful this product is.??

    ??

    I have been struggling to get it to work on my personal lab for
    quite a while, I tried different guides, but never got guacamole
    to work past the "HTTP Status 404 - Not Found" when
    accessing??http://192.168.159.138:8080/guacamole??

    ??

    Can you please examine my case and guide my on the direction to
    get it to work, I have included the terminal history for how I
    installed it, nit planning to use ldap, or mysql initially, just
    the basic config on the user-mappings.xml, here is the log:

    ??

    sudo apt-get update

    sudo apt-get upgrade
    101 apt-get install guacamole-tomcat (installs tons of packages)

    Downloaded guacamole client 1.0.0.war and renamed it to guacamole.war
    119 sudo cp guacamole.war /var/lib/tomcat8/webapps
    121 sudo cp guacamole.war /usr/share/tomcat8
    122 sudo cp guacamole.war /usr/share/tomcat8/webapps
    sudo cp guacamole.war /var/lib/guacamole/guacamole.war
    132 /etc/init.d/guacd start
    133 /etc/init.d/tomcat8 restart
    139 sudo mkdir /usr/share/tomcat8/.guacamole
    141 sudo cp -s /etc/guacamole/guacamole.properties
    /usr/share/tomcat8/.guacamole
    142 sudo service tomcat8 restart
    143 sudo service guacd restart
    146 service tomcat8 status??
    147 service guacd status??
    161 sudo systemctl daemon-reload
    162 sudo service tomcat restart && sudo service guacd restart
    163 sudo service tomcat8 restart && sudo service guacd restart

    ??also added??"guacamole.home=/etc/guacamole" yo
    /var/lib/tomcat8/conf/catalina.properties

    and authorized local account login to user-mappings.xml

    Those are logs located at /var/log/tomcat8

    ??

    192.168.17.1 - -??[28/Jul/2019:20:06:53 -0700]??"GET / HTTP/1.1"
    200 1896 (that was the root default index page - works fine)
    192.168.17.1 - -??[28/Jul/2019:20:06:53 -0700]??"GET /favicon.ico
    HTTP/1.1" 404 1094
    192.168.17.1 - -??[28/Jul/2019:20:06:59 -0700]??"GET /guacamole
    HTTP/1.1" 404 1092
    192.168.17.1 - -??[28/Jul/2019:20:07:03 -0700]??"GET /guacamole
    HTTP/1.1" 404 1092
    192.168.17.1 - -??[28/Jul/2019:20:07:03 -0700]??"GET /guacamole
    HTTP/1.1" 404 1092
    192.168.17.1 - -??[28/Jul/2019:20:07:04 -0700]??"GET /guacamole
    HTTP/1.1" 404 1092
    192.168.159.1 - -??[28/Jul/2019:20:12:59 -0700]??"GET /guacamole
    HTTP/1.1" 404 1092
    192.168.159.1 - -??[28/Jul/2019:20:12:59 -0700]??"GET
    /favicon.ico HTTP/1.1" 404 1094

    ??

    catalina.out log

    27-Jul-2019 16:46:51.734
    
INFO??[localhost-startStop-1]??org.apache.catalina.startup.HostConfig.deployDescriptor
    Deploying configuration
    descriptor??[/etc/tomcat8/Catalina/localhost/guacamole.xml]
    27-Jul-2019 16:46:51.735
    
SEVERE??[localhost-startStop-1]??org.apache.catalina.startup.HostConfig.deployDescriptor
    Error deploying configuration
    descriptor??[/etc/tomcat8/Catalina/localhost/guacamole.xml]
    java.io.FileNotFoundException:
    /etc/tomcat8/Catalina/localhost/guacamole.xml (No such file or
    directory)

    ??

    27-Jul-2019 16:46:58.426
    
INFO??[localhost-startStop-1]??org.apache.catalina.startup.HostConfig.deployDescriptor
    Deploying configuration
    descriptor??[/etc/tomcat8/Catalina/localhost/guacamole.xml]
    27-Jul-2019 16:46:58.873
    
SEVERE??[localhost-startStop-1]??org.apache.catalina.core.ContainerBase.addChildInternal
    ContainerBase.addChild: start:??
    org.apache.catalina.LifecycleException: Failed to start component
    
[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/guacamole]]
    at
    org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:167)
    at
    
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:754)
    at
    org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:730)
    at
    org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
    at
    org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:624)
    at
    
org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1834)
    at
    
java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    at
    
java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    at
    
java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    at java.base/java.lang.Thread.run(Thread.java:834)
    Caused by: java.lang.NullPointerException
    at
    
org.apache.tomcat.util.scan.StandardJarScanner.process(StandardJarScanner.java:373)
    at
    
org.apache.tomcat.util.scan.StandardJarScanner.scan(StandardJarScanner.java:191)
    at
    
org.apache.catalina.startup.ContextConfig.processJarsForWebFragments(ContextConfig.java:1898)
    at
    org.apache.catalina.startup.ContextConfig.webConfig(ContextConfig.java:1120)
    at
    
org.apache.catalina.startup.ContextConfig.configureStart(ContextConfig.java:769)
    at
    
org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:299)
    at
    
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:94)
    at
    
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5134)
    at
    org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    ... 10 more

    27-Jul-2019 16:46:58.876
    
SEVERE??[localhost-startStop-1]??org.apache.catalina.startup.HostConfig.deployDescriptor
    Error deploying configuration
    descriptor??[/etc/tomcat8/Catalina/localhost/guacamole.xml]
    java.lang.IllegalStateException: ContainerBase.addChild: start:
    org.apache.catalina.LifecycleException: Failed to start component
    
[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/guacamole]]

    27-Jul-2019 16:46:58.876
    
INFO??[localhost-startStop-1]??org.apache.catalina.startup.HostConfig.deployDescriptor
    Deployment of configuration
    descriptor??[/etc/tomcat8/Catalina/localhost/guacamole.xml]??has
    finished in??[451]??ms
    27-Jul-2019 16:46:58.877
    
INFO??[localhost-startStop-1]??org.apache.catalina.startup.HostConfig.deployDirectory
    Deploying web application directory??[/var/lib/tomcat8/webapps/ROOT]

    27-Jul-2019 16:50:36.611
    
SEVERE??[localhost-startStop-1]??org.apache.catalina.startup.HostConfig.deployDescriptor
    Error deploying configuration
    descriptor??[/etc/tomcat8/Catalina/localhost/guacamole.xml]
    java.lang.IllegalStateException: ContainerBase.addChild: start:
    org.apache.catalina.LifecycleException: Failed to start component
    
[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/guacamole]]

    28-Jul-2019 20:03:28.204
    
INFO??[localhost-startStop-1]??org.apache.catalina.startup.HostConfig.deployDescriptor
    Deploying configuration
    descriptor??[/etc/tomcat8/Catalina/localhost/guacamole.xml]
    28-Jul-2019 20:03:29.440
    
SEVERE??[localhost-startStop-1]??org.apache.catalina.core.ContainerBase.addChildInternal
    ContainerBase.addChild: start:??
    org.apache.catalina.LifecycleException: Failed to start component
    
[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/guacamole]]

    ??

    ??

    ??Tested on Ubuntu 18.04 on Vmware environment.



Reply via email to