ssh backends are unusable
Summary
SSH connections cannot be established
Steps to reproduce
Attempt to establish an SSH session.
What is the current bug behavior?
SSH session fails to be established
What is the expected correct behavior?
SSH connects
Relevant logs and/or screenshots
[root@f2cc507e9227 lib]# ldd -r /usr/local/guacamole/lib/libguac-client-ssh.so
linux-vdso.so.1 (0x00007ffc73f45000)
libssh2.so.1 => /lib64/libssh2.so.1 (0x00007febd33a2000)
libm.so.6 => /lib64/libm.so.6 (0x00007febd3020000)
libpangocairo-1.0.so.0 => not found
libpango-1.0.so.0 => not found
libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x00007febd2dcd000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007febd2ab4000)
libguac.so.19 => /usr/local/guacamole/lib/libguac.so.19 (0x00007febd2894000)
libcairo.so.2 => /lib64/libcairo.so.2 (0x00007febd2573000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007febd236f000)
libjpeg.so.62 => /lib64/libjpeg.so.62 (0x00007febd2106000)
libpng16.so.16 => /lib64/libpng16.so.16 (0x00007febd1ed1000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007febd1cb1000)
libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007febd1a1d000)
libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007febd1537000)
libossp-uuid.so.16 => /lib64/libossp-uuid.so.16 (0x00007febd132a000)
libogg.so.0 => /lib64/libogg.so.0 (0x00007febd1123000)
libvorbis.so.0 => /lib64/libvorbis.so.0 (0x00007febd0ef6000)
libvorbisenc.so.2 => /lib64/libvorbisenc.so.2 (0x00007febd0c4d000)
libwebp.so.7 => /lib64/libwebp.so.7 (0x00007febd09df000)
libc.so.6 => /lib64/libc.so.6 (0x00007febd061a000)
libz.so.1 => /lib64/libz.so.1 (0x00007febd0403000)
/lib64/ld-linux-x86-64.so.2 (0x00007febd3810000)
libgnutls.so.30 => /lib64/libgnutls.so.30 (0x00007febd0012000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007febcfda1000)
libffi.so.6 => /lib64/libffi.so.6 (0x00007febcfb98000)
libpixman-1.so.0 => /lib64/libpixman-1.so.0 (0x00007febcf8f0000)
libfontconfig.so.1 => /lib64/libfontconfig.so.1 (0x00007febcf6ab000)
libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007febcf3ef000)
libxcb-shm.so.0 => /lib64/libxcb-shm.so.0 (0x00007febcf1eb000)
libxcb.so.1 => /lib64/libxcb.so.1 (0x00007febcefc2000)
libxcb-render.so.0 => /lib64/libxcb-render.so.0 (0x00007febcedb4000)
libXrender.so.1 => /lib64/libXrender.so.1 (0x00007febceba9000)
libX11.so.6 => /lib64/libX11.so.6 (0x00007febce866000)
libXext.so.6 => /lib64/libXext.so.6 (0x00007febce653000)
librt.so.1 => /lib64/librt.so.1 (0x00007febce44b000)
libp11-kit.so.0 => /lib64/libp11-kit.so.0 (0x00007febce121000)
libidn2.so.0 => /lib64/libidn2.so.0 (0x00007febcdf03000)
libunistring.so.2 => /lib64/libunistring.so.2 (0x00007febcdb82000)
libtasn1.so.6 => /lib64/libtasn1.so.6 (0x00007febcd96f000)
libnettle.so.6 => /lib64/libnettle.so.6 (0x00007febcd735000)
libhogweed.so.4 => /lib64/libhogweed.so.4 (0x00007febcd504000)
libgmp.so.10 => /lib64/libgmp.so.10 (0x00007febcd26c000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007febcd031000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007febcce29000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00007febccc18000)
libXau.so.6 => /lib64/libXau.so.6 (0x00007febcca14000)
undefined symbol: pango_font_get_metrics (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_cairo_create_layout (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_layout_set_text (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_metrics_get_ascent (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_metrics_get_descent (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_layout_set_alignment (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_cairo_font_map_get_default (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_description_copy (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_description_set_size (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_metrics_get_approximate_digit_width (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_description_free (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_description_get_family (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_cairo_update_layout (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_description_new (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_map_create_context (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_layout_get_size (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_description_set_family (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_layout_set_height (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_map_load_font (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_cairo_show_layout (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_font_description_set_weight (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_layout_set_font_description (/usr/local/guacamole/lib/libguac-client-ssh.so)
undefined symbol: pango_layout_set_width (/usr/local/guacamole/lib/libguac-client-ssh.so)
[root@f2cc507e9227 lib]# dnf install pango
Last metadata expiration check: 0:01:00 ago on Tue Aug 17 19:08:38 2021.
Dependencies resolved.
===============================================================================================================================================================================
Package Architecture Version Repository Size
===============================================================================================================================================================================
Installing:
pango x86_64 1.42.4-6.el8 ubi-8-appstream 298 k
Installing dependencies:
fribidi x86_64 1.0.4-8.el8 ubi-8-appstream 89 k
graphite2 x86_64 1.3.10-10.el8 ubi-8-appstream 122 k
harfbuzz x86_64 1.7.5-3.el8 ubi-8-appstream 294 k
libXft x86_64 2.3.3-1.el8 ubi-8-appstream 67 k
libdatrie x86_64 0.2.9-7.el8 ubi-8-appstream 33 k
libthai x86_64 0.1.27-2.el8 ubi-8-appstream 203 k
Transaction Summary
===============================================================================================================================================================================
Install 7 Packages
Total download size: 1.1 M
Installed size: 3.1 M
Is this ok [y/N]: y
Downloading Packages:
(1/7): libdatrie-0.2.9-7.el8.x86_64.rpm 82 kB/s | 33 kB 00:00
(2/7): libXft-2.3.3-1.el8.x86_64.rpm 146 kB/s | 67 kB 00:00
(3/7): harfbuzz-1.7.5-3.el8.x86_64.rpm 514 kB/s | 294 kB 00:00
(4/7): graphite2-1.3.10-10.el8.x86_64.rpm 1.5 MB/s | 122 kB 00:00
(5/7): libthai-0.1.27-2.el8.x86_64.rpm 980 kB/s | 203 kB 00:00
(6/7): pango-1.42.4-6.el8.x86_64.rpm 1.1 MB/s | 298 kB 00:00
(7/7): fribidi-1.0.4-8.el8.x86_64.rpm 1.0 MB/s | 89 kB 00:00
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total 1.4 MB/s | 1.1 MB 00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
Preparing : 1/1
Installing : fribidi-1.0.4-8.el8.x86_64 1/7
Installing : graphite2-1.3.10-10.el8.x86_64 2/7
Installing : harfbuzz-1.7.5-3.el8.x86_64 3/7
Running scriptlet: harfbuzz-1.7.5-3.el8.x86_64 3/7
Installing : libdatrie-0.2.9-7.el8.x86_64 4/7
Running scriptlet: libdatrie-0.2.9-7.el8.x86_64 4/7
Installing : libthai-0.1.27-2.el8.x86_64 5/7
Running scriptlet: libthai-0.1.27-2.el8.x86_64 5/7
Installing : libXft-2.3.3-1.el8.x86_64 6/7
Installing : pango-1.42.4-6.el8.x86_64 7/7
Running scriptlet: pango-1.42.4-6.el8.x86_64 7/7
Verifying : harfbuzz-1.7.5-3.el8.x86_64 1/7
Verifying : libXft-2.3.3-1.el8.x86_64 2/7
Verifying : libdatrie-0.2.9-7.el8.x86_64 3/7
Verifying : pango-1.42.4-6.el8.x86_64 4/7
Verifying : libthai-0.1.27-2.el8.x86_64 5/7
Verifying : graphite2-1.3.10-10.el8.x86_64 6/7
Verifying : fribidi-1.0.4-8.el8.x86_64 7/7
Installed products updated.
Installed:
fribidi-1.0.4-8.el8.x86_64 graphite2-1.3.10-10.el8.x86_64 harfbuzz-1.7.5-3.el8.x86_64 libXft-2.3.3-1.el8.x86_64 libdatrie-0.2.9-7.el8.x86_64 libthai-0.1.27-2.el8.x86_64
pango-1.42.4-6.el8.x86_64
Complete!
[root@f2cc507e9227 lib]# ldd -r /usr/local/guacamole/lib/libguac-client-ssh.so
linux-vdso.so.1 (0x00007ffd039fd000)
libssh2.so.1 => /lib64/libssh2.so.1 (0x00007f6fca756000)
libm.so.6 => /lib64/libm.so.6 (0x00007f6fca3d4000)
libpangocairo-1.0.so.0 => /lib64/libpangocairo-1.0.so.0 (0x00007f6fca1c5000)
libpango-1.0.so.0 => /lib64/libpango-1.0.so.0 (0x00007f6fc9f7e000)
libgobject-2.0.so.0 => /lib64/libgobject-2.0.so.0 (0x00007f6fc9d2b000)
libglib-2.0.so.0 => /lib64/libglib-2.0.so.0 (0x00007f6fc9a12000)
libguac.so.19 => /usr/local/guacamole/lib/libguac.so.19 (0x00007f6fc97f2000)
libcairo.so.2 => /lib64/libcairo.so.2 (0x00007f6fc94d1000)
libdl.so.2 => /lib64/libdl.so.2 (0x00007f6fc92cd000)
libjpeg.so.62 => /lib64/libjpeg.so.62 (0x00007f6fc9064000)
libpng16.so.16 => /lib64/libpng16.so.16 (0x00007f6fc8e2f000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f6fc8c0f000)
libssl.so.1.1 => /lib64/libssl.so.1.1 (0x00007f6fc897b000)
libcrypto.so.1.1 => /lib64/libcrypto.so.1.1 (0x00007f6fc8495000)
libossp-uuid.so.16 => /lib64/libossp-uuid.so.16 (0x00007f6fc8288000)
libogg.so.0 => /lib64/libogg.so.0 (0x00007f6fc8081000)
libvorbis.so.0 => /lib64/libvorbis.so.0 (0x00007f6fc7e54000)
libvorbisenc.so.2 => /lib64/libvorbisenc.so.2 (0x00007f6fc7bab000)
libwebp.so.7 => /lib64/libwebp.so.7 (0x00007f6fc793d000)
libc.so.6 => /lib64/libc.so.6 (0x00007f6fc7578000)
libz.so.1 => /lib64/libz.so.1 (0x00007f6fc7361000)
/lib64/ld-linux-x86-64.so.2 (0x00007f6fcabc4000)
libpangoft2-1.0.so.0 => /lib64/libpangoft2-1.0.so.0 (0x00007f6fc714a000)
libfontconfig.so.1 => /lib64/libfontconfig.so.1 (0x00007f6fc6f05000)
libfreetype.so.6 => /lib64/libfreetype.so.6 (0x00007f6fc6c49000)
libthai.so.0 => /lib64/libthai.so.0 (0x00007f6fc6a3f000)
libfribidi.so.0 => /lib64/libfribidi.so.0 (0x00007f6fc6823000)
libgnutls.so.30 => /lib64/libgnutls.so.30 (0x00007f6fc6432000)
libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f6fc61c1000)
libffi.so.6 => /lib64/libffi.so.6 (0x00007f6fc5fb8000)
libpixman-1.so.0 => /lib64/libpixman-1.so.0 (0x00007f6fc5d10000)
libxcb-shm.so.0 => /lib64/libxcb-shm.so.0 (0x00007f6fc5b0c000)
libxcb.so.1 => /lib64/libxcb.so.1 (0x00007f6fc58e3000)
libxcb-render.so.0 => /lib64/libxcb-render.so.0 (0x00007f6fc56d5000)
libXrender.so.1 => /lib64/libXrender.so.1 (0x00007f6fc54ca000)
libX11.so.6 => /lib64/libX11.so.6 (0x00007f6fc5187000)
libXext.so.6 => /lib64/libXext.so.6 (0x00007f6fc4f74000)
librt.so.1 => /lib64/librt.so.1 (0x00007f6fc4d6c000)
libharfbuzz.so.0 => /lib64/libharfbuzz.so.0 (0x00007f6fc4ac6000)
libexpat.so.1 => /lib64/libexpat.so.1 (0x00007f6fc488b000)
libuuid.so.1 => /lib64/libuuid.so.1 (0x00007f6fc4683000)
libbz2.so.1 => /lib64/libbz2.so.1 (0x00007f6fc4472000)
libdatrie.so.1 => /lib64/libdatrie.so.1 (0x00007f6fc426a000)
libp11-kit.so.0 => /lib64/libp11-kit.so.0 (0x00007f6fc3f40000)
libidn2.so.0 => /lib64/libidn2.so.0 (0x00007f6fc3d22000)
libunistring.so.2 => /lib64/libunistring.so.2 (0x00007f6fc39a1000)
libtasn1.so.6 => /lib64/libtasn1.so.6 (0x00007f6fc378e000)
libnettle.so.6 => /lib64/libnettle.so.6 (0x00007f6fc3554000)
libhogweed.so.4 => /lib64/libhogweed.so.4 (0x00007f6fc3323000)
libgmp.so.10 => /lib64/libgmp.so.10 (0x00007f6fc308b000)
libXau.so.6 => /lib64/libXau.so.6 (0x00007f6fc2e87000)
libgraphite2.so.3 => /lib64/libgraphite2.so.3 (0x00007f6fc2c5b000)
libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f6fc2a43000)
Possible fixes
Install pango: https://repo1.dso.mil/dsop/opensource/apache/guacamole/guacamole-server/-/blob/development/Dockerfile#L51
diff --git a/Dockerfile b/Dockerfile
index 14e0937f..7abcec8b 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -48,7 +48,7 @@ COPY freerdp-libs.rpm lame-libs.rpm libev.rpm libssh2.rpm libvncserver.rpm libwe
RUN dnf update -y && \
rpm --import /opt/signatures/* && \
- dnf install -y --nodocs nmap dejavu-sans-fonts libwebp cairo uuid && \
+ dnf install -y --nodocs nmap dejavu-sans-fonts libwebp cairo uuid pango && \
dnf localinstall -y /opt/pkgs/*.rpm && \
rm -rf /opt/pkgs && \
rm -rf /opt/signatures && \
Defintion of Done
-
Bug has been identified and corrected within the container
Edited by Jacob Rohlman