cbeuw / Cloak

A censorship circumvention tool to evade detection by authoritarian state adversaries
GNU General Public License v3.0
3.32k stars 296 forks source link

Cloak behind Caddy reverse-proxy is unreachable with Android app. #214

Open schebotar opened 1 year ago

schebotar commented 1 year ago

Hello. I have running docker containers with cloak, shadowsocks and Caddy. Caddy is configured to redirect requests from my domain to cloak container like this

my.domain.net {
        reverse_proxy cloak:443
}

Request my.domain.net from Firefox seems ok. Cloak logs:

cloak  | time="2023-02-21T14:28:34Z" level=warning msg="failed to unmarshal hidden data from WS into authFragments: non (or malformed) HTTP GET" UID= encryptionMethod=0 proxyMethod= remoteAddr="10.10.0.3:43138" sessionId=0

10.10.0.3 is Caddy container IP

But i can't establish connection from Android Shadowsocks client. Cloak logs are silent.

Bypassing cloak container port to server port 8443 works fine. docker-compose:

ports:
  - "8443:443"

And android app works great with 8443 in settings.

Did I miss something in Caddy settings?

valerius2k commented 1 year ago

See my comment in ticket #219. You need "Transport" setting in Cloak client settings to be set to "CDN", not "direct" if you put Cloak behind a reverse proxy. Found that suddenly when experimenting with Cloak and Nginx.