A quick primer for those who have not heard, ShadowsocksR (or SSR) is a set of protocol obfuscation + encryption tool that masks your traffic as regular traffic, turning them to what looks like regular TLS handshakes or auth_chain requests under the view of DPI engines.
I have a Sophos XG deployed in my network in transparent mode. I have clients in the local network connecting to external SSR servers. For destination servers that run on non HTTP/HTTPS ports, the clients would connect absolutely fine. But for servers which listens on port 443 or port 80, the connection will be broken. To be precise, such connections are still established, but the actual data is not returned. I am guessing Sophos XG has performed some man-in-middle modifications to the packets that are destined for port 80 and 443, and the SSR encryption becomes non-decryptable by this change.
In an attept to rectify this issue, I have tried the following:
- disabling add_via_header in http_proxy settings
- enabling relay_invalid_http_traffic in proxy_settings
- add the destination server IP in the Web Exceptions list
- disabling Web policy in firewall altogether
- temporarily uses an "allow all" firewall rule from LAN to WAN
- disabling microapp-discovery and application_clasification
But it would still fail. HTTP/HTTPS scanning/decryption and application control are already disabled by default. The current workaround is to relay such traffic via a node in the DMZ or public cloud, which is a bit counterproductive.
I am wondering if there is anything else I could try that might work without having to relay the traffic? Many thanks in advance.
This thread was automatically locked due to age.