RocketChat server behind an NginxProxyManager Android App Login not working

Description

Hello Forum,

We have a self-hosted RocketChat server behind an NginxProxyManager. The Windows and Mac apps work without any problems. The iOS app also works perfectly. Only in the Android app we cannot log in. When you click on log in on the login screen, nothing happens.
Is there a bug in the Android app or are certain proxy settings necessary?

Server Setup Information

  • Version of Rocket.Chat Server: 7.0.0
  • Operating System: 20.04.6 LTS
  • Deployment Method: snap
  • Number of Running Instances:
  • DB Replicaset Oplog:
  • NodeJS Version: v20.18.0
  • MongoDB Version: 6.0.19 / wiredTiger
  • Proxy: NginxProxyManager

Any additional Information

Custom Nginx Configuration Variables:
ssl_protocols TLSv1.2 TLSv1.3 ;
proxy_ssl_name $host;
proxy_ssl_server_name on;
proxy_hide_header Upgrade;
proxy_redirect off;
proxy_request_buffering off;
client_max_body_size 0;

Works ok for me.

Did you disable traefik?

Check the nginx config here.

https://docs.rocket.chat/v1/docs/deploy-with-docker-docker-compose#enable-https-for-your-rocketchat-workspace

Hey there ist no traefik involved in our configuration.

Best regards

Traefik - check it is definitely disabled.

Check your nginx setup. Check the websockets.

Read down from here.

I have both standard and dev Android apps on various servers with no issues.

Since we deployed the RocketChat Server via Snap there should be no Traefik Proxy involved.

I disabled the automatic Caddy Reverse Proxy and used Nginx Proxy Manager as the Proxy.

Before we had the NPM as Reverse Proxy we used a Sophos UTM SG as Reverse Proxy which is based on Apache2 with Mod Security. With the Sophos as Reverse Proxy RocketChat worked fine on all Devices.

I also tried the websocket check from your github page:

Sorry. Long week and losing my mind. I did mean caddy (traefik is on docker)

That tells you all you need to know about where the issue lies.

I’d start looking at your proxy/firewall.

Not much else to say - we don’t know anything about your network, how NPM is deployed, and a few lines from nginx.

Nowhere near enough to debug any further.

I’d refer to the standard Rocket Nginx setup and work from there.

I have successfully solved the problem. I removed all custom Nginx configurations which I had set in the troubleshooting process and set the following settings in NPM.

Thanks for your support @reetp

1 Like

SSL Config:

As an aside on this. I have no idea where or how you are running your NPM.

First you should have http/2 and HSTS enabled.

Next remember that Rocket runs on port 3000 (it is accessible by http but it is NOT a http server) It does not run on https 443

So for a reverse proxy on the same machine with no containers you would point to http://127.0.0.1:3000

My own set up uses Apache. The Rocket instance runs in docker but in host mode rather than bridge. So Rocket is exposed directly at 127.0.0.1 which is where my reverse proxy points.

Might be worth checking all this on your setup.