이 줄을 추가하는 이유는 다음과 /etc/pam.d/common-auth
같습니다.
auth required pam_tally2.so deny=4 unlock_time=1200 even_deny_root
다음 행을 다음에 추가하십시오 /etc/pam.d/common-account
.
account required pam_tally2.so
예방하다모두내 Debian 10 시스템에 로그인하시겠습니까? 다른 모든 pam
구성 파일( login
, common-session
, 및 common-password
은 기본값과 동일하지만 필요한 경우 해당 파일도 게시할 수 있습니다)
pam_tally
나는 다음과 같은 몇 가지 다른 질문에 대해 논의하는 것을 보았습니다.이것,이것, 그리고이것pam_tally
, 그러나 구체적인 답변이 없거나 답변이 전혀 없습니다 .
(배경으로는 적응하려고 노력 중입니다.이번 업데이트 안내데비안 시스템의 경우)
편집: libpam-modules
패키지가 설치되었습니다.
에서 common-auth
:
auth [success=1 default=ignore] pam_unix.so nullok_secure
auth required pam_tally2.so deny=4 unlock_time=1200 even_deny_root
auth requisite pam_deny.so
auth required pam_permit.so
에서 common-account
:
account required pam_tally2.so
account [success=1 new_authtok_reqd=done default=ignore] pam_unix.so
account requisite pam_deny.so
account required pam_permit.so
답변1
이 답변에는 두 부분이 있습니다. 첫 번째는 pam_tally2
에 추가합니다 auth
. 두 번째는 에 추가합니다 account
.pam_tally2
제대로 작동하려면 이 두 부분이 필요합니다..
당신의 것을 보자 common-auth
,
auth [success=1 default=ignore] pam_unix.so nullok_secure auth required pam_tally2.so deny=4 unlock_time=1200 even_deny_root auth requisite pam_deny.so auth required pam_permit.so
첫 번째 줄은 다음과 같습니다. "UNIX( ) 인증을 사용해 보세요 /etc/passwd
. 성공하면 줄을 건너뛰고 계속하세요. 그렇지 않으면 다음 단계를 계속하세요." 이 논리를 사용하면 문제가 분명해집니다.
- 성공: 한 줄(
success=1
)을 건너뛰고 로그인 거부를pam_tally2
클릭합니다.pam_deny
- 실패:
pam_tally2
다음을 클릭했는데pam_deny
로그인이 거부되었습니다.
지금 볼 수 있듯이 모든 로그인이 차단됩니다.
해결책의 일부는 pam_tally2
목록을 스택 위에 놓는 것입니다. (변경 사항이 success=2
작동할 것이라고 생각할 수도 있지만 이는 pam_tally2
성공적인 인증을 건너뛰므로 시간 초과 후 실패 시 재설정만 됩니다.) 다음은 꽤 일반적인 데비안 시스템에서 제가 가지고 있는 것입니다:
auth required pam_tally2.so deny=5 unlock_time=1200 even_deny_root
# here are the per-package modules (the "Primary" block)
auth [success=1 default=ignore] pam_unix.so nullok_secure
# here's the fallback if no module succeeds
auth requisite pam_deny.so
# prime the stack with a positive return value if there isn't one already;
# this avoids us returning an error just because nothing sets a success code
# since the modules above will each just jump around
auth required pam_permit.so
# and here are more per-package modules (the "Additional" block)
auth optional pam_cap.so
# end of pam-auth-update config
이렇게 하면 개수가 늘어나지만 성공적인 로그인 후 명령을 사용하지 않고 이를 재설정할 수 있는 방법이 필요합니다 pam_tally2
. 특히 명확하지 않은 점은 첫 번째 항목으로도 섹션 pam_tally2.so
에 추가해야 한다는 것입니다.account
account required pam_tally2.so onerr=fail
이것을 테스트했지만 시도해 볼 때 sudo -s
PAM 구성에 대한 변경 사항을 되돌릴 수 있도록 대상 컴퓨터에서 추가 루트 셸(예: )을 열어야 합니다!
tail -F /var/log/auth.log
당신은 무슨 일이 일어나고 있는지 볼 수 있습니다 watch pam_tally2 --user {user}
.
인증이 시도되면 횟수가 증가하고 성공 시에만 재설정되므로 횟수 제한은 허용된 시도 횟수보다 1 커야 합니다.