User logs in using expired Kerberos password

Support for security such as Firewalls and securing linux
Post Reply
jscarville
Posts: 135
Joined: 2014/06/17 21:50:37

User logs in using expired Kerberos password

Post by jscarville » 2019/07/01 22:02:40

My Linux systems (CentOS 6 and 7) configured to use Kerberos to login. No local passwords are allowed except for root and certain other users.

During a recent clean up of expired accounts, I discovered that a user was logging in using a password that was expired in the Kerberos database. I created a test user on both 6 and 7 and it can log onto any system using the Kerberos password as long as there is an unexpired local account. The test user has no local password.

In /etc/passwd

Code: Select all

ttest:x:5006:5006:Tommy Test:/home/ttest:/bin/bash
In /etc/shadow

Code: Select all

ttest:!K!:17815:0:99999:7:::
Relevant Kerberos entries

Code: Select all

Principal: ttest@MAGICAL_PLACE.COM
Expiration date: [never]
Last password change: Mon Jul 01 14:10:45 PDT 2019
Password expiration date: Mon Jul 01 14:15:00 PDT 2019
/etc/pam.d/system-auth is default except for enabling kerberos and disabling fingerprint authentication

Code: Select all

auth        required      pam_env.so
auth        required      pam_faildelay.so delay=2000000
auth        sufficient    pam_unix.so nullok try_first_pass
auth        requisite     pam_succeed_if.so uid >= 500 quiet_success
auth        sufficient    pam_krb5.so use_first_pass
auth        required      pam_deny.so

account     required      pam_access.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_krb5.so
account     required      pam_permit.so

password    requisite     pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
password    sufficient    pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password    sufficient    pam_krb5.so use_authtok
password    required      pam_deny.so

session     optional      pam_keyinit.so revoke
session     required      pam_limits.so
-session     optional      pam_systemd.so
session     [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session     required      pam_unix.so
session     optional      pam_krb5.so
I suspect this related to this line but I'd like a second opinion before I reset it to "required " or "requisite" on a couple hundred systems.

Code: Select all

account     sufficient    pam_localuser.so
Dunno how important this is but it is annoying.

Post Reply