An updated pam_ldap package that fixes various bugs is now available for Red Hat Enterprise Linux 6.
The pam_ldap package provides the pam_ldap.so module, which allows PAM-aware applications to check user passwords with the help of a directory server.
All entries stored in an LDAP directory have a unique "Distinguished Name," or DN. The top level of the LDAP directory tree is the base, referred to as the "base DN". When the host option is not set the pam_ldap.so module uses DNS SRV records to determine which servers to contact to perform authentication. Prior to this update, the LDAP base "DN" option was derived from the DNS domain name, ignoring any value that had been set for "base" in the pam_ldap.conf file. As a consequence, ldap lookups failed. The "base" setting in the configuration file, pam_ldap.conf, is now correctly parsed before the configuration is read from DNS. As a result, "base" is now set to the value given in the pam_ldap.conf file and is used as the base (starting point) to search for a user's credentials.
Prior to this update, pam_ldap (when called by a process which was running as root) did not re-authenticate the user during a password change operation. As a consequence, reuse of the old password was not prevented. This update backports a fix to ensure that when a privileged application initiates a password change operation, for a user whose password has expired, that the current password is again verified, allowing client-side password-quality checking to be performed when using LDAP accounts.
All users of pam_ldap are advised to upgrade to this updated package, which fixes these bugs.