Apparently there are two problems.
The first is a ipv4 vs. ipv6 issue. If I use localhost in guacd.conf:
[server]
bind_host = localhost
bind_port = 4822

guacd binds to a ipv6 address and guacamola never finds it. Change guacd.conf to
[server]
bind_host = 127.0.0.1
bind_port = 4822

and guacamola now finds guacd.

Second problem:
guacd can't find its vnc plugin. Again, systemctl status guacd yields:
Jan 31 18:10:22 pi4dev guacd[5518]: Creating new client for protocol "vnc" Jan 31 18:10:22 pi4dev guacd[5518]: Connection ID is "$4e2159ab-c7ff-4243-884f-267cd3bd8ad2"
Jan 31 18:10:22 pi4dev guacd[5567]: Cursor rendering: local
Jan 31 18:10:22 pi4dev guacd[5567]: User "@6c10f1d1-cf63-404a-8479-e16259dcccbe" joined connection "$4e2159ab-c7ff-4243-8>
Jan 31 18:10:22 pi4dev guacd[5567]: ConnectClientToTcpAddr6: connect
Jan 31 18:10:22 pi4dev guacd[5567]: Unable to connect to VNC server
Jan 31 18:10:22 pi4dev guacd[5567]: Unable to connect to VNC server.
Jan 31 18:10:32 pi4dev guacd[5567]: User "@6c10f1d1-cf63-404a-8479-e16259dcccbe" disconnected (0 users remain) Jan 31 18:10:32 pi4dev guacd[5567]: Last user of connection "$4e2159ab-c7ff-4243-884f-267cd3bd8ad2" disconnected Jan 31 18:10:32 pi4dev guacd[5518]: Connection "$4e2159ab-c7ff-4243-884f-267cd3bd8ad2" removed.

And yet I compiled guacamole with vnc support:
------------------------------------------------
guacamole-server version 1.5.4
------------------------------------------------

   Library status:

     freerdp2 ............ no
     pango ............... yes
     libavcodec .......... yes
     libavformat.......... yes
     libavutil ........... yes
     libssh2 ............. yes
     libssl .............. yes
     libswscale .......... yes
     libtelnet ........... no
     libVNCServer ........ yes
     libvorbis ........... no
     libpulse ............ no
     libwebsockets ....... yes
     libwebp ............. yes
     wsock32 ............. no

   Protocol support:

      Kubernetes .... yes
      RDP ........... no
      SSH ........... yes
      Telnet ........ no
      VNC ........... yes

   Services / tools:

      guacd ...... yes
      guacenc .... yes
      guaclog .... yes

   FreeRDP plugins: no
   Init scripts: no
   Systemd units: no

And the plugin libraries are in /usr/local/lib:
jeh@pi4dev:/usr/local/lib $ ls
cmake libguac-client-ssh.so.0.0.0 libguac-terminal.la libopen62541.so.1.3.2 libguac.a libguac-client-vnc.a libguac-terminal.so libuldaq.a libguac-client-kubernetes.a libguac-client-vnc.la libguac-terminal.so.0 libuldaq.la libguac-client-kubernetes.la libguac-client-vnc.so libguac-terminal.so.0.1.0 libuldaq.so libguac-client-kubernetes.so libguac-client-vnc.so.0 libmxml.a libuldaq.so.1 libguac-client-kubernetes.so.0 libguac-client-vnc.so.0.0.0 libmxml.so libuldaq.so.1.2.0 libguac-client-kubernetes.so.0.0.0 libguac.la libmxml.so.1 pkgconfig libguac-client-ssh.a libguac.so libmxml.so.1.6 pypy2.7 libguac-client-ssh.la libguac.so.23 libopen62541.a python2.7 libguac-client-ssh.so libguac.so.23.0.0 libopen62541.so python3.11 libguac-client-ssh.so.0 libguac-terminal.a libopen62541.so.1

And according to ldconfig the libraries are known.
jeh@pi4dev:/usr/local/lib $ ldconfig --print-cache | grep libguac
        libguac.so.23 (libc6,hard-float) => /usr/local/lib/libguac.so.23
        libguac.so (libc6,hard-float) => /usr/local/lib/libguac.so
libguac-terminal.so.0 (libc6,hard-float) => /usr/local/lib/libguac-terminal.so.0 libguac-terminal.so (libc6,hard-float) => /usr/local/lib/libguac-terminal.so libguac-client-vnc.so.0 (libc6,hard-float) => /usr/local/lib/libguac-client-vnc.so.0 libguac-client-vnc.so (libc6,hard-float) => /usr/local/lib/libguac-client-vnc.so libguac-client-ssh.so.0 (libc6,hard-float) => /usr/local/lib/libguac-client-ssh.so.0 libguac-client-ssh.so (libc6,hard-float) => /usr/local/lib/libguac-client-ssh.so libguac-client-kubernetes.so.0 (libc6,hard-float) => /usr/local/lib/libguac-client-kubernetes.so.0 libguac-client-kubernetes.so (libc6,hard-float) => /usr/local/lib/libguac-client-kubernetes.so


So what's the problem? Clearly I'm missing something.

Regards,  Jim



On 2024-01-30 19:20, jim...@porcine.com wrote:
It appears to be a ipv4 vs. ipv6 issue. Here is what I get with
systemctl status guacd after a failed attempt:

Jan 30 15:54:04 pi4dev guacd[6014]: Creating new client for protocol "vnc"
Jan 30 15:54:04 pi4dev guacd[6014]: Connection ID is
"$ea3a9369-9157-428c-be87-3b0e08498367"
Jan 30 15:54:04 pi4dev guacd[6061]: Cursor rendering: local
Jan 30 15:54:04 pi4dev guacd[6061]: User
"@d1cf66c3-9bb5-4a46-b8eb-82a718cae00f" joined connection
"$ea3a9369-9157-428c-be87-3b0e08498367" (1 users >
Jan 30 15:54:04 pi4dev guacd[6061]: ConnectClientToTcpAddr6: connect
Jan 30 15:54:04 pi4dev guacd[6061]: Unable to connect to VNC server
Jan 30 15:54:04 pi4dev guacd[6061]: Unable to connect to VNC server.
Jan 30 15:54:04 pi4dev guacd[6061]: User
"@d1cf66c3-9bb5-4a46-b8eb-82a718cae00f" disconnected (0 users remain)
Jan 30 15:54:04 pi4dev guacd[6061]: Last user of connection
"$ea3a9369-9157-428c-be87-3b0e08498367" disconnected
Jan 30 15:54:04 pi4dev guacd[6014]: Connection
"$ea3a9369-9157-428c-be87-3b0e08498367" removed.

I've already found as many "localhost" that I can find and replaced
them with "127.0.0.1"

Here is guacd.conf:

[server]
bind_host = 127.0.0.1
bind_port = 4822

and user-mapping.xml

<user-mapping>

    <!-- Per-user authentication and config information -->
    <authorize username="xxxxx" password="xxxxx">
        <protocol>vnc</protocol>
<!--        <protocol>rdp</protocol>  -->
        <param name="hostname">127.0.0.1</param>
        <param name="port">5900</param>
        <param name="password">VNCPASS</param>
    </authorize>

    <!-- Another user, but using md5 to hash the password
         (example below uses the md5 hash of "PASSWORD") -->
    <authorize
            username="USERNAME2"
            password="319f4d26e3c536b5dd871bb2c52e3178"
            encoding="md5">

        <!-- First authorized connection -->
        <connection name="127.0.0.1">
            <protocol>vnc</protocol>
            <param name="hostname">127.0.0.1</param>
            <param name="port">5901</param>
            <param name="password">VNCPASS</param>
        </connection>

        <!-- Second authorized connection -->
        <connection name="otherhost">
            <protocol>vnc</protocol>
            <param name="hostname">otherhost</param>
            <param name="port">5900</param>
            <param name="password">VNCPASS</param>
        </connection>

    </authorize>

</user-mapping>

Any suggestions?

Regards,  Jim

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscr...@guacamole.apache.org
For additional commands, e-mail: user-h...@guacamole.apache.org

Reply via email to