Help debugging JSON error behind a transparent proxy

I run a private install of VaultWarden (thank you!) Version 1.24.0 on Docker behind a Caddy proxy. Everything works perfectly across the open internet, can log in, store passwords, etc. from the Bitwarden desktop app, web site, Chrome and Firefox plugins.

However…

At work we have a transparent proxy to filter internet access. When I try to log in using the Chrome or desktop applications I get this error:

Same error occurs in the desktop application. However, if I log in before coming to work and lock the plugin, it works perfectly. Note: everything works perfectly if I log into vault.bitwarden.com, which leads me to think this is a Vaultwarden specific issue. Strangely, Safari works correctly even behind the proxy.

I could not find logs from Chrome or the app (I’m on a Mac), I would be grateful if someone pointed out where to find the logs so I could post those as well. The Vaultwarden server does not even register the login attempt from behind the transparent proxy, so it’s likely nothing to do with the Vaultwarden itself. Since this only happens with Vaultwarden (and not Bitwarden proper), I thought it best to report here.

You can view the response in the Network Panel of the Chrome Dev Tools. You can probably filter the results by Fetch/XHR requests because it looks like the proxy is filtering the JSON response from the server and instead returns an HTML/XML response.

Thanks for the excellent tip, it turns out that the Chrome Extensions page has a “Developer Mode” (see chrome://extensions/). Once I turned that on, I was able to watch the XHR requests. They were blocked by the firewall to my custom domain, while not blocked when requests went out to vault.bitwarden.com. Not sure that I’ll be able to fix this, and it seems to be a Chrome issue, because the equivalent curl command worked perfectly. The failing XHR request was to https://my.domain/api/accounts/prelogin.

1 Like