centos 7에는 다음과 같은 pam 구성이 있습니다.
cat /etc/pam.d/passwd
#%PAM-1.0
auth include system-auth
account include system-auth
password substack system-auth
-password optional pam_gnome_keyring.so use_authtok
password substack postlogin
그리고
cat /etc/pam.d/system-auth
#%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 try_first_pass nullok
auth required pam_deny.so
account required pam_unix.so
password requisite pam_pwquality.so try_first_pass local_users_only retry=3 authtok_type=
password sufficient pam_unix.so try_first_pass use_authtok nullok sha512 shadow nis
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
account required pam_slurm.so
하지만 사용자로 "passwd"를 실행하면 현재 비밀번호와 새 비밀번호를 묻고 다시 입력한 후 실패합니다.
passwd
Changing password for user test.
Changing password for test.
(current) UNIX password:
New password:
Retype new password:
passwd: Authentication token manipulation error
이 문제를 해결하거나 디버깅하는 방법에 대한 아이디어가 있습니까?
참고: yppasswd는 제대로 작동하지만 passwd는 실패합니다.
업데이트: 다른 서버에서 동일한 구성을 시도했는데 작동했습니다. 그래서 문제는 클라이언트 측이 아니라 서버 측에 있다고 생각합니다. 아직 제대로 디버깅하는 방법을 모릅니다.