[
https://issues.apache.org/jira/browse/GUACAMOLE-2060?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17947654#comment-17947654
]
Aaron Iles commented on GUACAMOLE-2060:
---------------------------------------
I rebuilt the container images from scratch on a Fedora 42 workstation and did
not run into the issues with the client aforementioned but still had the
disconnect issues.
I then circumvented my reverse proxy (caddy) and hit the guacamole server
IP/port directly and boom- no issues with the resizing anymore. So it appears
that something has changed with the web service that is causing it to get
unhappy when the window is resized *when behind a reverse proxy.* For
reference, this is what my config looks like in caddy. I am tweaking it now to
try to remedy the issue in case anyone else runs into this
{code:java}
guacamole.<my_public_domain> {
reverse_proxy http://guacamole.<my_private_domain>:8080 {
flush_interval -1
header_up Host {remote}
header_up X-Real-IP {remote}
header_up X-Forwarded-For {remote}
header_up X-Forwarded-Port {server_port}
header_up X-Forwarded-Proto {scheme}
header_up X-Url-Scheme {scheme}
header_up X-Forwarded-By {host}
}
}{code}
> Resizing window causes guacamole to disconnect
> ----------------------------------------------
>
> Key: GUACAMOLE-2060
> URL: https://issues.apache.org/jira/browse/GUACAMOLE-2060
> Project: Guacamole
> Issue Type: Bug
> Affects Versions: 1.6.0
> Environment: guacamole server OS: Rocky 9.5
> remote server OS: Rocky 9.5
> deployment method: docker container
> guacamole-server branch: staging/1.6.0
> guacamole-client branch: staging/1.6.0
> * Both the guacamole server and remote server are on the same private network.
> Reporter: Aaron Iles
> Priority: Major
>
> h1. Build Process
> I built the guacd and guacamole images using the corresponding Dockerfiles in
> the repos from branches `staging/1.6.0`.
> {code:java}
> git clone https://github.com/apache/guacamole-server.git
> cd guacamole-server
> git checkout staging/1.6.0
> docker build .
> cd ..
> git clone https://github.com/apache/guacamole-client.git
> cd guacamole-client
> git checkout staging/1.6.0
> # Had to make a small modification to
> guacamole/src/main/frontend/webpack.config.js to disable ClosureWebpackPlugin
> to get a successful build
> docker build .{code}
> Once the images were built I stood up guacamole, guacd, and postgres using
> the instructions from the documentation.
> h1. Reproducer
> # Create an ssh connection in guacamole to any machine (this also happens
> with RDP connections)
> # Once successfully authenticated and the prompt is visible, resize the
> browser in which guacamole is running.
> # Wait 15 seconds or so and notice the connection drop with the error
> {code:java}
> The Guacamole server has closed the connection because there has been no
> response from your browser for long enough that it appeared to be
> disconnected. This is commonly caused by network problems, such as spotty
> wireless signal, or simply very slow network speeds. Please check your
> network and try again.{code}
> If you allow the connection to re-establish, all is well again. Resize the
> window again and you may get an error like this
> {code:java}
> An internal error has occurred within the Guacamole server, and the
> connection has been terminated. If the problem persists, please notify your
> system administrator, or check your system logs. {code}
> h1. Logs (SSH)
> {code:java}
> guacd | guacd[1]: INFO: Creating new client for protocol "ssh"
> guacd | guacd[1]: INFO: Connection ID is
> "$8dc51045-4ab2-4113-b11b-b141262216e4"
> guacd | guacd[5044]: INFO: User "@e2e79a9a-6496-4192-b03d-29d6f30bad05"
> joined connection "$8dc51045-4ab2-4113-b11b-b141262216e4" (1 users now
> present)
> guacd | guacd[5044]: WARNING: No known host keys provided, host
> identity will not be verified.
> guacamole | 22:14:26.213 [http-nio-8080-exec-5] INFO
> o.a.g.tunnel.TunnelRequestService - User "aaron" connected to connection "10".
> guacd | guacd[5044]: WARNING: Unable to set the timezone: SSH
> server refused to set "TZ" variable.
> guacd | guacd[5044]: INFO: SSH connection successful.
> # At this moment I resized my browser window
> guacamole | 22:14:32.650 [http-nio-8080-exec-3] INFO
> o.a.g.tunnel.TunnelRequestService - User "aaron" connected to connection "10".
> guacamole | 22:14:32.719 [http-nio-8080-exec-1] INFO
> o.a.g.tunnel.TunnelRequestService - User "aaron" connected to connection "10".
> guacd | guacd[1]: INFO: Creating new client for protocol "ssh"
> guacd | guacd[1]: INFO: Connection ID is
> "$35043639-b133-4ec9-9303-0ed265c718e9"
> guacd | guacd[5065]: INFO: User "@10bb93cc-8dd1-41d8-9560-c21c9a513027"
> joined connection "$35043639-b133-4ec9-9303-0ed265c718e9" (1 users now
> present)
> guacd | guacd[1]: INFO: Creating new client for protocol "ssh"
> guacd | guacd[1]: INFO: Connection ID is
> "$0eebddf6-25fd-4908-954c-657012c649ee"
> guacd | guacd[5081]: INFO: User "@dc27a036-c655-4a0a-8c82-0d74a17d0a6d"
> joined connection "$0eebddf6-25fd-4908-954c-657012c649ee" (1 users now
> present)
> guacd | guacd[5065]: WARNING: No known host keys provided, host
> identity will not be verified.
> guacd | guacd[5081]: WARNING: No known host keys provided, host
> identity will not be verified.
> guacd | guacd[5065]: WARNING: Unable to set the timezone: SSH
> server refused to set "TZ" variable.
> guacd | guacd[5065]: INFO: SSH connection successful.
> guacd | guacd[5081]: WARNING: Unable to set the timezone: SSH
> server refused to set "TZ" variable.
> guacamole | 22:14:32.910 [http-nio-8080-exec-6] INFO
> o.a.g.tunnel.TunnelRequestService - User "aaron" disconnected from connection
> "10". Duration: 191 milliseconds
> guacd | guacd[5081]: INFO: SSH connection successful.{code}
> h1. Logs (RDP)
> {code:java}
> guacamole | 22:18:43.976 [http-nio-8080-exec-1] INFO
> o.a.g.tunnel.TunnelRequestService - User "aaron" connected to connection "9".
> guacd | guacd[1]: INFO: Creating new client for protocol "rdp"
> guacd | guacd[1]: INFO: Connection ID is
> "$3c3023c5-1ada-4010-9f7e-d84f59eced86"
> guacd | guacd[5140]: INFO: Security mode: NLA
> guacd | guacd[5140]: INFO: Resize method: none
> guacd | guacd[5140]: INFO: Clipboard line ending normalization: Unix (LF)
> guacd | guacd[5140]: INFO: User "@6c2d8abf-0aa8-4575-be56-d0d5e3e1d671"
> joined connection "$3c3023c5-1ada-4010-9f7e-d84f59eced86" (1 users now
> present)
> guacd | guacd[5140]: INFO: Local system reports 2 processor(s) are
> available.
> guacd | guacd[5140]: INFO: Graphical updates will be encoded using 2
> worker thread(s).
> guacd | guacd[5140]: INFO: Loading keymap "base"
> guacd | guacd[5140]: INFO: Loading keymap "en-us-qwerty"
> # At this moment I resized the browser window
> guacamole | 22:18:43.976 [http-nio-8080-exec-1] INFO
> o.a.g.tunnel.TunnelRequestService - User "aaron" connected to connection "9".
> guacd | guacd[1]: INFO: Creating new client for protocol "rdp"
> guacd | guacd[1]: INFO: Connection ID is
> "$3c3023c5-1ada-4010-9f7e-d84f59eced86"
> guacd | guacd[5140]: INFO: Security mode: NLA
> guacd | guacd[5140]: INFO: Resize method: none
> guacd | guacd[5140]: INFO: Clipboard line ending normalization: Unix (LF)
> guacd | guacd[5140]: INFO: User "@6c2d8abf-0aa8-4575-be56-d0d5e3e1d671"
> joined connection "$3c3023c5-1ada-4010-9f7e-d84f59eced86" (1 users now
> present)
> guacd | guacd[5140]: INFO: Local system reports 2 processor(s) are
> available.
> guacd | guacd[5140]: INFO: Graphical updates will be encoded using 2
> worker thread(s).
> guacd | guacd[5140]: INFO: Loading keymap "base"
> guacd | guacd[5140]: INFO: Loading keymap "en-us-qwerty"
> guacd | guacd[1]: INFO: Creating new client for protocol "rdp"
> guacd | guacd[1]: INFO: Connection ID is
> "$93dce036-a405-47ab-8bd9-a1232bd09906"
> guacd | guacd[5172]: INFO: Security mode: NLA
> guacd | guacd[5172]: INFO: Resize method: none
> guacd | guacd[5172]: INFO: Clipboard line ending normalization: Unix (LF)
> guacd | guacd[5172]: INFO: User "@f5f0ab7f-cc9a-4792-89b5-a5a47c143bfc"
> joined connection "$93dce036-a405-47ab-8bd9-a1232bd09906" (1 users now
> present)
> guacd | guacd[5172]: INFO: Local system reports 2 processor(s) are
> available.
> guacd | guacd[5172]: INFO: Graphical updates will be encoded using 2
> worker thread(s).
> guacd | guacd[5172]: INFO: Loading keymap "base"
> guacd | guacd[5172]: INFO: Loading keymap "en-us-qwerty"
> guacd | guacd[1]: INFO: Creating new client for protocol "rdp"
> guacd | guacd[1]: INFO: Connection ID is
> "$e017719b-d15f-4260-b83c-537f875bf116"
> guacd | guacd[5187]: INFO: Security mode: NLA
> guacamole | 22:18:59.998 [http-nio-8080-exec-12] INFO
> o.a.g.tunnel.TunnelRequestService - User "aaron" connected to connection "9".
> guacamole | 22:19:00.015 [http-nio-8080-exec-10] INFO
> o.a.g.tunnel.TunnelRequestService - User "aaron" connected to connection "9".
> guacd | guacd[5187]: INFO: Resize method: none
> guacd | guacd[5187]: INFO: Clipboard line ending normalization: Unix (LF)
> guacd | guacd[5187]: INFO: User "@036b04f8-78a6-471d-aa68-67ff3e118369"
> joined connection "$e017719b-d15f-4260-b83c-537f875bf116" (1 users now
> present)
> guacd | guacd[5187]: INFO: Local system reports 2 processor(s) are
> available.
> guacd | guacd[5187]: INFO: Graphical updates will be encoded using 2
> worker thread(s).
> guacd | guacd[5187]: INFO: Loading keymap "base"
> guacd | guacd[5187]: INFO: Loading keymap "en-us-qwerty"
> guacd | guacd[5140]: ERROR: User is not responding.
> guacd | guacd[5140]: INFO: User "@6c2d8abf-0aa8-4575-be56-d0d5e3e1d671"
> disconnected (0 users remain)
> guacd | guacd[5140]: INFO: Last user of connection
> "$3c3023c5-1ada-4010-9f7e-d84f59eced86" disconnected
> guacd | guacd[5187]: INFO: User "@036b04f8-78a6-471d-aa68-67ff3e118369"
> disconnected (0 users remain)
> guacd | guacd[5187]: INFO: Last user of connection
> "$e017719b-d15f-4260-b83c-537f875bf116" disconnected
> guacd | guacd[5172]: ERROR: User is not responding.
> guacd | guacd[5172]: INFO: User "@f5f0ab7f-cc9a-4792-89b5-a5a47c143bfc"
> disconnected (0 users remain){code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)