openldap 2.4.44. error "-D especificado previamente"

openldap 2.4.44. error "-D especificado previamente"

Intento eliminar recursivamente nuestro tercer DIT de nuestro DSE raíz ldap porque ya no es necesario, pero aparece el siguiente error en el entorno de nuestro cliente:

host:~# ldapdelete -x -W -D cn=admin,cn=config -r -f /tmp/ldap-bck/delete.ldif

ldapdelete: -D previously specified

El mismo comando funciona a las mil maravillas en mi laboratorio de pruebas, en mi servidor Virtualbox Centos 7.5. Pero no en el entorno del cliente en RHEL 7.6. El número de versión de openldap es el mismo, 2.4.44. Estaba jugando con las opciones, cambié el orden de las opciones, cambié "" y '' para bindDN (-D) y DN, estaba usando las opciones -c y -v para ver más... y no puedo resolver el problema. asunto...

Primero intenté simplemente eliminar el DN:

host:~# ldapdelete -x -W -D cn=admin,cn=config 'dc=x,dc=y,dc=z,dc=zzz'

Luego lo probé usando la opción -f:

host:~# ldapdelete -x -W -D cn=admin,cn=config -r -f /tmp/ldap-bck/delete.ldif

He probado dos bindDN-s (cn=admin,cn=config y el rootDN cn=admin,dc=x,dc=y,dc=z,dc=zzz también, este último tiene que funcionar).

Lo probé sin el parámetro -D y luego obtuve:

host:~# ldapdelete -r -f /tmp/ldap-bck/delete.ldif

Enter LDAP Password:

ldap_delete: Insufficient access (50)

host:~# ldapdelete -r -c -f /tmp/ldap-bck/delete.ldif

Enter LDAP Password:

ldap_bind: Server is unwilling to perform (53)

 additional info: unauthenticated bind (DN with no password) disallowed

host:~# ldapdelete -r -v -f /tmp/ldap-bck/delete.ldif

ldap_initialize( ldapi:///??base )

Enter LDAP Password:

ldap_bind: Server is unwilling to perform (53)

  additional info: unauthenticated bind (DN with no password) disallowed

Supongo que porque el bindDN y la contraseña son necesarios. (Tengo la contraseña, la correcta, no hay ningún error posible ya que actualmente se usa la misma contraseña para los 3 DIT y la base de datos de configuración).

Probé la autenticación -Y EXTERNA pero no funciona:

host:~# ldapmodify -Y EXTERNAL -H ldapi:/// -f /tmp/ldap-bck/delete.ldif -n

ldapmodify: incompatible with authentication choice

Entonces tengo que usar autenticación simple. Pero tan pronto como especifico la opción -D, aparece el mismo error. Intenté hacer lo mismo con ldapmodify usando un archivo ldif. El mismo error:

host:~# ldapmodify -D "cn=admin,cn=config" -x -W -f /tmp/ldap-bck/delete.ldif -n

host:~# ldapmodify -D "cn=admin,dc=x,dc=y,dc=z,dc=zzz" -x -W -f /tmp/ldap-bck/delete.ldif -n

Luego intenté ejecutar ldapsearch para verificar la funcionalidad, pero obtuve el mismo error si especifico la opción -D.

host:~# ldapsearch -x -D "cn=admin,dc=x,dc=y,dc=z,dc=zzz" -W -b 'dc=x,dc=y,dc=z,dc=zzz' '(objectclass=*)' -c

ldapsearch: -D previously specified

Y el mismo error aparece en 3 servidores RHEL (dev, test y prod), por lo que no se trata solo del comportamiento extraño de un servidor.

Estoy utilizando certificados SSL en ambos "entorno", es decir, en mi laboratorio de pruebas y en el entorno del cliente. La configuración de openldap de mi laboratorio de pruebas y del entorno del cliente es similar.

Respuesta1

No encontré ningún binddn especificado en los archivos mencionados. Pero hemos encontrado un alias definido... Alguien ha establecido un alias para ldapadd, ldapdelete, etc. para uno de los DIT allí con las opciones -x -W -D -H. Entonces mis comandos para este DIT no funcionaban con la sintaxis estándar. Y, por supuesto, mis comandos tampoco funcionaban para los otros DIT... Gracias de todos modos.

información relacionada