Configure un proxy openldap para otro servidor LDAP en centos 6

Configure un proxy openldap para otro servidor LDAP en centos 6

Estoy intentando que un servidor local se autentique en su propio servidor openldap y luego haga un proxy al LDAP corporativo si no se encuentra al usuario localmente.

  1. Los usuarios locales trabajan.
  2. La autenticación al servidor LDAP local funciona
  3. La autenticación al LDAP corporativo NO funciona
  4. Búsqueda LDAP de trabajos corporativos cuando se utiliza el servidor local (¡¿¡ack!?!)

usuario = cuenta LDAP corporativa ldap interno = usuarios - internal.com ldap corporativo = personas - datacenter.corporate.com

nota: el enlace anónimo está habilitado en empresas.

oot@ sssd]# ldapsearch -h 127.0.0.1 -x -b "uid=user,ou=people,dc=datacenter,dc=corporate,dc=com"
# extended LDIF
#
# LDAPv3
# base <uid=user,ou=people,dc=datacenter,dc=corporate,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#

# user, People, datacenter.corporate.com
dn: uid=user,ou=People,dc=datacenter,dc=corporate,dc=com
uid: user
cn: 
objectClass: account
objectClass: posixAccount
objectClass: top
objectClass: shadowAccount
shadowMax: 
shadowWarning: 
loginShell: /bin/bash
uidNumber: 
gidNumber: 
homeDirectory: /home/users/user
gecos: user
shadowLastChange: 16461

# search result
search: 2
result: 0 Success

# numResponses: 2
# numEntries: 1

Configuración de bofetada.d:

#######################################################################
# database definitions
#######################################################################

database bdb
suffix "dc=internal,dc=com"
checkpoint 1024 15
rootdn "cn=adm,dc=internal,dc=com"
rootpw {SSHA}aaaaa
directory /var/lib/ldap

# Indices to maintain for this database
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index uidNumber,gidNumber,loginShell eq,pres
index uid,memberUid eq,pres,sub
index nisMapName,nisMapEntry eq,pres,sub

# Replicas of this database
#replogfile /var/lib/ldap/openldap-master-replog
#replica host=ldap-1.example.com:389 starttls=critical
# bindmethod=sasl saslmech=GSSAPI
# authcId=host/[email protected]

#proxy ldap
database ldap
suffix "ou=People,dc=datacenter,dc=corp,dc=com"
uri "ldap://1.1.1.1:389/"

idassert-bind bindmethod=none

ldap.conf:

URI ldap://127.0.0.1
BASE dc=internal,dc=com

Respuesta1

actualización para cualquiera que pueda encontrar este hilo; La documentación de openldap es extremadamente deficiente para la configuración del proxy. Esto se encontró básicamente tras 48 horas de prueba y error.

nota: volví a slapd.conf agregando lo siguiente en /etc/sysconfig/ldap SLAPD_OPTIONS="-f /etc/openldap/slapd.conf"

En el archivo slapd encontrarás 4 bases de datos; 1. base de datos local para LDAP AUTH (test.com) 2. conector de base de datos externa para LDAP AUTH (external.local -> corp.com) 3. conector de base de datos interna para LDAP AUTH (internal.local -> test.com) 4. metabase de datos que combina los 2 conectores en 1 base de datos

Enlace anónimo en todas partes; hizo las cosas más fáciles.

Los clientes ahora apuntan a la base de datos LDAP local y pueden realizar AUTH a LDAP local o LDAP corporativo sin problemas.

slapd.conf

#local database 
database        bdb
suffix  "dc=test,dc=com"
checkpoint      1024 15
rootdn  "cn=adm,dc=test,dc=com"
rootpw  {SSHA}aaa
directory       /var/lib/ldap


#Indices to maintain for this database
index objectClass                       eq,pres
index ou,cn,mail,surname,givenname      eq,pres,sub
index uidNumber,gidNumber,loginShell    eq,pres
index uid,memberUid                     eq,pres,sub
index nisMapName,nisMapEntry            eq,pres,sub

#database meta
database meta
suffix  "dc=local"
rootdn  "cn=adm,dc=local"
rootpw  {SSHA}aaa

#dir1
uri      "ldap://corporate-ldap.com/ou=external,dc=local"
lastmod       off
suffixmassage   "ou=external,dc=local" "dc=datacenter,dc=corp,dc=com"

#dir2
uri      "ldap://127.0.0.1/ou=internal,dc=local"
lastmod       off
suffixmassage   "ou=internal,dc=local" "dc=test,dc=com"

información relacionada