Primero, no soy un experto en OpenLDAP.
Tengo openldap( slapd
) ejecutándose en un servidor que ha estado funcionando durante años. Hoy ejecuté yum update
y actualicé bastantes paquetes, incluidos los paquetes openldap. Una vez que terminó (sin errores), nuestro servidor LDAP no estaba funcionando. Intenté un simple service slapd start
(y /etc/init.d/slapd start
) que de repente falla.
Si miro en el /var/log/ldap.log
archivo, veo estas entradas:
@(#) $OpenLDAP: slapd 2.4.40 (May 10 2016 23:30:49) $#012#[email protected]:/builddir/build/BUILD/openldap-2.4.40/openldap-2.4.40/build-servers/servers/slapd
read_config: no serverID / URL match found. Check slapd -h arguments.
slapd stopped.
connections_destroy: nothing to destroy.
Ambos slaptest
y slaptest -u
tienen éxito:
# slaptest
config file testing succeeded
# slaptest -u
config file testing succeeded
Aquí están las versiones de openldap:
openldap-clients-2.4.40-12.el6.x86_64
openldap-servers-2.4.40-12.el6.x86_64
openldap-devel-2.4.40-12.el6.x86_64
compat-openldap-2.3.43-2.el6.x86_64
openldap-2.4.40-12.el6.x86_64
Aquí también está mi slapd.conf
archivo que funcionó antes de la actualización de yum:
include /etc/openldap/schema/core.schema
include /etc/openldap/schema/cosine.schema
include /etc/openldap/schema/inetorgperson.schema
include /etc/openldap/schema/nis.schema
include /etc/openldap/schema/misc.schema
include /etc/openldap/schema/passwordSelfReset.schema
allow bind_v2
pidfile /var/run/openldap/slapd.pid
argsfile /var/run/openldap/slapd.args
modulepath /usr/lib64/openldap
moduleload syncprov.la
moduleload unique.la
database monitor
access to *
by dn.exact="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read
by dn.exact="cn=admin,dc=am5up,dc=com" read
by * none
database bdb
suffix "dc=am5up,dc=com"
rootdn "cn=admin,dc=am5up,dc=com"
rootpw {SSHA}0yFFC0BTYdZLDRNtSHVz1I6YC4zJ3Z0AZ09123
directory /var/lib/ldap
index objectClass eq,pres
index ou,cn,mail,surname,givenname eq,pres,sub
index uidNumber,gidNumber eq,pres
index uid,memberUid eq,pres,sub
index nisMapName,nisMapEntry eq,pres,sub
overlay unique
unique_attributes mail
ServerID 1 "ldap://ldap.am5up.com"
overlay syncprov
syncprov-checkpoint 10 1
syncprov-sessionlog 100
¿Puede alguien ofrecer algunas sugerencias?
¡Muy apreciado!
Respuesta1
Los ID de host en conf y script deben coincidir
Para cualquier otra persona con este problema: he descubierto el problema. Durante la actualización, la versión ligeramente más nueva requiere que el host coincida con la definición del servidor en el archivo de configuración.
Por ejemplo, en su slapd.conf
archivo tiene una línea como:
ServerID 1 "ldap://myldapserver"
Luego, en su script de inicio (o cuando inicie slapd), debe definir el host como "ldap://myldapserver".
Esto parecería tener sentido; sin embargo, a través de mis problemas de hoy, aprendí que el /etc/init.d/slapd
archivo predeterminado que se agregó durante mi instalación inicial muestra el host en blanco. Por lo tanto, el script de inicio predeterminado, básicamente, ejecuta:
slapd -h "" -u <user> -g <group>
Una vez que edité el script de inicio para asegurarme de que el -h
encendido slapd
coincida con lo que hay en mi archivo de configuración, todo comenzó a funcionar nuevamente.