Page 1 of 1

SOLVED: HTML5 Desktop & Built-in Dockers not accessible

Posted: Sun Oct 31, 2021 4:20 pm
by robodocs
***Edit up front*** Solved: Make sure to keep your VM network outside of the 172.17.0.0/16 range--the network from which your EVE-NG instance is getting a DHCP Address from in order to communicate with other networks/the internet. That's what broke this. Everything is good now; leaving the post below to assist others.


Hello,

Fresh install of Pro VM 4.0.1-62-Pro following the VM install procedure in the Pro Cookbook. When I attempt to login to the Html5 Desktop, it says, "Connecting. Connected to Guacamole. Waiting for a response." Then eventually: "Connection Error - The connection has been closed because the server is taking too long to respond..." then options to select Home, Retry, or Log Out.

Yes, Docker is installed:

Code: Select all

root@eve-ng:~# dc images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
eve-wireshark       latest              513dbb9fd3c4        6 weeks ago         1.58GB
registry            2                   b2cb11db9d3d        2 months ago        26.2MB
eve-desktop         latest              ca1333621bd7        16 months ago       3.65GB
eve-gui-server      latest              9db19c879a17        16 months ago       3.84GB
eve-firefox         latest              0266d108a1bb        18 months ago       2.12GB
I can see the active connection to which the first message references in netstat:

Code: Select all

root@eve-ng:~# netstat | grep 4822
tcp        0      0 localhost:4822          localhost:56308         ESTABLISHED
tcp        0      0 localhost:56308         localhost:4822          ESTABLISHED
Further, If I use the Native Console to launch a Lab and attempt to connect to say a Firefox docker, I see almost the same symptoms "Connecting. Connected to Guacamole. Waiting for a response."

If I use the HTML5 Console, it allows me to download the RDP file to launch the Remote Desktop session, but also no connection when I try that. I do see that EVE-NG is listenting on the right port for the RDP connection...

Code: Select all

root@eve-ng:~# netstat -tulpn | grep LISTEN
tcp        0      0 127.0.0.1:444           0.0.0.0:*               LISTEN      654/php             
tcp        0      0 127.0.0.1:445           0.0.0.0:*               LISTEN      649/eve-helper      
tcp        0      0 0.0.0.0:19999           0.0.0.0:*               LISTEN      2499/netdata        
tcp        0      0 0.0.0.0:9090            0.0.0.0:*               LISTEN      653/php             
tcp        0      0 127.0.0.1:8005          0.0.0.0:*               LISTEN      3264/java           
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      2565/mysqld         
tcp        0      0 127.0.0.1:8080          0.0.0.0:*               LISTEN      3264/java           
tcp        0      0 127.0.0.1:4243          0.0.0.0:*               LISTEN      2498/dockerd        
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      1008/systemd-resolv 
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2543/sshd           
tcp        0      0 127.0.0.1:4822          0.0.0.0:*               LISTEN      2540/guacd          
tcp6       0      0 :::443                  :::*                    LISTEN      2423/apache2        
tcp6       0      0 :::80                   :::*                    LISTEN      2423/apache2        
****tcp6       0      0 :::43669                :::*                    LISTEN      32529/docker_wrappe ****
tcp6       0      0 :::22                   :::*                    LISTEN      2543/sshd           
tcp6       0      0 :::8088                 :::*                    LISTEN      2496/janus 

but my workstation gets no response (SYN_SENT). I did a TCP dump on EVE-NG and my workstation--I see the SYN go out from my workstation and EVE-NG sees it come in, but no reply.

Code: Select all

C:\Users\rober>netstat -n

Active Connections

  Proto  Local Address          Foreign Address        State
  TCP    127.0.0.1:50409        127.0.0.1:50410        ESTABLISHED
  TCP    127.0.0.1:50410        127.0.0.1:50409        ESTABLISHED
  TCP    127.0.0.1:50416        127.0.0.1:50417        ESTABLISHED
  TCP    127.0.0.1:50417        127.0.0.1:50416        ESTABLISHED
  TCP    127.0.0.1:50468        127.0.0.1:50469        ESTABLISHED
  TCP    127.0.0.1:50469        127.0.0.1:50468        ESTABLISHED
  TCP    127.0.0.1:50475        127.0.0.1:50476        ESTABLISHED
  TCP    127.0.0.1:50476        127.0.0.1:50475        ESTABLISHED
  TCP    127.0.0.1:50483        127.0.0.1:65001        ESTABLISHED
  TCP    127.0.0.1:50486        127.0.0.1:50504        ESTABLISHED
  TCP    127.0.0.1:50504        127.0.0.1:50486        ESTABLISHED
  TCP    127.0.0.1:65001        127.0.0.1:50483        ESTABLISHED
  TCP    172.17.128.1:1695      172.17.132.55:22       ESTABLISHED
  TCP    172.17.128.1:32085     172.17.131.43:22       ESTABLISHED
  TCP    172.17.128.1:33301     172.17.132.55:443      ESTABLISHED
****TCP    172.17.128.1:33306     172.17.132.55:43669    SYN_SENT****
  TCP    192.168.1.104:1862     192.168.1.152:8008     ESTABLISHED
  TCP    192.168.1.104:18905    192.168.1.152:8009     ESTABLISHED
  TCP    192.168.1.104:31654    13.64.180.106:443      ESTABLISHED


I suspect something is broken with guacd but restarting that service, I don't see any errors:

Code: Select all

root@eve-ng:~# tail /var/log/syslog | grep guacd
Oct 31 10:13:40 eve-ng guacd[17571]: Stopping guacd: SUCCESS
Oct 31 10:13:40 eve-ng systemd[1]: guacd.service: Consumed 298ms CPU time
Oct 31 10:13:40 eve-ng guacd[17580]: Guacamole proxy daemon (guacd) version 1.0.0 started
Oct 31 10:13:40 eve-ng guacd[17578]: Starting guacd: guacd[17580]: INFO:#011Guacamole proxy daemon (guacd) version 1.0.0 started
Oct 31 10:13:40 eve-ng guacd[17578]: SUCCESS
Oct 31 10:13:40 eve-ng guacd[17582]: Listening on host 127.0.0.1, port 4822

Anyone else run into this issue? Also note, I did reinstall dockers and fixed permissions. I actually did a complete fresh install on the EVE-NG, and get the exact same symptoms on the second install. I do see this in the catalina.out logs--these appear to coorelate with the html5 desktop connections:

Code: Select all

11:22:04.098 [Thread-42] ERROR o.a.g.w.GuacamoleWebSocketTunnelEndpoint - Connection to guacd terminated abnormally: Connection to guacd timed out.
11:22:04.099 [Thread-42] INFO  o.a.g.tunnel.TunnelRequestService - User "admin" disconnected from connection "44763". Duration: 15105 milliseconds
11:22:19.995 [http-nio-127.0.0.1-8080-exec-3] INFO  o.a.g.tunnel.TunnelRequestService - User "admin" connected to connection "44763".
11:22:35.095 [Thread-44] ERROR o.a.g.w.GuacamoleWebSocketTunnelEndpoint - Connection to guacd terminated abnormally: Connection to guacd timed out.
11:22:35.096 [Thread-44] INFO  o.a.g.tunnel.TunnelRequestService - User "admin" disconnected from connection "44763". Duration: 15101 milliseconds
11:22:40.538 [http-nio-127.0.0.1-8080-exec-4] INFO  o.a.g.tunnel.TunnelRequestService - User "admin" connected to connection "44763".
11:22:55.631 [Thread-46] ERROR o.a.g.w.GuacamoleWebSocketTunnelEndpoint - Connection to guacd terminated abnormally: Connection to guacd timed out.
11:22:55.631 [Thread-46] INFO  o.a.g.tunnel.TunnelRequestService - User "admin" disconnected from connection "44763". Duration: 15093 milliseconds
Info about the guacd process:

Code: Select all

root@eve-ng:/var/log/tomcat8# systemctl status guacd 
* guacd.service - LSB: Guacamole proxy daemon
   Loaded: loaded (/etc/init.d/guacd; generated)
   Active: active (running) since Sun 2021-10-31 11:10:55 MDT; 13min ago
     Docs: man:systemd-sysv-generator(8)
  Process: 2507 ExecStart=/etc/init.d/guacd start (code=exited, status=0/SUCCESS)
    Tasks: 8 (limit: 4915)
   Memory: 11.1M
      CPU: 201ms
   CGroup: /system.slice/guacd.service
           |-2546 /usr/local/sbin/guacd -p /var/run/guacd.pid
           `-5562 /usr/local/sbin/guacd -p /var/run/guacd.pid

Oct 31 11:24:10 eve-ng guacd[4310]: Last user of connection "$0cc868de-782a-43c6-b069-a7dad47cf1f4" disconnected
Oct 31 11:24:11 eve-ng guacd[2546]: Creating new client for protocol "rdp"
Oct 31 11:24:11 eve-ng guacd[2546]: Connection ID is "$e44855af-c160-4640-ae20-692f12da74e6"
Oct 31 11:24:11 eve-ng guacd[5562]: Security mode: ANY
Oct 31 11:24:11 eve-ng guacd[5562]: Resize method: reconnect
Oct 31 11:24:11 eve-ng guacd[5562]: User "@2c24ea4c-60e0-4ba3-a511-d8f0033b9115" joined connection "$e44855af-c160-4640-ae20-692f12da74e6" (1 users now present)
Oct 31 11:24:11 eve-ng guacd[5562]: Loading keymap "base"
Oct 31 11:24:11 eve-ng guacd[5562]: Loading keymap "en-us-qwerty"
Oct 31 11:24:15 eve-ng guacd[4310]: Client did not terminate in a timely manner. Forcibly terminating client and any child processes.
Oct 31 11:24:15 eve-ng guacd[2546]: Connection "$0cc868de-782a-43c6-b069-a7dad47cf1f4" removed.

Here is the full debug log for trying to connect to HTML5 Desktop:

Code: Select all

root@eve-ng:/#   /usr/local/sbin/guacd -f -L debug
guacd[31330]: INFO:     Guacamole proxy daemon (guacd) version 1.0.0 started
guacd[31330]: DEBUG:    Successfully bound socket to host 127.0.0.1, port 4822
guacd[31330]: INFO:     Listening on host 127.0.0.1, port 4822
guacd[31330]: INFO:     Creating new client for protocol "rdp"
guacd[31330]: INFO:     Connection ID is "$82b450ea-a973-45b0-8ea0-f1b5b502ea5f"
guacd[830]: DEBUG:      Parameter "console" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "console-audio" omitted. Using default value of 0.
guacd[830]: INFO:       Security mode: ANY
guacd[830]: DEBUG:      User resolution is 2560x1321 at 96 DPI
guacd[830]: DEBUG:      Parameter "dpi" omitted. Using default value of 96.
guacd[830]: DEBUG:      Using resolution of 2560x1321 at 96 DPI
guacd[830]: DEBUG:      Parameter "read-only" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "client-name" omitted. Using default value of "Guacamole RDP".
guacd[830]: DEBUG:      Parameter "enable-wallpaper" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "enable-theming" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "enable-font-smoothing" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "enable-full-window-drag" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "enable-desktop-composition" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "enable-menu-animations" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "disable-bitmap-caching" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "disable-offscreen-caching" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "disable-glyph-caching" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "color-depth" omitted. Using default value of 16.
guacd[830]: DEBUG:      Parameter "disable-audio" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "printer-name" omitted. Using default value of "Guacamole Printer".
guacd[830]: DEBUG:      Parameter "drive-name" omitted. Using default value of "Guacamole Filesystem".
guacd[830]: DEBUG:      Parameter "enable-sftp" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "sftp-hostname" omitted. Using default value of "172.17.186.59".
guacd[830]: DEBUG:      Parameter "sftp-port" omitted. Using default value of "22".
guacd[830]: DEBUG:      Parameter "sftp-username" omitted. Using default value of "root".
guacd[830]: DEBUG:      Parameter "sftp-password" omitted. Using default value of "".
guacd[830]: DEBUG:      Parameter "sftp-passphrase" omitted. Using default value of "".
guacd[830]: DEBUG:      Parameter "sftp-root-directory" omitted. Using default value of "/".
guacd[830]: DEBUG:      Parameter "sftp-server-alive-interval" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "recording-name" omitted. Using default value of "recording".
guacd[830]: DEBUG:      Parameter "recording-exclude-output" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "recording-exclude-mouse" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "recording-include-keys" omitted. Using default value of 0.
guacd[830]: DEBUG:      Parameter "create-recording-path" omitted. Using default value of 0.
guacd[830]: INFO:       Resize method: reconnect
guacd[830]: DEBUG:      Parameter "gateway-port" omitted. Using default value of 443.
guacd[830]: INFO:       User "@e0895a23-b6ae-4009-b16f-e3a813aad0c6" joined connection "$82b450ea-a973-45b0-8ea0-f1b5b502ea5f" (1 users now present)
guacd[830]: DEBUG:      guac_rdp_fs_alloc: Creating directory "/tmp/admin" if necessary.
guacd[830]: INFO:       Loading keymap "base"
guacd[830]: INFO:       Loading keymap "en-us-qwerty"
guacd[830]: DEBUG:      Registering DVC plugin "guacai"
guacd[830]: DEBUG:      guac_rdp_fs_open: path="/", access=0x80000000, file_attributes=0x0, create_disposition=0x1, create_options=0x0
guacd[830]: DEBUG:      guac_rdp_fs_open: Normalized path "/" to "\".
guacd[830]: DEBUG:      guac_rdp_fs_open: Translated path "\" to "/tmp/admin/".
guacd[830]: DEBUG:      guac_rdp_fs_open: native open: real_path="/tmp/admin/", flags=0x0
guacd[830]: DEBUG:      guac_rdp_fs_open: Opened "\" as file_id=0
guacd[830]: DEBUG:      guac_rdp_fs_close: Closed "\" (file_id=0)
guacd[830]: ERROR:      User is not responding.
guacd[830]: INFO:       User "@e0895a23-b6ae-4009-b16f-e3a813aad0c6" disconnected (0 users remain)
guacd[830]: INFO:       Last user of connection "$82b450ea-a973-45b0-8ea0-f1b5b502ea5f" disconnected
guacd[830]: DEBUG:      Requesting termination of client...