NginxProxyManager / NginxProxyManager/nginx-proxy-manager

Unable to login using self-proxied domain

Open
#2,793 14 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

bug stale
Dominant language
TypeScript
Stars
34.2k
Forks
3.9k
Avg merge
21h 12m
Merged PRs (30d)
20

Description

Checklist

  • Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?
    • Yes
  • Are you sure you're not using someone else's docker image?
    • Yes
  • Have you searched for similar issues (both open and closed)?
    • Yes (#1992 - it's the same error, but appears to be different circumstances?)

Describe the bug
As in the above ticket, I'm unable to log in using a proxied, access-restricted domain. The page refreshes after logging in with no error on page. This bug doesn't occur when using the local IP address, or when setting NPM proxy host to Public.

Nginx Proxy Manager Version
2.10.2

To Reproduce
Steps to reproduce the behavior:

  1. Create host entry pointing to self
  2. Create access list with:
  • Satisfy Any
  • Username/password
  • IP whitelist
  1. Try logging in
  2. Screen refreshes with no error
  3. Check logs, see below error

Expected behavior
NPM should log in when self-proxying. This was working previously, however a recent update seems to have stopped this. Unfortunately I can't tell you which version this works on.

Screenshots
N/A

Operating System
Raspbian GNU/Linux 11 (bullseye)

Additional context

  • I haven't tried to downgrade yet
  • I was previously running NPM on an Ubuntu VM, which worked until the above bug occurred. I then did a fresh install on RPi with no data transfer, and am experiencing the same issue again.
  • Portainer log output:
-------------------------------------
User ID:  0
Group ID: 0
-------------------------------------
s6-rc: info: service prepare successfully started
s6-rc: info: service nginx: starting
s6-rc: info: service frontend: starting
s6-rc: info: service backend: starting
s6-rc: info: service backend successfully started
❯ Starting backend ...
s6-rc: info: service nginx successfully started
s6-rc: info: service frontend successfully started
s6-rc: info: service legacy-services: starting
❯ Starting nginx ...
s6-rc: info: service legacy-services successfully started
[4/2/2023] [1:34:08 AM] [Global   ] › ℹ  info      Using Sqlite: /data/database.sqlite
[4/2/2023] [1:34:11 AM] [Migrate  ] › ℹ  info      Current database version: none
[4/2/2023] [1:34:11 AM] [Setup    ] › ℹ  info      Logrotate Timer initialized
[4/2/2023] [1:34:11 AM] [Setup    ] › ℹ  info      Logrotate completed.
[4/2/2023] [1:34:11 AM] [IP Ranges] › ℹ  info      Fetching IP Ranges from online services...
[4/2/2023] [1:34:11 AM] [IP Ranges] › ℹ  info      Fetching https://ip-ranges.amazonaws.com/ip-ranges.json
[4/2/2023] [1:34:11 AM] [IP Ranges] › ℹ  info      Fetching https://www.cloudflare.com/ips-v4
[4/2/2023] [1:34:11 AM] [IP Ranges] › ℹ  info      Fetching https://www.cloudflare.com/ips-v6
[4/2/2023] [1:34:11 AM] [SSL      ] › ℹ  info      Let's Encrypt Renewal Timer initialized
[4/2/2023] [1:34:11 AM] [SSL      ] › ℹ  info      Renewing SSL certs close to expiry...
[4/2/2023] [1:34:11 AM] [IP Ranges] › ℹ  info      IP Ranges Renewal Timer initialized
[4/2/2023] [1:34:11 AM] [Global   ] › ℹ  info      Backend PID 138 listening on port 3000 ...
[4/2/2023] [1:34:14 AM] [Nginx    ] › ℹ  info      Reloading Nginx
[4/2/2023] [1:34:14 AM] [SSL      ] › ℹ  info      Renew Complete
[4/2/2023] [1:35:13 AM] [Express  ] › ⚠  warning   Existing token contained invalid user data
[4/2/2023] [1:36:13 AM] [Nginx    ] › ℹ  info      Reloading Nginx
[4/2/2023] [1:36:13 AM] [Access   ] › ℹ  info      Building Access file #1 for: Internal Access
[4/2/2023] [1:36:13 AM] [Access   ] › ℹ  info      Adding: jarryd
[4/2/2023] [1:36:13 AM] [Global   ] › ⬤  debug     CMD: /usr/bin/htpasswd -b /data/access/1 jarryd [password]
[4/2/2023] [1:36:13 AM] [Access   ] › ✔  success   Built Access file #1 for: Internal Access
[4/2/2023] [1:36:25 AM] [Express  ] › ⚠  warning   Existing token contained invalid user data

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the issue using the listed self-proxy host, access list, and login steps, then compare the behavior with the local IP and Public proxy-host cases. Start with the Portainer logs, especially the “Existing token contained invalid user data” warning; done means login succeeds through the access-restricted self-proxied domain without breaking the other cases.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, nginx, typescript
Domain
authentication, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.