¿Nginx admite la autenticación ldap? Acabo de migrar de Apache y me gustaría mover todas mis autenticaciones basadas en openldap y mod_auth_ldap a nginx. Avísame si eso es posible.
Desde esta página que enumera todos los módulos que tiene nginx, no veo ninguna mención sobre LDAP. Gracias,

Hay un módulo LDAP no oficial para nginx: nginx-auth-ldap .
fuente
Hay un módulo de terceros
nginx-auth-ldapque puede usar. Todavía no lo he probado, pero puedo actualizar mi respuesta más tarde.usando nginx X-accel
La documentación para
X-accelsimplemente explica que una página puede utilizar un encabezado tener nginx servir un archivo (en lugar dePHPodjangoorubyo nombre-su-no-como-eficiente-como-nginx-stack-aquí ).por ejemplo, flujo de trabajo:
/download.php?path=/data/file1.txt,download.phpdevuelveWWW-Authenticate+401 Unauthorized,/download.php?path=/data/file1.txtpero ahoranginxtiene las credenciales,nginxpuede pasar$remote_usery$http_authorizationalfastcgiscript,download.phprealiza la autenticación y decide si devolver403 Forbiddeno establecer el encabezado delX-Accel-Redirectencabezado.establecer la
internalubicación de nginxSi bien puede usar
X-Accelpara servir activos estáticos, el caso de uso aquí es que queremos que las solicitudes se autentiquen, por eso lo usamosinternal.configurar el script de descarga
Aquí vamos:
tenga en cuenta : el script PHP usa
PHP_AUTH_USERyPHP_AUTH_PW, que es capturado pornginx, por lo que para usarlos en el script PHP, debemos darlos para proporcionarlos explícitamente.cocinando una autenticación ldap en PHP
Para mi caso de uso, instalé
php-fpmyphp-ldapen mi sistema.Aquí hay una función de autenticación decente:
Aquí hay una ruta de código decente para el acceso prohibido:
Y para la carne de la autenticación LDAP:
Aquí tienes el cuerpo principal del script que usa la uri de solicitud.
exploración de archivos semitransparente
También publiqué esto como una esencia :
y prácticamente el mismo script PHP, excepto el cuerpo:
fuente
En resumen: Sí, NGINX es compatible con LDAP. Hay dos módulos adicionales disponibles: NGINX tiene uno, y hay otro disponible en github. La solución NGINX parecía bastante compleja a primera vista, así que elegí la última opción, que se llama nginx-auth-ldap. Puse algunas notas de instalación con respecto a mi experiencia en el siguiente hilo:
Agregue autenticación ldap a nginx en RHEL 7
fuente
Parece que alguien recibió una respuesta a su pregunta en http://forum.nginx.org/read.php?2,18552
fuente