C3. Autenticación mediante LDAP/AD

Archivo de configuración

La configuración se proporciona en el archivo de configuración auth-ldap-rfc4515.conf.

También se proporcionan los archivos con la configuración típica:

auth-ldap-rfc4515-check-group.conf — plantilla del archivo de configuración de autorización externa de los administradores a través de LDAP simplificado con verificación de pertenencia al grupo Active Directory.

auth-ldap-rfc4515-check-group-novar.conf — plantilla del archivo de configuración de autorización externa de los administradores a través de LDAP simplificado con verificación de pertenencia al grupo Active Directory con uso de variables.

auth-ldap-rfc4515-simple-login.conf — plantilla del archivo de configuración de autorización externa de los administradores a través de LDAP simplificado.

Los tags principales del archivo de configuración auth-ldap-rfc4515.conf:

<server /> — verificación del servidor LDAP.

Atributo

Descripción

Valor por defecto

base-dn

El DN del objeto a buscar.

Valor del atributo rootDomainNamingContext del objeto Root DSE

cacertfile

Archivo de los certificados de raíz (solamente UNIX).

host

Dirección del servidor LDAP.

Controlador de dominio para un servidor en SO Windows.

127.0.0.1 para el servidor en SO de la familia UNIX.

Se permite el uso de varios tags <server /> con las direcciones de diferentes servidores LDAP. El primero debe ser la dirección del servidor principal, en el que se espera la carga principal. En caso de falla, se intentará autenticar en el siguiente servidor y luego en el orden especificado.

scope

Ámbito de búsqueda. Valores disponibles:

sub-tree — todo el ámbito inferior al DN base,

one-level — descendientes directos del DN base,

base — DN base.

sub-tree

tls

Instalar TLS para conectarse a LDAP.

no

ssl

Utilizar protocolo LDAPS al conectar a LDAP.

no

<set /> — establecer variables por búsqueda en LDAP.

Atributo

Descripción

Valor por defecto

attribute

Nombre del atributo cuyo valor se asigna a la variable. La ausencia es inaceptable.

filter

Filtro RFC4515 de búsqueda en LDAP.

scope

Ámbito de búsqueda. Valores disponibles:

sub-tree — todo el ámbito inferior al DN base,

one-level — descendientes directos del DN base,

base — DN base.

sub-tree

search

El DN del objeto a buscar.

Si no hay, se utiliza base-dn del tag <server />

variable

Nombre de la variable. Debe comenzar con una letra y contener solo letras y números. La ausencia es inaceptable.

Las variables se pueden usar en valores de atributos. add de los tags <mask /> y <expr />, como atributo value del tag <filter /> en forma \varname, así como en valor de atributo search del tag <set />. Nivel de recursión permitido al expandir variables — 16.

Si la búsqueda devuelve varios objetos encontrados, solo se usa el primero.

<mask /> — plantillas de nombre de usuario.

Atributo

Descripción

add

Línea añadida al filtro de búsqueda por la operación Y con los elementos de sustitución.

user

Máscara de nombre de usuario con uso de los metacaracteres de tipo DOS * y #. La ausencia es inaceptable.

Por ejemplo:

<mask user="*@#"  add="sAMAccountName=\1" />

<mask user="*\*"  add="sAMAccountName=\2" />

\1 y \2 — enlaces a máscaras coincidentes en el atributo user.

<expr /> — plantillas de nombre de usuario con uso de las expresiones regulares (atributos son idénticos a <mask />).

Por ejemplo:

<expr user="^(.*)@([^.,=@\s\\]+)$"  add="sAMAccountName=\1" />

<expr user="^(.*)\\(.*)"            add="sAMAccountName=\2" />

Coincidencia de máscaras y expresiones regulares:

Máscara

Expresión regular

*

.*

#

[^.,=@\s\\]+

<filter /> — filtro de búsqueda en LDAP.

Atributo

Descripción

value

Línea añadida al filtro de búsqueda por la operación Y con los elementos de sustitución.

Concatenación de los filtros

<set variable="admingrp" filter="&amp;(objectclass=group)(cn=ESuite Admin)" attribute="dn" />
<mask user="*\*" add="sAMAccountName=\2" />
<filter value="&amp;(objectClass=user)(memberOf=\admingrp)" />

Si admingrp como resultado de la búsqueda tomará valor "CN=ESuite Admins,OU=some name,DC=example,DC=com", y el usuario ingresó domain\user, entonces el resultado es el filtro:

"(&(sAMAccountName=user)(&(objectClass=user)(memberOf=CN=ESuite Admins,OU=some name,DC=example,DC=com)))"

Ejemplo de configuración de autenticación LDAP/AD

El siguiente es un ejemplo de configuraciones típicas para la autenticación usando LDAP. La configuración se establece en el Centro de Control, sección Administración → Autenticación → autenticación LDAP/AD (para la opción Configuración simplificada).

Los parámetros iniciales de los administradores que deben autenticarse:

dominio: dc.test.local

grupo en Active Directory: DrWeb_Admins

Configuración del Centro de Control:

Nombre de la configuración

Valor

Tipo de servidor

Microsoft Active Directory

Dirección del servidor

dc.test.local

Plantillas de nombres de usuarios para confirmar la autorización

Máscara de la cuenta

test\* o *@test.local

Nombre de usuario

\1

Membresía de los usuarios para confirmar la autorización

Nombre

DrWeb_Admins

Tipo

grupo