Guacamole-Install icon indicating copy to clipboard operation
Guacamole-Install copied to clipboard

Upgrade to 1.6 - look here for various issues

Open CrazyWolf13 opened this issue 7 months ago • 35 comments

Describe the feature or solution you'd like to see included:

  • Is it possible to upgrade to v1.6 rc1 using this tool yet?

https://github.com/apache/guacamole-server/releases/tag/1.6.0-RC1

Is this feature request related to a problem or specific use case?:

  • No.

Additional context:

  • Please provide any additional context or background here.

Thanks a lot!

CrazyWolf13 avatar May 05 '25 05:05 CrazyWolf13

Guacamiole 1.6.0 Installer update:

I manually edited the 1-setup.sh script to the 1.6.0 release candidate 1 version .

All seemed to install perfectly on a vanillia Debian 12 instance, and I can verifiy successful connection to Gucamole 1.6.0.

If anyone would like to evalute 1.6.0 further, simply adjust the 1-setup.sh (or upgrade-guacamole.sh) scripts to this or similar as release candidated roll forward:

# Version of Guacamole to install
GUAC_VERSION="1.6.0"
GUAC_SOURCE_LINK="https://dist.apache.org/repos/dist/dev/guacamole/1.6.0-RC1/"

Please come back with any installer related issues.

Image

itiligent avatar Jun 07 '25 00:06 itiligent

Hi itiligent),

Gucamole 1.6 has been released on the official website since the 22nd.

Can you please tell me what I need to change in the upgrade.sh file so that 1.6 installs automatically?

Actually, it's only one or two things, as I understand your script.

Image

Thank you for making this available here. Best regards

Thiwico avatar Jun 24 '25 06:06 Thiwico

@itiligent 1.6.0 has been released, I update like above, some little quirks, like multi connection being broken and openid, I'm yet to discover if this is a problem of my instance or 1.6.0 update, though I found in the log the following error:

guacd[1249]: DEBUG:     Client is using protocol version "VERSION_1_5_0"
guacd[1249]: DEBUG:     Attempting private key import (WITHOUT passphrase)
guacd[1249]: DEBUG:     Initial import failed: (null)

Is it possible that the client does not get updated to 1.6.0, only the server?

CrazyWolf13 avatar Jun 24 '25 06:06 CrazyWolf13

@Thiwico yes you only need to update 1.5.5 to 1.6.0 and mysql to 9.3.0 that's it.

CrazyWolf13 avatar Jun 24 '25 08:06 CrazyWolf13

@CrazyWolf13 thanks man.

Thiwico avatar Jun 24 '25 08:06 Thiwico

Ok, I just bumped up the Guacamole and MySQL versions in the installer and upgrade scripts. Lets see how that goes.

itiligent avatar Jun 24 '25 09:06 itiligent

Ok, I just bumped up the Guacamole and MySQL versions in the installer and upgrade scripts. Lets see how that goes.

there is a small mistake. The Version for the masql connector schould be MYSQLJCON="9.3.0" but its MYSQLJCON="9.3.0 ". There ist a unneeded space.

MortRainey avatar Jun 24 '25 10:06 MortRainey

When I run upgrade.sh, I get the following message:

Possible previous install files detected. Please review and remove old guacamole install files before proceeding.

What exactly do I need to do now?

I thought the upgrade worked automatically?

Thiwico avatar Jun 24 '25 10:06 Thiwico

I have this:

Image

Thiwico avatar Jun 24 '25 10:06 Thiwico

I have this:

Image

Call the Update Script as guacamole user with Sudo. Not as Root.

MortRainey avatar Jun 24 '25 10:06 MortRainey

i call with my non root user sudo ./upgrade-guac.sh and same failure.

Image

Image

Image

Thiwico avatar Jun 24 '25 10:06 Thiwico

I was able to upgrade successfully but have hit issues with the Duo extension - I reconfigured it to use the new API as per the directions, and I get prompted to authenticate. This is successful but my session just takes me back to the login. I can see the request in the tomcat log as:

GET /?state=<redacted>&duo_code=<redacted> HTTP/1.1" 302 -

But that's all and the Duo console said all was fine. If I add the above to the URL of the browser it lets me in and all is working.

I think it's the redirect-uri that could be the issue but can't figure out what it could be and have tried

https://guacamole.mydomain.com/
https://guacamole.mydomain.com/guacamole/#/

I'm using HAProxy to proxy the HTTPS connection to the HTTP connection and I cannot see an issue there, and it's always worked until now.

I'd be happy to ditch Duo if there was some way to use Passkeys, but I might have to revert TOTP.

Taomyn avatar Jun 24 '25 10:06 Taomyn

I dont no what i do wrong

my User tadmin is in the sudo group so I rolled back my snapshot, adjusted the upgrade.sh, and ran the script again.

Same error

Image

Thiwico avatar Jun 24 '25 10:06 Thiwico

Ok, I've now fixed

  • the typos in the guacamole version link
  • A new DUO redirect issue. The default install no longer redirects to the Guacamole root url. I've also added a warning with this redirect install option.

For those upgrading, most seem to be having success. backup first!.

Please post any fixes or workarounds you come up with.

itiligent avatar Jun 24 '25 11:06 itiligent

@itiligent yes so far I seem to have problem with SSO and multiple SSH connections, I reported that on the mailing list, unsure if update problem or actual bug.

CrazyWolf13 avatar Jun 24 '25 12:06 CrazyWolf13

I've previously found that recreating ssh connection objects again after upgrade has fixed weird ssh issues like that for me


From: Tobias @.> Sent: Tuesday, June 24, 2025 10:11:10 PM To: itiligent/Easy-Guacamole-Installer @.> Cc: David Harrop @.>; Mention @.> Subject: Re: [itiligent/Easy-Guacamole-Installer] Upgrade to 1.6 (Issue #78)

[https://avatars.githubusercontent.com/u/96661824?s=20&v=4]CrazyWolf13 left a comment (itiligent/Easy-Guacamole-Installer#78)https://github.com/itiligent/Easy-Guacamole-Installer/issues/78#issuecomment-3000096311

@itiligenthttps://github.com/itiligent yes so far I seem to have problem with SSO and multiple SSH connections, I reported that on the mailing list, unsure if update problem or actual bug.

— Reply to this email directly, view it on GitHubhttps://github.com/itiligent/Easy-Guacamole-Installer/issues/78#issuecomment-3000096311, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AWTGATC722DFMNK7S2CKP733FE555AVCNFSM6AAAAAB4NZJFQOVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZTAMBQGA4TMMZRGE. You are receiving this because you were mentioned.Message ID: @.***>

itiligent avatar Jun 24 '25 12:06 itiligent

yes alright, problem with the ssh mullticonnect crash has been resolved by pressing ctrl-F5 (hard-refresh)

CrazyWolf13 avatar Jun 24 '25 12:06 CrazyWolf13

Just adding that my upgrade from 1.5.5 to 1.6.0 worked flawlessly, and now the issue of not being able to use RDP with Ubuntu 24.04+ is solved in the new version.

Thank you very much, @itiligent

samwathegreat avatar Jun 27 '25 19:06 samwathegreat

@itiligent The update script has already been completed and can I safely upgrade? Or should we wait for the full release in the repository?

defau1t17 avatar Jul 01 '25 06:07 defau1t17

@itiligent The update script has already been completed and can I safely upgrade? Or should we wait for the full release in the repository?

The script downloads the source directly from Apache, nothing installable is kept in this repo

If you built your < = v1.5.5 Gauc server previously with this script, you can simply update the script to the latest version guac version NEW_GUAC_VERSION = "1.6.0" NEW_MYSQLJCON = "9.3.0" (The upgrade script should be in $home/guac-setup if you installed Guac with the 1-setup.sh script prior)

If you installed Guac in some other way, you will need to provide values to the upgrade script settings below (these values are populted automatically when installing with the 1-setup.sh script)

INSTALL_MYSQL=""
MYSQL_HOST=""
MYSQL_PORT=""
GUAC_USER=""
GUAC_PWD=""
GUAC_DB=""
MYSQL_ROOT_PWD=""
RDP_SHARE_HOST=""
RDP_SHARE_LABEL=""
RDP_PRINTER_LABEL=""
GUACD_ACCOUNT=""

itiligent avatar Jul 01 '25 08:07 itiligent

@itiligent I have the same issue as @Thiwico

Upgrading MySQL Schema...
Patching guacamole_db with upgrade-pre-1.6.0.sql
SQL upgrade failed. See /home/guacamole/guac-setup/guacamole_1.6.0_upgrade.log

tail /home/guacamole/guac-setup/guacamole_1.6.0_upgrade.log

make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/home/guacamole/guac-setup/guacamole-server-1.6.0'
make[1]: Leaving directory '/home/guacamole/guac-setup/guacamole-server-1.6.0'
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

upgrade-guacamole.sh:

# Version of Guacamole to upgrade to. See https://guacamole.apache.org/releases/ for latest version info.
NEW_GUAC_VERSION="1.6.0"

# MySQL Connector/J version. See https://dev.mysql.com/downloads/connector/j/ for latest version number.
NEW_MYSQLJCON="9.3.0"

Tried running script as root and as guacamole user with sudo.

defau1t17 avatar Jul 01 '25 16:07 defau1t17

@defau1t17 I've just raised a PR to fix this https://github.com/itiligent/Easy-Guacamole-Installer/pull/80

LeePorte avatar Jul 01 '25 20:07 LeePorte

@defau1t17 I've just raised a PR to fix this #80

this change has been added now

itiligent avatar Jul 05 '25 03:07 itiligent

@itiligent After having issues with audi permission assigning in group and writing to the mailing list, seems like one needs to run a manual migration located inside guacamole-auth-jdbc-1.6.0.tar.gz in subfolder mysql/schema/upgrade/upgrade-pre-1.6.0.sql

which is the following command:

ALTER TABLE `guacamole_system_permission`
    MODIFY `permission` enum('CREATE_CONNECTION',
                             'CREATE_CONNECTION_GROUP',
                             'CREATE_SHARING_PROFILE',
                             'CREATE_USER',
                             'CREATE_USER_GROUP',
                             'AUDIT',
                             'ADMINISTER') NOT NULL;

Otherwise if a user selects "Audit" permission, guacamole will crash unrecoverably and require manual Database cleanup to fix. Maybe this can be run as part of this script?

Thanks!

CrazyWolf13 avatar Jul 07 '25 15:07 CrazyWolf13

I got the upgrade error-free, but the RDP connections no longer work? Is there anything known?

screen remains black. server does not establish a connection. Firewall logs are empty, no connection.

benhur4942 avatar Jul 15 '25 12:07 benhur4942

I got the upgrade error-free, but the RDP connections no longer work? Is there anything known?

screen remains black. server does not establish a connection. Firewall logs are empty, no connection.

Before going any further, try recreating new RDP connection objects. I've seen similar in earlier upgrades. Then from there try to the usual next steps such as manually establishing RDP from guac server command line (if running a desktop) You also could update to freerdp3. I've not updated the script yet as no time to test. - see #79

itiligent avatar Jul 17 '25 04:07 itiligent

I have the same problem as @benhur4942 I upgraded without errors from 1.5.5 to 1.6 (VM debian 11 freerdp2 2.3.0 stable) using the script and after that rdp connections don't work but no error messages found in the logs. VNC and ssh work OK. I had to go back to snapshot with 1.5.5 where rdp is working ok.

caralo avatar Jul 28 '25 08:07 caralo

Same issue as @caralo and @benhur4942 rdp connection on windows is not working after the upgrade even when deleting/recreating the connection black screen with nothing in logs…

anthonydb06 avatar Jul 30 '25 06:07 anthonydb06

@itiligent After having issues with audi permission assigning in group and writing to the mailing list, seems like one needs to run a manual migration located inside guacamole-auth-jdbc-1.6.0.tar.gz in subfolder mysql/schema/upgrade/upgrade-pre-1.6.0.sql

which is the following command:

ALTER TABLE guacamole_system_permission MODIFY permission enum('CREATE_CONNECTION', 'CREATE_CONNECTION_GROUP', 'CREATE_SHARING_PROFILE', 'CREATE_USER', 'CREATE_USER_GROUP', 'AUDIT', 'ADMINISTER') NOT NULL; Otherwise if a user selects "Audit" permission, guacamole will crash unrecoverably and require manual Database cleanup to fix. Maybe this can be run as part of this script?

Thanks!

This migration tasks you mention is already called in the upgrade script via this section:

# Don't run the SQL upgrade commands if original setup option was set to remote MySQL instance. - Use separate DB update script.
if [[ "${INSTALL_MYSQL}" = true ]]; then
    # Get list of SQL Upgrade Files
    echo -e "${GREY}Upgrading MySQL Schema..."
    UPGRADEFILES=($(ls -1 guacamole-auth-jdbc-${NEW_GUAC_VERSION}/mysql/schema/upgrade/ | sort -V))

    # Compare SQL Upgrage Files against old version, apply upgrades as needed
    for FILE in ${UPGRADEFILES[@]}; do
        FILEVERSION=$(echo ${FILE} | grep -oP 'upgrade-pre-\K[0-9\.]+(?=\.)')
        if [[ $(echo -e "${FILEVERSION}\n${OLD_GUAC_VERSION}" | sort -V | head -n1) == ${OLD_GUAC_VERSION} && ${FILEVERSION} != ${OLD_GUAC_VERSION} ]]; then
            echo "Patching ${GUAC_DB} with ${FILE}"

    		if [[ ! -z "$MYSQL_ROOT_PWD" ]]; then
                	mysql -u root -p${MYSQL_ROOT_PWD} -D ${GUAC_DB} -h ${MYSQL_HOST} -P ${MYSQL_PORT} <guacamole-auth-jdbc-${NEW_GUAC_VERSION}/mysql/schema/upgrade/${FILE} &>>${INSTALL_LOG}
            	else
			mysql -u root -D ${GUAC_DB} -h ${MYSQL_HOST} -P ${MYSQL_PORT} <guacamole-auth-jdbc-${NEW_GUAC_VERSION}/mysql/schema/upgrade/${FILE} &>>${INSTALL_LOG}
	    	fi
        fi
    done

itiligent avatar Jul 30 '25 07:07 itiligent

Same issue as @caralo and @benhur4942 rdp connection on windows is not working after the upgrade even when deleting/recreating the connection black screen with nothing in logs…

Only some are having issues with RDP, so likely an RDP library compatibility thing. Guac 1.6.0 made some changes to their minimum supported freerdp2+ builds I think. I've updated both the build and upgrade scripts to install freerdp3. In my testing I cant replicate.

take a deer look that logs by enabling debugging: guacd -L debug

also another test will be to take libguac-client-rdp.so from v1.5.5 and overwrite this same file in v1.6.0

itiligent avatar Jul 30 '25 07:07 itiligent