포스트

passwd 직후 su 인증이 실패할 때 점검 순서

비밀번호를 바꾼 직후 su가 실패할 때 PAM 로그, 계정 잠금, 만료, 접근 정책과 셸을 순서대로 진단한다. PASS_MIN_DAYS가 인증을 막는다는 오해도 바로잡는다.

passwd 직후 su 인증이 실패할 때 점검 순서

새로 만든 계정에 passwd로 비밀번호를 설정한 직후 su - usernameAuthentication failure로 끝날 수 있다. 이 메시지만으로 원인을 단정하면 안 된다. 특히 /etc/shadow최소 변경 주기(PASS_MIN_DAYS, chage -m)는 비밀번호 변경 간격을 제한할 뿐, 현재 비밀번호 인증을 막지 않는다.

증상

1
2
3
4
5
6
sudo passwd alice
# 새 비밀번호 입력 + 확인 → "all authentication tokens updated successfully"

su - alice
# Password: <방금 만든 비밀번호>
# su: Authentication failure

먼저 로그에서 실패한 PAM 단계를 확인

Rocky/RHEL에서는 시도 직후 보안 로그를 확인한다.

1
2
sudo journalctl -t su --since "5 minutes ago"
sudo tail -n 100 /var/log/secure

pam_faillock, pam_access, pam_unix, 만료 등 실제로 거부한 모듈을 찾는다. 로그 없이 chage 값을 바꾸면 원인을 가리고 정책만 약화시킬 수 있다.

계정 상태를 좁혀 확인

1
2
3
4
sudo passwd -S alice       # 잠금 여부와 비밀번호 상태
sudo faillock --user alice # 반복 실패로 인한 잠금
sudo chage -l alice        # 비밀번호·계정 만료
getent passwd alice        # 로그인 셸과 홈
점검의미
passwd -SL비밀번호 해시가 잠김
faillock 기록PAM 실패 횟수 정책에 걸림
password/account expires비밀번호 또는 계정 만료
셸이 /sbin/nologin대화형 로그인 차단
pam_access/그룹 정책su 접근 대상 제한

잠금 원인이 확인됐을 때만 해당 상태를 해제한다.

1
2
sudo faillock --user alice --reset  # faillock이 원인일 때
sudo passwd -u alice                # 비밀번호 잠금이 원인일 때

chage -m이 하는 일

/etc/shadow의 최소 변경 주기는 사용자가 비밀번호를 다시 변경할 수 있는 가장 이른 시점이다.

1
2
3
sudo chage -m 1 alice
# alice가 마지막 변경 후 하루 안에 passwd를 다시 실행하면 변경이 거부될 수 있음
# 하지만 현재 비밀번호를 사용한 su 인증 가능 여부와는 별개

chage -m 0 -M -1을 인증 장애의 일반 해결책으로 쓰면 안 된다. -M -1은 최대 사용 기간을 없애 조직의 비밀번호 만료 정책까지 바꾼다.

핵심 정리

passwd 직후 su가 실패하면 로그에서 거부한 PAM 단계를 먼저 찾고, 계정 잠금·faillock·만료·접근 정책·로그인 셸을 각각 확인한다. PASS_MIN_DAYS는 변경 주기이지 인증 허용 조건이 아니다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.