[squid-dev] [PATCH] Support tunneling of bumped non-HTTP traffic. Other SslBump fixes.
Christos Tsantilas
christos at chtsanti.net
Mon Oct 17 07:57:08 UTC 2016
On 10/14/2016 02:30 PM, Marcus Kool wrote:
> I started testing this patch and observed one unwanted side effect of
> this patch:
> When a client connects to mtalk.google.com,
> Squid sends the following line to the URL rewriter:
> (unknown)://173.194.76.188:443 <IP>/<IP> - NONE
Thank you.
I should have refer on this effect.
Squid has already established a bumbed TLS tunnel between client and server.
The client sends a request which is not an HTTP request and squid
because of "on_unsupported_protocol" decides to just tunnel any new
bytes from client to the server and vice versa.
Squid generates internally request to serve the non-HTTP client request,
and this is what you are seeing as "(unknown)://173.194.76.188:443".
This is an effect of this patch. Personally I found it a good idea, it
is not a bad way to express a non supported protocol.
But I would like to hear proposals for better handling these cases.
Regards,
Christos
>
> Marcus
>
> Quoting Christos Tsantilas <christos at chtsanti.net>:
>
>> Use case: Skype groups appear to use TLS-encrypted MSNP protocol
>> instead of HTTPS. This change allows Squid admins using SslBump to
>> tunnel Skype groups and similar non-HTTP traffic bytes via
>> "on_unsupported_protocol tunnel all". Previously, the combination
>> resulted in encrypted HTTP 400 (Bad Request) messages sent to the
>> client (that does not speak HTTP).
>>
>> Also this patch:
>> * fixes bug 4529: !EBIT_TEST(entry->flags, ENTRY_FWD_HDR_WAIT)
>> assertion in FwdState.cc.
>>
>> * when splicing transparent connections during SslBump step1, avoid
>> access-logging an extra record and log %ssl::bump_mode as the expected
>> "splice" not "none".
>>
>> * handles an XXX comment inside clientTunnelOnError for possible
>> memory leak of client streams related objects
>>
>> * fixes TunnelStateData logging in the case of splicing after peek.
>>
>> This is a Measurement Factory project.
>
More information about the squid-dev
mailing list