LDAP: Credential Window Missing
New installation, using ldap (tcp/389).
After the container comes up I can reach the web-interface, but there are no input boxes for username and password.
If I take out the ldap configuration from the .env file, the input boxes return; I suspect it's related to my ldap configuration.
I can't post a picture, due to work security rules. I'll try to relate my config as best as possible:
Ubuntu 20.04
Homarr version: 0.15.0
Attempted using firefox and chrome
Log messages are pretty bland. Says "listening on <name>:7575"
Solution:Jump to solution
So using ":" instead of "=" works? With ldap as well? (not talking about actively logging in, just if the form shows, just like this)
79 Replies
Thank you for submitting a support request.
Depending on the volume of requests, our team should get in contact with you shortly.
⚠️ Please include the following details in your post or we may reject your request without further comment: - Log (See https://homarr.dev/docs/community/faq#how-do-i-open-the-console--log) - Operating system (Unraid, TrueNAS, Ubuntu, ...) - Exact Homarr version (eg. 0.15.0, not latest) - Configuration (eg. docker-compose, screenshot or similar. Use ``your-text`` to format) - Other relevant information (eg. your devices, your browser, ...)
❓ Frequently Asked Questions | Homarr documentation
Can I install Homarr on a Raspberry Pi?
Hi, thanks for your support request.
@Meierschlumpf can you look into this?
@nerdferguson
It's strange that it does not work for you, as for me it's working as intended when defining your env variables:
Can you send a screenshot of your login screen?
I can’t, unfortunately.
How does your screen differ? Only the button missing?
No username or password input, submit button, or the text below it.
So far, my bet is that it had something to do with the Active Directory structure I’m working with.
But you do see the login page? Or is it not rendering at all?
There is a login page, but it only gets to “welcome back! Please enter your credentials.”
It even loads the css box where those words are, there’s just no room for the input boxes.
I'm not exactly sure how to help you @nerdferguson , so you are trying to log-in to the homarr login page with ldap but the input for username and password are missing somehow ? I'm not even sure if they are displayed conditionally in the code
Yes. This is correct.
Have you tried to use lowercase values for the provider?
i'll try that today
I have the same issue. Nothing in the logs. Hosted on unRaid using LLDAP for LDAP. Don't want to piggy-back on to the issue but I was in a position to add a screenshot so thought I'd share.
@Smudgerling please post your config (screenshot of unraid app)
version: '3'
#---------------------------------------------------------------------#
# Homarr - A simple, yet powerful dashboard for your server. #
#---------------------------------------------------------------------#
services:
homarr:
container_name: homarr
image: ghcr.io/ajnart/homarr:latest
restart: unless-stopped
environment:
- TZ=Europe/London
- AUTH_PROVIDER="ldap"
volumes:
- /mnt/disks/nvmedata/appdata/docker/Homarr/configs/:/app/data/configs
- /mnt/disks/nvmedata/appdata/docker/Homarr/data/:/data
- /mnt/disks/nvmedata/appdata/docker/Homarr/icons/:/app/public/icons
- /mnt/disks/nvmedata/appdata/docker/Homarr/imgs/:/app/public/imgs
ports:
- '7575:7575'
AUTH_LDAP_URI="ldap://[ip:port]"
AUTH_LDAP_BASE="dc=home,dc=domain,dc=name"
AUTH_LDAP_BIND_DN="uid=admin,ou=people,dc=home,dc=domain,dc=name"
AUTH_LDAP_BIND_PASSWORD="[password]"
AUTH_LDAP_USERNAME_ATTRIBUTE="name"
AUTH_LDAP_GROUP_CLASS="groupOfUniqueNames"
AUTH_LDAP_GROUP_MEMBER_ATTRIBUTE="member"
AUTH_LDAP_GROUP_MEMBER_USER_ATTRIBUTE="dn"
AUTH_LDAP_ADMIN_GROUP="admins"
AUTH_LDAP_OWNER_GROUP="lldap_admin"
I think I may have just spotted my errorCan you try
AUTH_PROVIDER="credentials,ldap"
I haven't called the env file
Made no difference calling it anyway, I'll try adding credentials...
Looking at the code, you must pass both (makes sense? LDAP requires name & pw so this was probably the idea behind this decision)
Still no joy.
Have you tried putting your environment variables in the "environment" section instead of a separate .env file?
Just re-composed with it all included and the same happens.
@Tag I would say that
hasCredentialsInput
is falsely, providers.includes('oidc')
is false and oidcAutoLogin
is falsely.
Hence nothing is shown, do you agree?
I just don't see yet why that would be.Oh wait you're using LLDAP, that means you shouldn't even need to change any of the variables as they are the default.
Try only changing "AUTH_LDAP_URI", "AUTH_LDAP_BIND_BN", "AUTH_LDAP_BIND_PASSWORD" and "AUTH_LDAP_BASE"
I'll retry setting things up on my end. I did try it all before the merge and everything was working but I'll check again
Actually maybe AUTH_LDAP_ADMIN_GROUP="lldap_admin" too, but that shouldn't hinder the functionnality of the login page so unimportant for now
Still the same for me unfortunately.
I just noticed your Base_dn might be incorrect? Why do you have 3 dc's? As the base you shouldn't have more than 2, domain and TLD, subdomain shouldn't be there
Ldap can be a pain to set up tbf
I just confirmed locally, you can setup ldap alone, but if a variable is set incorrectly, ldap won't respond and thus no login form will show
3 dcs is fine I think. I have other apps using it with same setup anyway. I'll install an LDAP browser and copy the paths straight from the directory itself and see what happens then.
Hailmary, do you have the NEXTAUTH_URL env variable setup?
No, do I need one?
Set it to your homarr address
It has proven to bug out in other instances
Now I just get Internal Server Error
Ah I didn't put the protocol
Forgot to be precise, my fault
Not at all buddy
I've tried it with reverse proxy https://domain.name and local http://ip:port. Same Internal Error
If you use https, you have to include subdomain, not just domain.name.
so "https://homarr.domain.name". Is that what you did?
Homarr points to top level as t's my landing
at TCPConnectWrap.afterConnect [as oncomplete] (node:net:1571:16) { ........shows in the log
Ah ok, nvm then
I'm a bit of at a loss because actually I can't reproduce the problem, either on my dev or production deployments
Even when I setup ldap incorrectly, it'll still show the login page. Just won't let me sign in
I like to be different 😅
Really appreciate the efforts though.
I think I'm onto something maybe. The only time I'm able to have that same screen is when I set AUTH_PROVIDER to something incorrect
I'm not sure if that's how docker compose work, but could you change from "ldap" to just ldap, without the quote marks?
Also, in docker compose, you should not use "=" but ":" it seems.
Like I said I don't know much on that front but that might be it.
If you include auth_provider but don't give it a value, it'll do that too.
Colour me impressed!
Let's goooooo
Such a minute detail, no wonder it took us so long
Super grateful for the support, and for the continued development of Homarr. You guys are awesome.
In hopes that this also helps @nerdferguson which seemed to have the same issue. It seems no matter your ldap configuration, the page should show in full as long as the AUTH_PROVIDER environment variable is set correctly. Not showing any input for login is a sign that the auth_provider is not selecting anything.
Even if ldap is setup wrong, it'll just not accept to log you in, but the form should still appear.
bad news: I'm already using lowercase values for the provider.
Sent over a wee donation, have a coffee on me.
Awesome! Glad that we were able to figure this one out 😄
negatory ghost rider. I'm still sitting at a screen w/out login ability.
yes
Does it look like this?
Ok, so that most likely mean that AUTH_provider is wrong somehow
Yeah, looks just like that. Currently for AUTH_provider I have "credentials,ldap"
If you set it to only "credentials", do you have anything?
Because you said that if you remove it, you do have the normal credentials page. Meaning that if you set it to the default value, and it doesn't appear, then the way you're setting up the value is incorrect
currently configured as:
AUTH_PROVIDER='credentials'
window currently looks like this
Maybe try double quotes: "
kept LDAP config below
The ldap config doesn't matter for the login page. It'll only matter for actively logging in when it queries your ldap server.
The page is really simple actually
As long as the environment variable is set correctly, it'll show the form, not matter what.
@Manicraft1001 maybe we should add a log to explicitly say what that environment variable is set to on startup? Maybe throw an error if it doesn't fit or is empty?
Yes, please do so 👍
ok, so here's a possibly pertinent question
passwords
obviously there has to be some characters that the system doesn't like
for instance
%
&
!
You think some characters are invalidating the whole .env file?
As I said, your ldap setup can be completely wrong, it would still show the form.
You can try to set password to "test" if you want to
okay, I don't get it man
I've deleted the folder for the files
totally rebuilt the app
with an .env file that only says
AUTH_PROVIDER="credentials"
I switched all mine over to this format:
AUTH_PROVIDER: ldap
Not sure if it will be the same issue for you?
Same in the .env file
using colons instead of equals and no quotes?
Yeah. I swapped all mine to that notation and it worked.
environment:
TZ: Europe/London
AUTH_PROVIDER: ldap
oh, like a yang file
I'm using unRaid so easier to do it in Stack/Compose/YAML format for me.
good news
that at least brought back the window
none of the logins work, but that's a different issue.
Solution
So using ":" instead of "=" works? With ldap as well? (not talking about actively logging in, just if the form shows, just like this)
yes
That's wonderful, is this all resolved then?
Yup. Now I just get to troubleshoot AD 😭
thanks guys
Man, you just rock. Took me 2 h.
I think it would be best that updating the Documentation should be a priority?
You can submit an update yourself if you're comfortable with Markdown: https://github.com/homarr-labs/documentation
GitHub
GitHub - homarr-labs/documentation
Contribute to homarr-labs/documentation development by creating an account on GitHub.
I will try, thanks!
Also, because I just realized, my name really is Homer (I am Greek), no relation to the app 🤣
I now think that in compose only the provider needs to be unquoted, will try now... (was getting : ERROR Cannot read properties of undefined (reading 'dn'))
Nope, still getting ERROR Cannot read properties of undefined (reading 'dn')
Does anyone know anything about this error? Cannot read properties of undefined (reading 'dn')
https://github.com/ajnart/homarr/issues/1925
There is an issue open for that on Github
GitHub
LDAP: Cannot read properties of undefined (reading 'dn') · Issue #1...
Environment Docker Version 1.1.0 Describe the problem Hi, I've deployed the Kubernetes version from https://oben01.github.io/charts/charts/homarr/ but when I'm trying to login on the ui usi...