I have just set up Squid Server 3.5.26 on Ubuntu 16.04.2 LTS configured with SSL-bump. Http and Https is working fine but any web service that requires Web Sockets fails, for example, a speed test.
I have added the following lines to my squid configuration in an attempt to force a direct connection and prevent SSL caching for web socket connections.
#Temporarily allow all connections for debugging http_access allow all acl bump-bypass dstdomain 192.168.0.245 .speedtest.net # URL's contains ws (most web socket urls do) acl ssl-web-sockets SSL::server_name_regex \/ws acl step1 at_step SslBump1 ssl_bump peek step1 ssl_bump splice bump-bypass ssl-web-sockets tcp-web-sockets #I Read that there was a bug in bump that required !explicity #for splice to work for web sockets ssl_bump bump !ssl-web-sockets all #just bump all doesn't work either #ssl_bump bump all
If I disable ssl-bump and don't decrypt encrypted traffic everything works fine.
How can I configure squid to allow direct web socket connection?
Updated to Squid Server 4.0.21 and added to config
on_unsupported_protocol tunnel all
The documentation says this should allow TCP tunnel connections
Sadly this did not fix the issue either, still getting Web socket error
Connection closed before receiving a handshake response