ldap-auth

Ldap-auth is a reference model for authenticating users who request protected resources from servers proxied by NGINX, using a Lightweight Directory Access…

  • Home Automation
  • Network Services
  • Security
  • Tools & Utilities
Ldap-auth is a reference model for authenticating users who request protected resources from servers proxied by NGINX, using a Lightweight Directory Access Protocol (LDAP) authentication server. It pairs a Python daemon that communicates with the directory server with a webserver daemon that issues an authentication cookie from the user's credentials, letting homelab users protect NGINX-fronted services with OpenLDAP or Microsoft Active Directory identities.

Platform availability

Available on 2 of 6 install platforms

  • Unraid
  • TrueNAS (not listed)
  • Umbrel (not listed)
  • ZimaOS
  • Proxmox (not listed)
  • Helm (not listed)

Also on Docker Hub and GitHub

Health score

27/100 Low

Maintained
0last commit 1315 days ago
Popular
57708 GitHub stars
Easy to install
452 install platforms, install notes, Docker image
Light to run
No data

Based on 3 of 4 factors.

How is this calculated?

A 0-100 score computed nightly from four factors: maintained (40%: recent commits and steady activity), popular (25%: GitHub stars, log scale), easy to install (20%: platforms, install notes, setup guides, Docker image) and light to run (15%: minimum RAM, ARM support). Factors without data are left out and the rest are rescaled.

Availability: platform listings confirmed today, links checked 9 days ago

GitHub stars
708
Open issues
31
Last commit
2023-03-04
Latest release
release-0.0.5
License
BSD-2-Clause
Activity
stale

Checked today - source: GitHub (nginxinc/nginx-ldap-auth)

Resources & Compatibility

ARM (e.g. Raspberry Pi) is supported.

Checked 10 days ago - source: Docker Hub image tags and published docs

First-install notes

  • Point it at an LDAP server with a bind account LDAP is a directory that stores user names and groups. Give the app a server address like ldap://localhost:389 (389 is the usual open LDAP port) and a bind account, meaning a user/password it uses to verify logins; if either is wrong, it cannot check users and sign-ins will fail. source

Fetched 10 days ago - each note links to its source

Alternatives (5)

  • FreeIPA - FreeIPA is an integrated security information management solution combining Linux (Fedora), 389 Directory Server, MIT Kerberos, NTP, DNS, D…
  • Microsoft Active Directory - Active Directory (AD) is a directory service that Microsoft developed for Windows domain networks and included in most Windows Server opera…
  • OpenLDAP - OpenLDAP Software is an open source implementation of the Lightweight Directory Access Protocol.
  • SambaBox - SambaBox is an enterprise directory appliance with Web based management interface.
  • Univention Corporate Server (UCS) - UCS is an open platform for central identity & access management, IT management, and active directory, with a web portal for easy acces…

Checked 7 days ago - source: AlternativeTo

Common questions

Can I run nginx-ldap-auth in production?

No, the project is not designed or hardened for production. It is intended as a model for connector daemons.

Do I have to use NGINX Plus?

No. The documentation says it applies to open source NGINX as well, and the required ngx_http_auth_request_module is included in prebuilt open source NGINX binaries.

Can it authenticate against Active Directory?

Yes. By default it communicates with OpenLDAP, but it can be configured to work with Active Directory 2003 and 2012.

How do I install the reference implementation?

Clone the repository, install NGINX Plus if it is not already running, and install and configure an LDAP authentication server. The provided configuration sets up the other components for testing on the same host.

Can the LDAP server, backend, and NGINX all run on one host?

The provided configuration runs NGINX, the client, the ldap-auth daemon, and the back-end daemon on the same host for testing, and the LDAP server can also run there during testing. In an actual deployment, the back-end and authentication server usually run on separate hosts from NGINX.

Answers sourced from github.com

Community

Collected 4 days ago - public community threads