로그인 화면에서 비밀번호 입력이 5회 실패하면 계정을 차단하고 싶습니다. 나는 팔로우한다이 기사하지만 효과가 없습니다. 이유는 모르겠습니다. 이건 내 콘텐츠야/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 required pam_faillock.so preauth silent audit deny=5 even_deny_root unlock_time=9999999
auth sufficient pam_fprintd.so
auth sufficient pam_unix.so nullok try_first_pass
auth [default=die] pam_faillock.so authfail audit deny=5 even_deny_root unlock_time=99999999
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
auth required pam_tally.so onerr=succeed deny=5 even_deny_root_account
account required pam_unix.so
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account required pam_permit.so
account required pam_faillock.so
password requisite pam_cracklib.so try_first_pass retry=5 minlen=8 minclass=3 max_repeat=1 difok=5 dcredit=1 ucredit=1 lcredit=1 ocredit=1 maxrepeat=1 gecoscheck enforce_for_root type=
password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
이건 내 콘텐츠야/etc/pam.d/비밀번호 확인:
#%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 required pam_faillock.so preauth silent audit deny=5 unlock_time=99999
auth sufficient pam_unix.so nullok try_first_pass
auth [default=die] pam_faillock.so authfail audit deny=5 unlock_time=99999
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
account required pam_unix.so
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account required pam_permit.so
account required pam_faillock.so
password requisite pam_cracklib.so try_first_pass retry=3 type=
password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
저는 CentOS 6.5를 사용하고 있는데 pam은 오류가 0개라고 말합니다. 편집하다: 5번 시도 후에 계정이 잠기는데, 컴퓨터를 다시 시작하면 계정이 잠금 해제됩니다. 왜 그럴까요?
답변1
내가 아는 한, 귀하의 구성은 올바른 것 같습니다.
하지만 만약 당신이 사용한다면SSH로그인하려면 프로필에 이 설정되어 있는지 확인하세요 UsePAM
. 그렇지 않으면 SSH 로그인 중에 PAM의 모든 내용이 무시됩니다! 기본값은 .yes
sshd_config
no
답변2
모든 변경 사항을 적용하기 위해 시스템을 다시 시작했다고 가정합니다. 그렇지 않으면 로그인 응용 프로그램이 변경 사항을 인식하지 못합니다.
/etc/pam.d/login
또한 각 PAM 모듈은 서로 다른 용도로 사용되므로 모든 경우에 로그인 실패 후 PAM이 액세스를 차단하도록 파일에 제한 사항을 적용해야 합니다 .
로그인: 로컬 로그인 규칙.
시스템 인증: 많은 서비스에 대한 공통 규칙입니다.
비밀번호 확인: 많은 원격 서비스에 대한 공통 규칙입니다.
SSHD: SSHD 데몬에만 적용되는 규칙입니다.
답변3
나는 좋은 순서와 좋은 문법을 찾았습니다. 몇번의 테스트를 거쳐 드디어 성공했습니다. 어쩌면 문제는 오타일지도 모릅니다. 따라서 이것은 5번의 화면 잠금 시도 후에 사용자를 차단하는 PAM의 매개 변수입니다. 지나치게 단순한 비밀번호 변경을 방지하기 위해 매개변수에 규칙도 포함되어 있습니다.
참고: 컴퓨터가 다시 시작되면 카운터가 재설정됩니다.
/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 required pam_faillock.so preauth silent audit deny=5 even_deny_root unlock_time=99999
auth sufficient pam_fprintd.so
auth sufficient pam_unix.so nullok try_first_pass
auth [default=die] pam_faillock.so authfail audit deny=5 unlock_time=99999
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
account required pam_unix.so
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account required pam_permit.so
account required pam_faillock.so
password requisite pam_cracklib.so try_first_pass retry=5 minlen=8 minclass=3 max_repeat=1 difok=5 dcredit=1 ucredit=1 lcredit=1 ocredit=1 maxrepeat=1 gecoscheck enforce_for_root type=
password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so
콘텐츠/etc/pam.d/비밀번호 확인:
#%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 required pam_faillock.so preauth silent audit deny=5 unlock_time=99999
auth sufficient pam_unix.so nullok try_first_pass
auth [default=die] pam_faillock.so authfail audit deny=5 unlock_time=99999
auth requisite pam_succeed_if.so uid >= 500 quiet
auth required pam_deny.so
account required pam_unix.so
account sufficient pam_localuser.so
account sufficient pam_succeed_if.so uid < 500 quiet
account required pam_permit.so
account required pam_faillock.so
password requisite pam_cracklib.so try_first_pass retry=5 minlen=8 minclass=3 max_repeat=1 difok=5 dcredit=1 ucredit=1 lcredit=1 ocredit=1 maxrepeat=1 gecoscheck enforce_for_root type=
password sufficient pam_unix.so sha512 shadow nullok try_first_pass use_authtok
password required pam_deny.so
session optional pam_keyinit.so revoke
session required pam_limits.so
session [success=1 default=ignore] pam_succeed_if.so service in crond quiet use_uid
session required pam_unix.so