The problem is probably in pam. Lot s of internet docs have
incorrect
info advice and say.
account required pam_nologin.so
account sufficient pam_ldap.so
When you do that you get the situation you have now. In some phases of
login sufficient becomes required.
Try this:
Before I go changing system-auth by hand I would like to see if there
is some way to get it working with the authconfig tool. This makes it
easier for me to maintain consistency and configure multiple systems.
Here is what is in my system-auth file now, and this was generated
with the following command. Is the authconfig tool actually
generating a "bad" configuration file? If so should this be
considered a bug?
/usr/sbin/authconfig --enablemkhomedir --enableldap --enableldapauth
--enablecache --ldapserver=example.company.com
--ldapbasedn="dc=company,dc=com" --enableldaptls --kickstart --update
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required pam_env.so
auth sufficient pam_unix.so nullok try_first_pass
auth requisite pam_succeed_if.so uid >= 500 quiet
auth sufficient pam_ldap.so use_first_pass
auth required pam_deny.so
account required pam_unix.so broken_shadow
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account [default=bad success=ok user_unknown=ignore] pam_ldap.so
account required pam_permit.so
password requisite pam_cracklib.so try_first_pass retry=3
password sufficient pam_unix.so md5 shadow nullok try_first_pass
use_authtok
password sufficient pam_ldap.so use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session optional pam_mkhomedir.so
session [success=1 default=ignore] pam_succeed_if.so service in
crond quiet use_uid
session required pam_unix.so
session optional pam_ldap.so