On Sun, Dec 18, 2022 at 10:03 AM hantuo <[email protected]> wrote:
> Hi there, > > I'm Han-Tuo, a novice at Guacamole. I encountered a configuration issue > when I tried to set up Guacamole the other day. Any help would be > appreciated. > > I followed this tutorial to setup Guacamole: > https://kifarunix.com/install-apache-guacamole-on-ubuntu/ . It worked > smoothly after I completed all steps that this tutorial said. However, > when I tried to modify guacamole.properties, the deployment result did > not change. > > I rename user-mapping.xml to user-mapping2.xml and modified > guacamole.properties accordingly. And then restart both tomcat and > guacd. However, this change did not come into effect. The system still > loaded user-mapping.xml. The weirdest thing is that the system still > worked after I deleted guacamole.properties and restart both tomcat and > guacd. > > The following is my environment: > Ubuntu 20.04 > Guacamole 1.4.0 > Tomcat 9.0.31 > > Folder structure: > /etc/guacamole/ > |- guacamole.properties > |- user-mapping2.xml > |- guacamole-1.4.0.war > > /usr/share/tomcat9/.guacamole/ > |- guacamole.properties (soft link to > /etc/guacamole/gracamole.properties) > > I'm not sure what is wrong. It seems that guacamole.properties is not > loaded at all. Any help would be appreciated. > The tutorial linked above is incorrect in several areas: 1) Setting GUACAMOLE_HOME to /etc/guacamole is unnecessary. This is the default. 2) Creating a symbolic link within /usr/share/tomcat9 is unnecessary. Just use /etc/guacamole. You would only create an alternative configuration directory within the home directory of the Tomcat user if you want to override the default (/etc/guacamole). It makes no sense to override the default with that same default in two different ways. 3) There is no "user-mapping" property. Setting that will have no effect. There used to be a "basic-user-mapping" property, but that was removed in 1.0.0 (4 years ago). Guacamole will always look for "user-mapping.xml" within its GUACAMOLE_HOME directory, which defaults to /etc/guacamole. 4) There is no "auth-provider" property. Setting it will have no effect. It was deprecated in 2015 and removed in 2016. 5) "/etc/guacamole" is not a sensible location for the .war file. Doing this will not break anything per se, but it's wrong. Files and directories beneath "/etc" are configuration files, whereas the .war file is an application binary. It would make more sense to place it in a location like "/usr/share/guacamole". Unfortunately, this is only one of several tutorials that all recommend the same incorrect steps based on configuration methods that haven't applied for a very long time. You should instead consult the manual, which is current: https://guacamole.apache.org/doc/gug/installing-guacamole.html https://guacamole.apache.org/doc/gug/configuring-guacamole.html If ever in doubt what configuration files are being loaded by Guacamole, check your Tomcat logs. Guacamole logs the location of the guacamole.properties file when it starts up. - Mike
