You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@guacamole.apache.org by erez <er...@trustpeers.com> on 2020/09/02 13:00:55 UTC
Guacamole Java API - Exception is thrown when calling
GuacamoleReader.read()
Hello,
We have a running guacamole system that works well. Usually, there are no
problems, we can create connections from the website through the guacamole
webserver.
However, sometimes, like 10% of the connections, are closing unexpectedly,
after an exception is thrown, but there is no clue why this is happening.
The error happens in the function doRead, when calling the function:
char[] message = reader.read();
After this call, an exception is thrown, saying "Non-numeric character in
element length."
Note, sometimes another exception is thrown (not sure from what call) that
says "Element terminator of instruction was not ';' nor ','"
The exceptions cause closing the tunnel, therefore the next 'read' query
from the client is responded with 404 'No such tunnel'.
Tried to search on the web but nothing seems to be the solution, as 90% of
the times the connection succeeded.
Thanks!
--
Sent from: http://apache-guacamole-general-user-mailing-list.2363388.n4.nabble.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@guacamole.apache.org
For additional commands, e-mail: user-help@guacamole.apache.org
RE: don't see ldap users
Posted by fou fe <fo...@live.fr>.
Hi Nick,
ok it's work.
Thank you again for your great support.
-Fouad
________________________________
De : Nick Couchman <vn...@apache.org>
Envoyé : vendredi 4 septembre 2020 13:09
À : user@guacamole.apache.org <us...@guacamole.apache.org>
Objet : Re: don't see ldap users
On Fri, Sep 4, 2020 at 3:27 AM fou fe <fo...@live.fr>> wrote:
Hello,
I have fresh guacamole 1.2.0 installed in latest buster with mysql and ldap extensions. Everything is good except that i don't see ldap users in gui.
I already create user with admin system in guacamole that belong in ldap. I used thar user but i don't see ldap users.
In tomcat logs with debug there is no errors and jars are loaded.
-Mysql extensions work .
-ldapsearch work
Generally speaking this tends to happen when you've created the LDAP admin user in Guacamole and have set the password to the same thing in the JDBC module as your LDAP password. If the password for the user in the JDBC module is set to the same as LDAP, when the authentication system processes the logins it will succeed on the JDBC login and never make it to the LDAP login, which will result in the behavior you're seeing. The solution is to either not set a password at all when you create that user in JDBC (it will actually auto-generate a random, complex password for the user), or change it in the JDBC module to something other than what it is in LDAP and log in with the *LDAP* password.
There is tomcat log and my guacamole.propreties
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
[2020-09-04 09:12:34] [info] com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114)
[2020-09-04 09:12:34] [warning] L'application web [guacamole] semble avoir démarré un thread nommé [com.google.inject.internal.util.$Finalizer] mais ne l'a pas arrêté, ce qui va probablement créer une fuite de mémoire; la trace du thread est:
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.Object.wait(Native Method)
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
[2020-09-04 09:12:34] [info] com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114)
[2020-09-04 09:12:34] [info] Arrêt du gestionnaire de protocole ["http-nio-8080"]
[2020-09-04 09:12:34] [info] Destruction du gestionnaire de protocole ["http-nio-8080"]
[2020-09-04 09:12:55] [info] NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io<http://java.io>=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[2020-09-04 09:12:55] [info] Version du serveur: Apache Tomcat/9.0.31 (Debian)
[2020-09-04 09:12:55] [info] Serveur compilé: Jul 15 2020 11:43:33 UTC
[2020-09-04 09:12:55] [info] Version du serveur: 9.0.31.0
[2020-09-04 09:12:55] [info] Nom de l'OS: Linux
[2020-09-04 09:12:55] [info] Version de l'OS: 4.19.0-10-amd64
[2020-09-04 09:12:55] [info] Architecture: amd64
[2020-09-04 09:12:55] [info] Répertoire de Java: /usr/lib/jvm/java-11-openjdk-amd64
[2020-09-04 09:12:55] [info] Version de la JVM: 11.0.8+10-post-Debian-1deb10u1
[2020-09-04 09:12:55] [info] Fournisseur de la JVM: Debian
[2020-09-04 09:12:55] [info] CATALINA_BASE: /var/lib/tomcat9
[2020-09-04 09:12:55] [info] CATALINA_HOME: /usr/share/tomcat9
[2020-09-04 09:12:55] [info] Argument de la ligne de commande: --add-opens=java.base/java.lang=ALL-UNNAMED
[2020-09-04 09:12:55] [info] Argument de la ligne de commande: --add-opens=java.base/java.io<http://java.io>=ALL-UNNAMED
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.util.logging.config.file=/var/lib/tomcat9/conf/logging.properties
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.awt.headless=true
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djdk.tls.ephemeralDHKeySize=2048
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Dorg.apache.catalina.security.SecurityListener.UMASK=0027
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Dignore.endorsed.dirs=
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Dcatalina.base=/var/lib/tomcat9
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Dcatalina.home=/usr/share/tomcat9
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.io.tmpdir=/tmp
[2020-09-04 09:12:56] [info] Un version ancienne [1.2.21] de la bibliothèque Apache Tomcat Native basée sur APR est installée, alors que Tomcat recommande au minimum la version [1.2.23]
[2020-09-04 09:12:56] [info] Chargement de la librairie Apache Tomcat Native [1.2.21] en utilisant APR version [1.6.5]
[2020-09-04 09:12:56] [info] Fonctionnalités d'APR: IPv6 [true], sendfile [true], accept filters [false], random [true]
[2020-09-04 09:12:56] [info] Configuration de APR/OpenSSL: useAprConnector [false], useOpenSSL [true]
[2020-09-04 09:12:56] [info] OpenSSL a été initialisé avec succès [OpenSSL 1.1.1d 10 Sep 2019]
[2020-09-04 09:12:56] [info] Initialisation du gestionnaire de protocole ["http-nio-8080"]
[2020-09-04 09:12:56] [info] L'initialisation du serveur a pris [1 115] millisecondes
[2020-09-04 09:12:56] [info] Démarrage du service [Catalina]
[2020-09-04 09:12:56] [info] Démarrage du moteur de Servlets: [Apache Tomcat/9.0.31 (Debian)]
[2020-09-04 09:12:56] [info] Déploiement du descripteur de configuration [/etc/tomcat9/Catalina/localhost/host-manager.xml]
[2020-09-04 09:12:56] [warning] L'attribut path avec la valeur [/host-manager] dans le descripteur de déploiement [/etc/tomcat9/Catalina/localhost/host-manager.xml] a été ignoré
[2020-09-04 09:12:58] [info] Au moins un fichier JAR a été analysé pour trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal peut être activé pour obtenir une liste complète de JAR scannés sans succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement le temps de démarrage et le temps de compilation des JSPs
[2020-09-04 09:12:58] [info] Le traitement du descripteur de déploiement [/etc/tomcat9/Catalina/localhost/host-manager.xml] a pris [2 072] ms
[2020-09-04 09:12:58] [info] Déploiement du descripteur de configuration [/etc/tomcat9/Catalina/localhost/manager.xml]
[2020-09-04 09:12:58] [warning] L'attribut path avec la valeur [/manager] dans le descripteur de déploiement [/etc/tomcat9/Catalina/localhost/manager.xml] a été ignoré
[2020-09-04 09:12:59] [info] Au moins un fichier JAR a été analysé pour trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal peut être activé pour obtenir une liste complète de JAR scannés sans succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement le temps de démarrage et le temps de compilation des JSPs
[2020-09-04 09:12:59] [info] Le traitement du descripteur de déploiement [/etc/tomcat9/Catalina/localhost/manager.xml] a pris [765] ms
[2020-09-04 09:12:59] [info] Déploiement de l'archive [/var/lib/tomcat9/webapps/guacamole.war] de l'application web
[2020-09-04 09:13:01] [info] Au moins un fichier JAR a été analysé pour trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal peut être activé pour obtenir une liste complète de JAR scannés sans succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement le temps de démarrage et le temps de compilation des JSPs
[2020-09-04 09:13:01] [info] 09:13:01.863 [main] INFO o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
[2020-09-04 09:13:01] [info] 09:13:01.989 [main] INFO o.a.g.rest.auth.HashTokenSessionMap - Sessions will expire after 60 minutes of inactivity.
[2020-09-04 09:13:02] [info] 09:13:02.089 [main] INFO org.apache.guacamole.log.LogModule - Loading logback configuration from "/etc/guacamole/logback.xml".
[2020-09-04 09:13:02] [info] 09:13:02.152 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "cs"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "nl"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "en"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "zh"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "fr"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "ru"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "de"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "ja"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "no"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "es"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "it"
[2020-09-04 09:13:02] [info] 09:13:02.155 [main] DEBUG o.a.g.extension.ExtensionModule - Loading extension: "guacamole-auth-jdbc-mysql-1.2.0.jar"
[2020-09-04 09:13:02] [info] 09:13:02.208 [main] DEBUG o.a.g.extension.ExtensionModule - [0] Binding AuthenticationProvider "org.apache.guacamole.auth.mysql.MySQLAuthenticationProvider".
[2020-09-04 09:13:02] [info] 09:13:02.218 [main] INFO o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
[2020-09-04 09:13:03] [info] 09:13:03.797 [main] DEBUG o.a.g.extension.ExtensionModule - [1] Binding AuthenticationProvider "org.apache.guacamole.auth.mysql.MySQLSharedAuthenticationProvider".
[2020-09-04 09:13:03] [info] 09:13:03.859 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "es"
[2020-09-04 09:13:03] [info] 09:13:03.874 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "ru"
[2020-09-04 09:13:03] [info] 09:13:03.878 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "de"
[2020-09-04 09:13:03] [info] 09:13:03.882 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "fr"
[2020-09-04 09:13:03] [info] 09:13:03.887 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "ja"
[2020-09-04 09:13:03] [info] 09:13:03.898 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "en"
[2020-09-04 09:13:03] [info] 09:13:03.899 [main] INFO o.a.g.extension.ExtensionModule - Extension "MySQL Authentication" loaded.
[2020-09-04 09:13:03] [info] 09:13:03.899 [main] DEBUG o.a.g.extension.ExtensionModule - Loading extension: "guacamole-auth-ldap-1.2.0.jar"
[2020-09-04 09:13:03] [info] 09:13:03.908 [main] DEBUG o.a.g.extension.ExtensionModule - [2] Binding AuthenticationProvider "org.apache.guacamole.auth.ldap.LDAPAuthenticationProvider".
[2020-09-04 09:13:03] [info] 09:13:03.909 [main] INFO o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
[2020-09-04 09:13:04] [info] 09:13:04.199 [main] WARN o.a.g.e.LanguageResourceService - Overlay language resource "de" does not exist.
[2020-09-04 09:13:04] [info] 09:13:04.201 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "en"
[2020-09-04 09:13:04] [info] 09:13:04.201 [main] INFO o.a.g.extension.ExtensionModule - Extension "LDAP Authentication" loaded.
[2020-09-04 09:13:04] [info] 09:13:04.202 [main] DEBUG o.a.g.extension.ExtensionModule - [3] Binding AuthenticationProvider "org.apache.guacamole.auth.file.FileAuthenticationProvider".
[2020-09-04 09:13:04] [info] 09:13:04.203 [main] INFO o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
[2020-09-04 09:13:04] [info] 09:13:04.331 [main] INFO o.a.g.t.w.WebSocketTunnelModule - Loading JSR-356 WebSocket support...
[2020-09-04 09:13:04] [info] 09:13:04.356 [main] DEBUG o.a.guacamole.tunnel.TunnelModule - WebSocket module loaded: org.apache.guacamole.tunnel.websocket.WebSocketTunnelModule
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.RESTExceptionMapper as a provider class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.extension.ExtensionRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.language.LanguageRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.patch.PatchRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.auth.TokenRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.session.SessionRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.codehaus.jackson.jaxrs.JacksonJsonProvider as a provider class
[2020-09-04 09:13:04] [info] Initiating Jersey application, version 'Jersey: 1.17.1 02/28/2013 12:47 PM'
[2020-09-04 09:13:04] [info] Binding org.apache.guacamole.rest.RESTExceptionMapper to GuiceManagedComponentProvider with the scope "Singleton"
[2020-09-04 09:13:04] [info] Binding org.codehaus.jackson.jaxrs.JacksonJsonProvider to GuiceManagedComponentProvider with the scope "Singleton"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.extension.ExtensionRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.language.LanguageRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.patch.PatchRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.auth.TokenRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.session.SessionRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] WebjarsServlet initialization completed
[2020-09-04 09:13:05] [info] Le déploiement de l'archive de l'application web [/var/lib/tomcat9/webapps/guacamole.war] s'est terminé en [5 967] ms
[2020-09-04 09:13:05] [info] Déploiement du répertoire d'application web [/var/lib/tomcat9/webapps/ROOT]
[2020-09-04 09:13:06] [info] Au moins un fichier JAR a été analysé pour trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal peut être activé pour obtenir une liste complète de JAR scannés sans succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement le temps de démarrage et le temps de compilation des JSPs
[2020-09-04 09:13:06] [info] Le déploiement du répertoire [/var/lib/tomcat9/webapps/ROOT] de l'application web s'est terminé en [720] ms
[2020-09-04 09:13:06] [info] Démarrage du gestionnaire de protocole ["http-nio-8080"]
[2020-09-04 09:13:06] [info] Le démarrage du serveur a pris [9 693] millisecondes
The logs here stop after the application is loaded and do not show the actual login attempt. If you look at the logs past this, when you're actually logging in, you should see messages related to the admin user being logged in, and this will indicate what module has authenticated the user.
-----------
#propreties
auth-provider: net.sourceforge.guacamole.net.auth.ldap.LDAPAuthenticationProvider
guacd-hostname: localhost
guacad-port: 4822
#ldap
ldap-hostname: ldapserver
ldap-port: 389
ldap-encryption-method: none
#ldap-search-bind-dn: ou=people,dc=firm,dc=fr
ldap-user-base-dn: ou=people,dc=firm,dc=fr
ldap-max-search-results: 5000
#mysql
mysql-hostname: localhost
mysql-port: 3306
mysql-database: guaca_db
mysql-username: guaca_user
mysql-password: password
-------------------
This also could be an issue. If you do not specify the "ldap-search-bind-dn" property, Guacamole will not search for users - it will, instead, derive the user DN from the combination of login attribute (ldap-username-attribute), the username entered, and then the ldap-user-base-dn field. It has been a while since I tried using that configuration (it doesn't work in my AD environment), so I cannot remember exactly how it behaves, but if the solution above doesn't work it may be worth setting the ldap-search-bind-dn and password to see if that helps.
-Nick
Re: don't see ldap users
Posted by Nick Couchman <vn...@apache.org>.
On Fri, Sep 4, 2020 at 3:27 AM fou fe <fo...@live.fr> wrote:
> Hello,
> I have fresh guacamole 1.2.0 installed in latest buster with mysql and
> ldap extensions. Everything is good except that i don't see ldap users in
> gui.
> I already create user with admin system in guacamole that belong in ldap.
> I used thar user but i don't see ldap users.
> In tomcat logs with debug there is no errors and jars are loaded.
> -Mysql extensions work .
> -ldapsearch work
>
>
Generally speaking this tends to happen when you've created the LDAP admin
user in Guacamole and have set the password to the same thing in the JDBC
module as your LDAP password. If the password for the user in the JDBC
module is set to the same as LDAP, when the authentication system processes
the logins it will succeed on the JDBC login and never make it to the LDAP
login, which will result in the behavior you're seeing. The solution is to
either not set a password at all when you create that user in JDBC (it will
actually auto-generate a random, complex password for the user), or change
it in the JDBC module to something other than what it is in LDAP and log in
with the *LDAP* password.
> There is tomcat log and my guacamole.propreties
> [2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
>
> [2020-09-04 09:12:34] [info] java.base@11.0.8
> /java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
> [2020-09-04 09:12:34] [info]
> com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114)
> [2020-09-04 09:12:34] [warning] L'application web [guacamole] semble avoir
> démarré un thread nommé [com.google.inject.internal.util.$Finalizer] mais
> ne l'a pas arrêté, ce qui va probablement créer une fuite de mémoire; la
> trace du thread est:
> [2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.Object.wait(Native
> Method)
> [2020-09-04 09:12:34] [info] java.base@11.0.8
> /java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
> [2020-09-04 09:12:34] [info] java.base@11.0.8
> /java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
> [2020-09-04 09:12:34] [info]
> com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114)
> [2020-09-04 09:12:34] [info] Arrêt du gestionnaire de protocole
> ["http-nio-8080"]
> [2020-09-04 09:12:34] [info] Destruction du gestionnaire de protocole
> ["http-nio-8080"]
> [2020-09-04 09:12:55] [info] NOTE: Picked up JDK_JAVA_OPTIONS:
> --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED
> --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
> [2020-09-04 09:12:55] [info] Version du serveur: Apache
> Tomcat/9.0.31 (Debian)
> [2020-09-04 09:12:55] [info] Serveur compilé: Jul 15 2020 11:43:33
> UTC
> [2020-09-04 09:12:55] [info] Version du serveur: 9.0.31.0
> [2020-09-04 09:12:55] [info] Nom de l'OS: Linux
> [2020-09-04 09:12:55] [info] Version de l'OS: 4.19.0-10-amd64
> [2020-09-04 09:12:55] [info] Architecture: amd64
> [2020-09-04 09:12:55] [info] Répertoire de Java:
> /usr/lib/jvm/java-11-openjdk-amd64
> [2020-09-04 09:12:55] [info] Version de la JVM:
> 11.0.8+10-post-Debian-1deb10u1
> [2020-09-04 09:12:55] [info] Fournisseur de la JVM: Debian
> [2020-09-04 09:12:55] [info] CATALINA_BASE: /var/lib/tomcat9
> [2020-09-04 09:12:55] [info] CATALINA_HOME: /usr/share/tomcat9
> [2020-09-04 09:12:55] [info] Argument de la ligne de commande:
> --add-opens=java.base/java.lang=ALL-UNNAMED
> [2020-09-04 09:12:55] [info] Argument de la ligne de commande:
> --add-opens=java.base/java.io=ALL-UNNAMED
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Djava.util.logging.config.file=/var/lib/tomcat9/conf/logging.properties
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Djava.awt.headless=true
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Djdk.tls.ephemeralDHKeySize=2048
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Dorg.apache.catalina.security.SecurityListener.UMASK=0027
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Dignore.endorsed.dirs=
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Dcatalina.base=/var/lib/tomcat9
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Dcatalina.home=/usr/share/tomcat9
> [2020-09-04 09:12:56] [info] Argument de la ligne de commande:
> -Djava.io.tmpdir=/tmp
> [2020-09-04 09:12:56] [info] Un version ancienne [1.2.21] de la
> bibliothèque Apache Tomcat Native basée sur APR est installée, alors que
> Tomcat recommande au minimum la version [1.2.23]
> [2020-09-04 09:12:56] [info] Chargement de la librairie Apache Tomcat
> Native [1.2.21] en utilisant APR version [1.6.5]
> [2020-09-04 09:12:56] [info] Fonctionnalités d'APR: IPv6 [true], sendfile
> [true], accept filters [false], random [true]
> [2020-09-04 09:12:56] [info] Configuration de APR/OpenSSL: useAprConnector
> [false], useOpenSSL [true]
> [2020-09-04 09:12:56] [info] OpenSSL a été initialisé avec succès [OpenSSL
> 1.1.1d 10 Sep 2019]
> [2020-09-04 09:12:56] [info] Initialisation du gestionnaire de protocole
> ["http-nio-8080"]
> [2020-09-04 09:12:56] [info] L'initialisation du serveur a pris [1 115]
> millisecondes
> [2020-09-04 09:12:56] [info] Démarrage du service [Catalina]
> [2020-09-04 09:12:56] [info] Démarrage du moteur de Servlets: [Apache
> Tomcat/9.0.31 (Debian)]
> [2020-09-04 09:12:56] [info] Déploiement du descripteur de configuration
> [/etc/tomcat9/Catalina/localhost/host-manager.xml]
> [2020-09-04 09:12:56] [warning] L'attribut path avec la valeur
> [/host-manager] dans le descripteur de déploiement
> [/etc/tomcat9/Catalina/localhost/host-manager.xml] a été ignoré
> [2020-09-04 09:12:58] [info] Au moins un fichier JAR a été analysé pour
> trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal
> peut être activé pour obtenir une liste complète de JAR scannés sans
> succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement
> le temps de démarrage et le temps de compilation des JSPs
> [2020-09-04 09:12:58] [info] Le traitement du descripteur de déploiement
> [/etc/tomcat9/Catalina/localhost/host-manager.xml] a pris [2 072] ms
> [2020-09-04 09:12:58] [info] Déploiement du descripteur de configuration
> [/etc/tomcat9/Catalina/localhost/manager.xml]
> [2020-09-04 09:12:58] [warning] L'attribut path avec la valeur [/manager]
> dans le descripteur de déploiement
> [/etc/tomcat9/Catalina/localhost/manager.xml] a été ignoré
> [2020-09-04 09:12:59] [info] Au moins un fichier JAR a été analysé pour
> trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal
> peut être activé pour obtenir une liste complète de JAR scannés sans
> succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement
> le temps de démarrage et le temps de compilation des JSPs
> [2020-09-04 09:12:59] [info] Le traitement du descripteur de déploiement
> [/etc/tomcat9/Catalina/localhost/manager.xml] a pris [765] ms
> [2020-09-04 09:12:59] [info] Déploiement de l'archive
> [/var/lib/tomcat9/webapps/guacamole.war] de l'application web
> [2020-09-04 09:13:01] [info] Au moins un fichier JAR a été analysé pour
> trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal
> peut être activé pour obtenir une liste complète de JAR scannés sans
> succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement
> le temps de démarrage et le temps de compilation des JSPs
> [2020-09-04 09:13:01] [info] 09:13:01.863 [main] INFO
> o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
> [2020-09-04 09:13:01] [info] 09:13:01.989 [main] INFO
> o.a.g.rest.auth.HashTokenSessionMap - Sessions will expire after 60
> minutes of inactivity.
> [2020-09-04 09:13:02] [info] 09:13:02.089 [main] INFO
> org.apache.guacamole.log.LogModule - Loading logback configuration from
> "/etc/guacamole/logback.xml".
> [2020-09-04 09:13:02] [info] 09:13:02.152 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "cs"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "nl"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "en"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "zh"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "fr"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "ru"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "de"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "ja"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "no"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "es"
> [2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG
> o.a.g.e.LanguageResourceService - Added language: "it"
> [2020-09-04 09:13:02] [info] 09:13:02.155 [main] DEBUG
> o.a.g.extension.ExtensionModule - Loading extension:
> "guacamole-auth-jdbc-mysql-1.2.0.jar"
> [2020-09-04 09:13:02] [info] 09:13:02.208 [main] DEBUG
> o.a.g.extension.ExtensionModule - [0] Binding AuthenticationProvider
> "org.apache.guacamole.auth.mysql.MySQLAuthenticationProvider".
> [2020-09-04 09:13:02] [info] 09:13:02.218 [main] INFO
> o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
> [2020-09-04 09:13:03] [info] 09:13:03.797 [main] DEBUG
> o.a.g.extension.ExtensionModule - [1] Binding AuthenticationProvider
> "org.apache.guacamole.auth.mysql.MySQLSharedAuthenticationProvider".
> [2020-09-04 09:13:03] [info] 09:13:03.859 [main] DEBUG
> o.a.g.e.LanguageResourceService - Merged strings with existing language:
> "es"
> [2020-09-04 09:13:03] [info] 09:13:03.874 [main] DEBUG
> o.a.g.e.LanguageResourceService - Merged strings with existing language:
> "ru"
> [2020-09-04 09:13:03] [info] 09:13:03.878 [main] DEBUG
> o.a.g.e.LanguageResourceService - Merged strings with existing language:
> "de"
> [2020-09-04 09:13:03] [info] 09:13:03.882 [main] DEBUG
> o.a.g.e.LanguageResourceService - Merged strings with existing language:
> "fr"
> [2020-09-04 09:13:03] [info] 09:13:03.887 [main] DEBUG
> o.a.g.e.LanguageResourceService - Merged strings with existing language:
> "ja"
> [2020-09-04 09:13:03] [info] 09:13:03.898 [main] DEBUG
> o.a.g.e.LanguageResourceService - Merged strings with existing language:
> "en"
> [2020-09-04 09:13:03] [info] 09:13:03.899 [main] INFO
> o.a.g.extension.ExtensionModule - Extension "MySQL Authentication" loaded.
> [2020-09-04 09:13:03] [info] 09:13:03.899 [main] DEBUG
> o.a.g.extension.ExtensionModule - Loading extension:
> "guacamole-auth-ldap-1.2.0.jar"
> [2020-09-04 09:13:03] [info] 09:13:03.908 [main] DEBUG
> o.a.g.extension.ExtensionModule - [2] Binding AuthenticationProvider
> "org.apache.guacamole.auth.ldap.LDAPAuthenticationProvider".
> [2020-09-04 09:13:03] [info] 09:13:03.909 [main] INFO
> o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
> [2020-09-04 09:13:04] [info] 09:13:04.199 [main] WARN
> o.a.g.e.LanguageResourceService - Overlay language resource "de" does not
> exist.
> [2020-09-04 09:13:04] [info] 09:13:04.201 [main] DEBUG
> o.a.g.e.LanguageResourceService - Merged strings with existing language:
> "en"
> [2020-09-04 09:13:04] [info] 09:13:04.201 [main] INFO
> o.a.g.extension.ExtensionModule - Extension "LDAP Authentication" loaded.
> [2020-09-04 09:13:04] [info] 09:13:04.202 [main] DEBUG
> o.a.g.extension.ExtensionModule - [3] Binding AuthenticationProvider
> "org.apache.guacamole.auth.file.FileAuthenticationProvider".
> [2020-09-04 09:13:04] [info] 09:13:04.203 [main] INFO
> o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
> [2020-09-04 09:13:04] [info] 09:13:04.331 [main] INFO
> o.a.g.t.w.WebSocketTunnelModule - Loading JSR-356 WebSocket support...
> [2020-09-04 09:13:04] [info] 09:13:04.356 [main] DEBUG
> o.a.guacamole.tunnel.TunnelModule - WebSocket module loaded:
> org.apache.guacamole.tunnel.websocket.WebSocketTunnelModule
> [2020-09-04 09:13:04] [info] Registering
> org.apache.guacamole.rest.RESTExceptionMapper as a provider class
> [2020-09-04 09:13:04] [info] Registering
> org.apache.guacamole.rest.extension.ExtensionRESTService as a root resource
> class
> [2020-09-04 09:13:04] [info] Registering
> org.apache.guacamole.rest.language.LanguageRESTService as a root resource
> class
> [2020-09-04 09:13:04] [info] Registering
> org.apache.guacamole.rest.patch.PatchRESTService as a root resource class
> [2020-09-04 09:13:04] [info] Registering
> org.apache.guacamole.rest.auth.TokenRESTService as a root resource class
> [2020-09-04 09:13:04] [info] Registering
> org.apache.guacamole.rest.session.SessionRESTService as a root resource
> class
> [2020-09-04 09:13:04] [info] Registering
> org.codehaus.jackson.jaxrs.JacksonJsonProvider as a provider class
> [2020-09-04 09:13:04] [info] Initiating Jersey application, version
> 'Jersey: 1.17.1 02/28/2013 12:47 PM'
> [2020-09-04 09:13:04] [info] Binding
> org.apache.guacamole.rest.RESTExceptionMapper to
> GuiceManagedComponentProvider with the scope "Singleton"
> [2020-09-04 09:13:04] [info] Binding
> org.codehaus.jackson.jaxrs.JacksonJsonProvider to
> GuiceManagedComponentProvider with the scope "Singleton"
> [2020-09-04 09:13:05] [info] Binding
> org.apache.guacamole.rest.extension.ExtensionRESTService to
> GuiceManagedComponentProvider with the scope "PerRequest"
> [2020-09-04 09:13:05] [info] Binding
> org.apache.guacamole.rest.language.LanguageRESTService to
> GuiceManagedComponentProvider with the scope "PerRequest"
> [2020-09-04 09:13:05] [info] Binding
> org.apache.guacamole.rest.patch.PatchRESTService to
> GuiceManagedComponentProvider with the scope "PerRequest"
> [2020-09-04 09:13:05] [info] Binding
> org.apache.guacamole.rest.auth.TokenRESTService to
> GuiceManagedComponentProvider with the scope "PerRequest"
> [2020-09-04 09:13:05] [info] Binding
> org.apache.guacamole.rest.session.SessionRESTService to
> GuiceManagedComponentProvider with the scope "PerRequest"
> [2020-09-04 09:13:05] [info] WebjarsServlet initialization completed
> [2020-09-04 09:13:05] [info] Le déploiement de l'archive de l'application
> web [/var/lib/tomcat9/webapps/guacamole.war] s'est terminé en [5 967] ms
> [2020-09-04 09:13:05] [info] Déploiement du répertoire d'application web
> [/var/lib/tomcat9/webapps/ROOT]
> [2020-09-04 09:13:06] [info] Au moins un fichier JAR a été analysé pour
> trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal
> peut être activé pour obtenir une liste complète de JAR scannés sans
> succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement
> le temps de démarrage et le temps de compilation des JSPs
> [2020-09-04 09:13:06] [info] Le déploiement du répertoire
> [/var/lib/tomcat9/webapps/ROOT] de l'application web s'est terminé en [720]
> ms
> [2020-09-04 09:13:06] [info] Démarrage du gestionnaire de protocole
> ["http-nio-8080"]
> [2020-09-04 09:13:06] [info] Le démarrage du serveur a pris [9 693]
> millisecondes
>
>
The logs here stop after the application is loaded and do not show the
actual login attempt. If you look at the logs past this, when you're
actually logging in, you should see messages related to the admin user
being logged in, and this will indicate what module has authenticated the
user.
> -----------
> #propreties
>
> auth-provider:
> net.sourceforge.guacamole.net.auth.ldap.LDAPAuthenticationProvider
>
> guacd-hostname: localhost
> guacad-port: 4822
> #ldap
> ldap-hostname: ldapserver
> ldap-port: 389
> ldap-encryption-method: none
> #ldap-search-bind-dn: ou=people,dc=firm,dc=fr
> ldap-user-base-dn: ou=people,dc=firm,dc=fr
> ldap-max-search-results: 5000
> #mysql
> mysql-hostname: localhost
> mysql-port: 3306
> mysql-database: guaca_db
> mysql-username: guaca_user
> mysql-password: password
> -------------------
>
>
This also could be an issue. If you do not specify the
"ldap-search-bind-dn" property, Guacamole will not search for users - it
will, instead, derive the user DN from the combination of login attribute
(ldap-username-attribute), the username entered, and then the
ldap-user-base-dn field. It has been a while since I tried using that
configuration (it doesn't work in my AD environment), so I cannot remember
exactly how it behaves, but if the solution above doesn't work it may be
worth setting the ldap-search-bind-dn and password to see if that helps.
-Nick
don't see ldap users
Posted by fou fe <fo...@live.fr>.
Hello,
I have fresh guacamole 1.2.0 installed in latest buster with mysql and ldap extensions. Everything is good except that i don't see ldap users in gui.
I already create user with admin system in guacamole that belong in ldap. I used thar user but i don't see ldap users.
In tomcat logs with debug there is no errors and jars are loaded.
-Mysql extensions work .
-ldapsearch work
There is tomcat log and my guacamole.propreties
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
[2020-09-04 09:12:34] [info] com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114)
[2020-09-04 09:12:34] [warning] L'application web [guacamole] semble avoir démarré un thread nommé [com.google.inject.internal.util.$Finalizer] mais ne l'a pas arrêté, ce qui va probablement créer une fuite de mémoire; la trace du thread est:
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.Object.wait(Native Method)
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
[2020-09-04 09:12:34] [info] java.base@11.0.8/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
[2020-09-04 09:12:34] [info] com.google.inject.internal.util.$Finalizer.run(Finalizer.java:114)
[2020-09-04 09:12:34] [info] Arrêt du gestionnaire de protocole ["http-nio-8080"]
[2020-09-04 09:12:34] [info] Destruction du gestionnaire de protocole ["http-nio-8080"]
[2020-09-04 09:12:55] [info] NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[2020-09-04 09:12:55] [info] Version du serveur: Apache Tomcat/9.0.31 (Debian)
[2020-09-04 09:12:55] [info] Serveur compilé: Jul 15 2020 11:43:33 UTC
[2020-09-04 09:12:55] [info] Version du serveur: 9.0.31.0
[2020-09-04 09:12:55] [info] Nom de l'OS: Linux
[2020-09-04 09:12:55] [info] Version de l'OS: 4.19.0-10-amd64
[2020-09-04 09:12:55] [info] Architecture: amd64
[2020-09-04 09:12:55] [info] Répertoire de Java: /usr/lib/jvm/java-11-openjdk-amd64
[2020-09-04 09:12:55] [info] Version de la JVM: 11.0.8+10-post-Debian-1deb10u1
[2020-09-04 09:12:55] [info] Fournisseur de la JVM: Debian
[2020-09-04 09:12:55] [info] CATALINA_BASE: /var/lib/tomcat9
[2020-09-04 09:12:55] [info] CATALINA_HOME: /usr/share/tomcat9
[2020-09-04 09:12:55] [info] Argument de la ligne de commande: --add-opens=java.base/java.lang=ALL-UNNAMED
[2020-09-04 09:12:55] [info] Argument de la ligne de commande: --add-opens=java.base/java.io=ALL-UNNAMED
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.util.logging.config.file=/var/lib/tomcat9/conf/logging.properties
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.awt.headless=true
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djdk.tls.ephemeralDHKeySize=2048
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Dorg.apache.catalina.security.SecurityListener.UMASK=0027
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Dignore.endorsed.dirs=
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Dcatalina.base=/var/lib/tomcat9
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Dcatalina.home=/usr/share/tomcat9
[2020-09-04 09:12:56] [info] Argument de la ligne de commande: -Djava.io.tmpdir=/tmp
[2020-09-04 09:12:56] [info] Un version ancienne [1.2.21] de la bibliothèque Apache Tomcat Native basée sur APR est installée, alors que Tomcat recommande au minimum la version [1.2.23]
[2020-09-04 09:12:56] [info] Chargement de la librairie Apache Tomcat Native [1.2.21] en utilisant APR version [1.6.5]
[2020-09-04 09:12:56] [info] Fonctionnalités d'APR: IPv6 [true], sendfile [true], accept filters [false], random [true]
[2020-09-04 09:12:56] [info] Configuration de APR/OpenSSL: useAprConnector [false], useOpenSSL [true]
[2020-09-04 09:12:56] [info] OpenSSL a été initialisé avec succès [OpenSSL 1.1.1d 10 Sep 2019]
[2020-09-04 09:12:56] [info] Initialisation du gestionnaire de protocole ["http-nio-8080"]
[2020-09-04 09:12:56] [info] L'initialisation du serveur a pris [1 115] millisecondes
[2020-09-04 09:12:56] [info] Démarrage du service [Catalina]
[2020-09-04 09:12:56] [info] Démarrage du moteur de Servlets: [Apache Tomcat/9.0.31 (Debian)]
[2020-09-04 09:12:56] [info] Déploiement du descripteur de configuration [/etc/tomcat9/Catalina/localhost/host-manager.xml]
[2020-09-04 09:12:56] [warning] L'attribut path avec la valeur [/host-manager] dans le descripteur de déploiement [/etc/tomcat9/Catalina/localhost/host-manager.xml] a été ignoré
[2020-09-04 09:12:58] [info] Au moins un fichier JAR a été analysé pour trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal peut être activé pour obtenir une liste complète de JAR scannés sans succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement le temps de démarrage et le temps de compilation des JSPs
[2020-09-04 09:12:58] [info] Le traitement du descripteur de déploiement [/etc/tomcat9/Catalina/localhost/host-manager.xml] a pris [2 072] ms
[2020-09-04 09:12:58] [info] Déploiement du descripteur de configuration [/etc/tomcat9/Catalina/localhost/manager.xml]
[2020-09-04 09:12:58] [warning] L'attribut path avec la valeur [/manager] dans le descripteur de déploiement [/etc/tomcat9/Catalina/localhost/manager.xml] a été ignoré
[2020-09-04 09:12:59] [info] Au moins un fichier JAR a été analysé pour trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal peut être activé pour obtenir une liste complète de JAR scannés sans succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement le temps de démarrage et le temps de compilation des JSPs
[2020-09-04 09:12:59] [info] Le traitement du descripteur de déploiement [/etc/tomcat9/Catalina/localhost/manager.xml] a pris [765] ms
[2020-09-04 09:12:59] [info] Déploiement de l'archive [/var/lib/tomcat9/webapps/guacamole.war] de l'application web
[2020-09-04 09:13:01] [info] Au moins un fichier JAR a été analysé pour trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal peut être activé pour obtenir une liste complète de JAR scannés sans succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement le temps de démarrage et le temps de compilation des JSPs
[2020-09-04 09:13:01] [info] 09:13:01.863 [main] INFO o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
[2020-09-04 09:13:01] [info] 09:13:01.989 [main] INFO o.a.g.rest.auth.HashTokenSessionMap - Sessions will expire after 60 minutes of inactivity.
[2020-09-04 09:13:02] [info] 09:13:02.089 [main] INFO org.apache.guacamole.log.LogModule - Loading logback configuration from "/etc/guacamole/logback.xml".
[2020-09-04 09:13:02] [info] 09:13:02.152 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "cs"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "nl"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "en"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "zh"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "fr"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "ru"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "de"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "ja"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "no"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "es"
[2020-09-04 09:13:02] [info] 09:13:02.153 [main] DEBUG o.a.g.e.LanguageResourceService - Added language: "it"
[2020-09-04 09:13:02] [info] 09:13:02.155 [main] DEBUG o.a.g.extension.ExtensionModule - Loading extension: "guacamole-auth-jdbc-mysql-1.2.0.jar"
[2020-09-04 09:13:02] [info] 09:13:02.208 [main] DEBUG o.a.g.extension.ExtensionModule - [0] Binding AuthenticationProvider "org.apache.guacamole.auth.mysql.MySQLAuthenticationProvider".
[2020-09-04 09:13:02] [info] 09:13:02.218 [main] INFO o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
[2020-09-04 09:13:03] [info] 09:13:03.797 [main] DEBUG o.a.g.extension.ExtensionModule - [1] Binding AuthenticationProvider "org.apache.guacamole.auth.mysql.MySQLSharedAuthenticationProvider".
[2020-09-04 09:13:03] [info] 09:13:03.859 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "es"
[2020-09-04 09:13:03] [info] 09:13:03.874 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "ru"
[2020-09-04 09:13:03] [info] 09:13:03.878 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "de"
[2020-09-04 09:13:03] [info] 09:13:03.882 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "fr"
[2020-09-04 09:13:03] [info] 09:13:03.887 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "ja"
[2020-09-04 09:13:03] [info] 09:13:03.898 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "en"
[2020-09-04 09:13:03] [info] 09:13:03.899 [main] INFO o.a.g.extension.ExtensionModule - Extension "MySQL Authentication" loaded.
[2020-09-04 09:13:03] [info] 09:13:03.899 [main] DEBUG o.a.g.extension.ExtensionModule - Loading extension: "guacamole-auth-ldap-1.2.0.jar"
[2020-09-04 09:13:03] [info] 09:13:03.908 [main] DEBUG o.a.g.extension.ExtensionModule - [2] Binding AuthenticationProvider "org.apache.guacamole.auth.ldap.LDAPAuthenticationProvider".
[2020-09-04 09:13:03] [info] 09:13:03.909 [main] INFO o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
[2020-09-04 09:13:04] [info] 09:13:04.199 [main] WARN o.a.g.e.LanguageResourceService - Overlay language resource "de" does not exist.
[2020-09-04 09:13:04] [info] 09:13:04.201 [main] DEBUG o.a.g.e.LanguageResourceService - Merged strings with existing language: "en"
[2020-09-04 09:13:04] [info] 09:13:04.201 [main] INFO o.a.g.extension.ExtensionModule - Extension "LDAP Authentication" loaded.
[2020-09-04 09:13:04] [info] 09:13:04.202 [main] DEBUG o.a.g.extension.ExtensionModule - [3] Binding AuthenticationProvider "org.apache.guacamole.auth.file.FileAuthenticationProvider".
[2020-09-04 09:13:04] [info] 09:13:04.203 [main] INFO o.a.g.environment.LocalEnvironment - GUACAMOLE_HOME is "/etc/guacamole".
[2020-09-04 09:13:04] [info] 09:13:04.331 [main] INFO o.a.g.t.w.WebSocketTunnelModule - Loading JSR-356 WebSocket support...
[2020-09-04 09:13:04] [info] 09:13:04.356 [main] DEBUG o.a.guacamole.tunnel.TunnelModule - WebSocket module loaded: org.apache.guacamole.tunnel.websocket.WebSocketTunnelModule
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.RESTExceptionMapper as a provider class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.extension.ExtensionRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.language.LanguageRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.patch.PatchRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.auth.TokenRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.apache.guacamole.rest.session.SessionRESTService as a root resource class
[2020-09-04 09:13:04] [info] Registering org.codehaus.jackson.jaxrs.JacksonJsonProvider as a provider class
[2020-09-04 09:13:04] [info] Initiating Jersey application, version 'Jersey: 1.17.1 02/28/2013 12:47 PM'
[2020-09-04 09:13:04] [info] Binding org.apache.guacamole.rest.RESTExceptionMapper to GuiceManagedComponentProvider with the scope "Singleton"
[2020-09-04 09:13:04] [info] Binding org.codehaus.jackson.jaxrs.JacksonJsonProvider to GuiceManagedComponentProvider with the scope "Singleton"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.extension.ExtensionRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.language.LanguageRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.patch.PatchRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.auth.TokenRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] Binding org.apache.guacamole.rest.session.SessionRESTService to GuiceManagedComponentProvider with the scope "PerRequest"
[2020-09-04 09:13:05] [info] WebjarsServlet initialization completed
[2020-09-04 09:13:05] [info] Le déploiement de l'archive de l'application web [/var/lib/tomcat9/webapps/guacamole.war] s'est terminé en [5 967] ms
[2020-09-04 09:13:05] [info] Déploiement du répertoire d'application web [/var/lib/tomcat9/webapps/ROOT]
[2020-09-04 09:13:06] [info] Au moins un fichier JAR a été analysé pour trouver des TLDs mais il n'en contenait pas, le mode "debug" du journal peut être activé pour obtenir une liste complète de JAR scannés sans succès; éviter d'analyser des JARs inutilement peut améliorer sensiblement le temps de démarrage et le temps de compilation des JSPs
[2020-09-04 09:13:06] [info] Le déploiement du répertoire [/var/lib/tomcat9/webapps/ROOT] de l'application web s'est terminé en [720] ms
[2020-09-04 09:13:06] [info] Démarrage du gestionnaire de protocole ["http-nio-8080"]
[2020-09-04 09:13:06] [info] Le démarrage du serveur a pris [9 693] millisecondes
-----------
#propreties
auth-provider: net.sourceforge.guacamole.net.auth.ldap.LDAPAuthenticationProvider
guacd-hostname: localhost
guacad-port: 4822
#ldap
ldap-hostname: ldapserver
ldap-port: 389
ldap-encryption-method: none
#ldap-search-bind-dn: ou=people,dc=firm,dc=fr
ldap-user-base-dn: ou=people,dc=firm,dc=fr
ldap-max-search-results: 5000
#mysql
mysql-hostname: localhost
mysql-port: 3306
mysql-database: guaca_db
mysql-username: guaca_user
mysql-password: password
-------------------
Thank you for your help
-Fouad
Re: Guacamole Java API - Exception is thrown when calling
GuacamoleReader.read()
Posted by erez <er...@trustpeers.com>.
Noticed that when it happens on SSH connection, the guacd syslog prints this:
Sep 2 14:33:27 ip-172-31-36-169 kernel: [9072540.374925] guacd[6116]:
segfault at 1910 ip 00007fc9500df13d sp 00007fc929ffac50 error 4 in
libguac-client-ssh.so.0.0.0[7fc9500c2000+28000]
Sep 2 14:33:27 ip-172-31-36-169 kernel: [9072540.374932] Code: 00 00 00 31
c0 e8 43 10 ff ff b8 01 00 00 00 5b c3 66 90 66 2e 0f 1f 84 00 00 00 00 00
41 54 49 89 f4 55 48 89 d5 53 48 89 fb <48> 8b 97 10 19 00 00 8b b7 a0 18 00
00 48 89 e9 8b bf 9c 18 00 00
erez wrote
> Hey Nick, thanks for the fast answer.
> Currently, we are not using any reverse proxies in front of the tomcat.
> The
> requests from the client are headed directly to the tomcat server.
>
> About the firewalls, the guacd is running on an Ubuntu machine on AWS. The
> guac port is open. I think nothing should disrupt communications.
>
> Can you please elaborate more on these exceptions? Why are they happening?
> When? This information can lead me to the solution.
>
>
>
> --
> Sent from:
> http://apache-guacamole-general-user-mailing-list.2363388.n4.nabble.com/
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> user-unsubscribe@.apache
> For additional commands, e-mail:
> user-help@.apache
--
Sent from: http://apache-guacamole-general-user-mailing-list.2363388.n4.nabble.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@guacamole.apache.org
For additional commands, e-mail: user-help@guacamole.apache.org
Re: Guacamole Java API - Exception is thrown when calling
GuacamoleReader.read()
Posted by erez <er...@trustpeers.com>.
Thanks, Nick. Let me elaborate more on how the system is built.
The guacd server is running on Ubuntu 18.04.5 LTS, under port 4822. I have
upgraded to version 1.2.0 yesterday while trying to solve the issue (Which
hasn't been solved yet I'm pretty sure).
The Guacamole web server is running also on Ubuntu 18.04.4 LTS, as the Web
application running on Tomcat 7, as a .war application.
There is no reverse proxy for this web server. We only added SSL to the
Tomcat configuration. (Today I'm going to add NGINX, with the hope that it
will solve this).
The web server running on port 8443 (Also on 8080, but we use 8443 for SSL
encryption).
This application is deployed with Maven, coded on Java. We have a Java
application that we have coded, using the GuacamoleHTTPTunnelServlet class
(We extended it and added some features).
Basically, we needed to add an authorization layer with our system tokens,
and also we needed to allow multiple tunnels to the same connection (For
example, one user is controlling the remote connection and 3 more people
watch it live).
This is the class that we coded: https://codeshare.io/G7ozYr
<https://codeshare.io/G7ozYr>
The frontend is running on our site, importing
'guacamole-common-js/all.min.js', and creating a tunnel using new
Guacamole.HTTPTunnel and new Guacamole.Client. The view of the remote
connection is wrapped in our site inside a div.
I believe that the problem located in one of the following:
1. The Java Application because this is the only part that is not used
defaultly.
2. The communication between the Guacamole Webserver to the Guacamole Server
Thanks again, And if you need any more information just let me know!
--
Sent from: http://apache-guacamole-general-user-mailing-list.2363388.n4.nabble.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@guacamole.apache.org
For additional commands, e-mail: user-help@guacamole.apache.org
Re: Guacamole Java API - Exception is thrown when calling GuacamoleReader.read()
Posted by Nick Couchman <vn...@apache.org>.
On Wed, Sep 2, 2020 at 10:00 AM erez <er...@trustpeers.com> wrote:
> Hey Nick, thanks for the fast answer.
> Currently, we are not using any reverse proxies in front of the tomcat. The
> requests from the client are headed directly to the tomcat server.
>
> About the firewalls, the guacd is running on an Ubuntu machine on AWS. The
> guac port is open. I think nothing should disrupt communications.
>
> Can you please elaborate more on these exceptions? Why are they happening?
> When? This information can lead me to the solution.
>
>
>
Are you using a custom Guacamole application, or the official Guacamole
Client application?
I can elaborate a little more on the exceptions, but the reason that I
asked for more information is because more information is required to
figure out exactly why they're happening. The small bit of code you posted
provides no context to where that code is - it *looks* to me like it is
Java code, so somewhere in the Java application, but it also could possibly
be JavaScript or even C. I cannot even determine the language being used
from either the "code" posted or the small summary you gave of the
exception. So, far more detail about the environment, the code, etc., is
required to fully debug the issue.
The exceptions you're getting, "Non-numeric character in element length,"
and "Element terminator of instruction was not ';' nor ','", seem to
indicate that the Guacamole protocol is getting messed up somewhere along
the way. The way Guacamole works, the very first part of any instruction
should be a number indicating the length of the instruction to follow, then
the instruction itself, and then either a comma or a semicolon. You can
see this if you look at the protocol code - for example:
https://github.com/apache/guacamole-server/blob/382d72a26a04008aa936680deed00e3a31086b1e/src/libguac/protocol.c#L71-L87
You see that sending the "ack" instruction starts with a "3.ack," - 3 being
the number of characters to expect, a dot, and then the instruction, then a
comma and the next piece of the instruction. It seems likely that the
exceptions you're seeing are because the system is receiving something
other than a number as the very first part of an instruction, when it
should be a number, or is not properly terminated with either a comma or
semicolon. The possible causes of this that I can think of are:
* Incorrectly written custom code that does not set up protocol
instructions correctly with a number as the start of the code. This is why
I asked if you're using a custom Guacamole application (there's nothing
wrong with this, it just leads in a certain direction in terms of
debugging) or if you're using the stock code (the full Guacamole Client).
If you're using stock code, the likelihood that it's a bug in that code
causing this is extremely small, as it's very basic to the functionality of
the application and something we'd likely be getting broad reports about.
* Improperly written custom code that does not flush the socket when it's
done with a stream of instructions. I've encountered this a few times when
working on support for parameter prompting - that prompts either didn't get
delivered, or got half-delivered, resulting in exceptions similar to what
you're seeing, because I wasn't flushing the socket when I was expecting
that to be the end of one side of the communication.
* A firewall (or virus scanner, etc.) in between the client and the server
that is interfering with the conversation. It could be stripping out data
that it considers harmful or trying to compress/streamline data that could
cause changes in the protocol data being transmitted between client and
server. This is why I asked about Web Application Firewalls and the like -
if those can be investigated/eliminated to make sure there's nothing that
is trying to secure Guacamole that might actually be causing problems.
* An improperly configured reverse proxy server that is buffering data. In
the instructions for configuring Guacamole behind a proxy we specifically
mention turning off buffering, as it necessarily results in "bursty"
communication where you actually want a steady stream of data, and that
could potentially cause exceptions similar to the ones you're seeing.
So, you're welcome to take this information and go looking for the cause of
the problem, and you're also welcome to post back here and get further help
resolving it. If you choose to post back here I highly suggest you provide
*detailed* information on the exceptions you're seeing (log messages), the
environment you're running, the code you're using, the context of the code
and the exceptions, etc.
-Nick
Re: Guacamole Java API - Exception is thrown when calling
GuacamoleReader.read()
Posted by erez <er...@trustpeers.com>.
Hey Nick, thanks for the fast answer.
Currently, we are not using any reverse proxies in front of the tomcat. The
requests from the client are headed directly to the tomcat server.
About the firewalls, the guacd is running on an Ubuntu machine on AWS. The
guac port is open. I think nothing should disrupt communications.
Can you please elaborate more on these exceptions? Why are they happening?
When? This information can lead me to the solution.
--
Sent from: http://apache-guacamole-general-user-mailing-list.2363388.n4.nabble.com/
---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@guacamole.apache.org
For additional commands, e-mail: user-help@guacamole.apache.org
Re: Guacamole Java API - Exception is thrown when calling GuacamoleReader.read()
Posted by Nick Couchman <vn...@apache.org>.
On Wed, Sep 2, 2020 at 9:01 AM erez <er...@trustpeers.com> wrote:
> Hello,
> We have a running guacamole system that works well. Usually, there are no
> problems, we can create connections from the website through the guacamole
> webserver.
> However, sometimes, like 10% of the connections, are closing unexpectedly,
> after an exception is thrown, but there is no clue why this is happening.
>
> The error happens in the function doRead, when calling the function:
> char[] message = reader.read();
> After this call, an exception is thrown, saying "Non-numeric character in
> element length."
>
> Note, sometimes another exception is thrown (not sure from what call) that
> says "Element terminator of instruction was not ';' nor ','"
>
> The exceptions cause closing the tunnel, therefore the next 'read' query
> from the client is responded with 404 'No such tunnel'.
>
>
Is this Guacamole Client or a custom application?
> Tried to search on the web but nothing seems to be the solution, as 90% of
> the times the connection succeeded.
>
>
Are you using a reverse proxy in front of Tomcat? If so, have you
configured the required proxy settings as described in the manual? I'm
thinking specifically of disabling buffering...
Other than that, if there are any web application firewalls or deep packet
inspection devices in between the clients and the server they could be
disrupting the communications.
-Nick