RHEL4U6: nss_ldap + sendmail = PROBLEMAS

Desde hace varias semanas he notado que los sendmails de los servidores RHEL4U6 autenticados contra el LDAP del Diretorio Activo en Windows2003, no son capaces de entregar el correo local. Hoy por fín he sacado un poco de tiempo para depurarlo. El comportamiento es el siguiente.
  1. El equipo está autenticado contra el directorio LDAP del AD. Esto quiere decir que en /etc/nsswitch.conf tendremos algo similar a lo siguiente:
    passwd:     files ldap
    shadow: files
    group: files ldap
  2. Somos capaces de ejecutar los comandos getent passwd y getent group y obtener el listado de usuarios y grupos autorizados del dominio
  3. Arrancamos NSCD y parece que todo funciona, pero cuando ejecutamos service nscd status nos dice que no está ejecutándose.
  4. Cuando ejecutamos mail root, para enviar un correo en /var/log/maillog obtenemos:
    Jul 29 22:43:47 vmtyo-subversion-pro sendmail[20289]: m6TKhlFo020289: from=root, size=61, class=0, nrcpts=1, msgid=<200807292043.m6TKhlFo020289@vmtyo-subversion-pro.tyo.carm.es>, relay=root@localhost
    Jul 29 22:43:47 vmtyo-subversion-pro sendmail[20292]: m6TKhlxl020292: from=<root@vmtyo-subversion-pro.tyo.carm.es>, size=411, class=0, nrcpts=1, msgid=<200807292043.m6TKhlFo020289@vmtyo-subversion-pro.tyo.carm.es>, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1]
    Jul 29 22:43:47 vmtyo-subversion-pro sendmail[20289]: m6TKhlFo020289: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30061, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (m6TKhlxl020292 Message accepted for delivery)
    ... y el correo nunca llega. Al ejecutar mailq vemos que está en la cola.
  5. Si ahora editamos /etc/nsswitch.conf y dejamos lo siguiente,
    passwd:     files ldap
    shadow: files
    group: files
    después de reinciar sendmail, vemos como finalmente el correo llegará a la cuenta de root.
Después de depurar durante varias horas el proceso, depurando el comportamiento con distintas opciones de configuración y con ayuda de strace, en diferentes sistemas RHEL4UXX, he llegado a la conclusión de que tenía que ser un bug de nss_ldap-226-20 (la versión de RHEL4U6). He realizado una búsqueda en Internet y así parece ser que es.

He actualizado el sistema para usar nss_ldap-226-18 (la versión de RHEL4U5) y el envío de correos funciona a la perfección.

No hay comentarios: