wouter205
wouter205

Reputation: 81

Websocket connection failed: connection closed before receiving a handshake response

I'm trying to implement a guacamole (remote connection to pc through browser) but when trying to connect through internet, I get the following errors:

Failed to load resource: the server responded with a status of 429 (Too Many Requests)

&

app.js?v=0.9.13-incubating:129 WebSocket connection to 'wss://remote.company.com/guacamole/websocket-tunnel?token=E8577744842BFA261785C52CAA309CBC6FC5DBE262E7508FF6F49C1821AB6F58&GUAC_DATA_SOURCE=mysql&GUAC_ID=1&GUAC_TYPE=c&GUAC_WIDTH=917&GUAC_HEIGHT=922&GUAC_DPI=110&GUAC_AUDIO=audio%2FL8&GUAC_AUDIO=audio%2FL16&GUAC_IMAGE=image%2Fjpeg&GUAC_IMAGE=image%2Fpng&GUAC_IMAGE=image%2Fwebp' failed: Connection closed before receiving a handshake response

Thus a websocket connection could not be established and everything goes through HTTP which means slow performance.

In my opinion, this is caused by an extra proxy I've set up in order to reach the site from outside.

Here is the setup:

url: https://remote.company.com

Port 443 is forwarded to firewall: Proxy from remote.company.com to <IP ADDRESS guacamole server:8080> In the Apache vhost, I have the following proxy's in order to establish websocket tunnel:

<Location /guacamole/>
    Order allow,deny
    Allow from all
    ProxyPass http://localhost:8080/guacamole/ flushpackets=on
    ProxyPassReverse http://localhost:8080/guacamole/
</Location>

<Location /guacamole/websocket-tunnel>
    Order allow,deny
    Allow from all
    ProxyPass ws://localhost:8080/guacamole/websocket-tunnel
    ProxyPassReverse ws://localhost:8080/guacamole/websocket-tunnel
</Location>

All according to the documentation What do I need to change in order to establish websocket tunnel?

Upvotes: 3

Views: 2392

Answers (1)

cperez08
cperez08

Reputation: 749

as I see in your configuration everything seems to be ok. please check if your configuration has this:

  • Apache >= 2.4.5
  • enabled mod_proxy_wstunnel.

This is how appears in my PC LoadModule proxy_wstunnel_module libexec/apache2/mod_proxy_wstunnel.so

Upvotes: 0

Related Questions