웹사이트 검색

Pam_Tally2를 사용하여 SSH 실패 로그인 시도 잠금 및 잠금 해제


pam_tally2 모듈은 시스템에 특정 횟수만큼 SSH 로그인 시도가 실패한 후 사용자 계정을 잠그는 데 사용됩니다. 이 모듈은 시도된 액세스 횟수와 실패한 시도 횟수를 유지합니다.

pam_tally2 모듈은 두 부분으로 구성됩니다. 하나는 pam_tally2.so이고 다른 하나는 pam_tally2입니다. PAM 모듈을 기반으로 하며 카운터 파일을 검사하고 조작하는 데 사용할 수 있습니다. 사용자 로그인 시도 횟수를 표시하고, 개별적으로 횟수를 설정하고, 모든 사용자 횟수를 잠금 해제할 수 있습니다.

pam_faillock 모듈은 RHEL 7 및 RHEL 8에서 더 이상 사용되지 않는 pam_tallypam_tally2 모듈을 대체합니다. 이 모듈은 두 모듈보다 더 많은 유연성과 옵션을 제공합니다. 모듈.

기본적으로 pam_tally2 모듈은 대부분의 Linux 배포판에 이미 설치되어 있으며 PAM 패키지 자체에 의해 제어됩니다. 이 문서에서는 특정 로그인 시도 실패 횟수에 도달한 후 SSH 계정을 잠그고 잠금 해제하는 방법을 보여줍니다.

사용자 계정을 잠그고 잠금 해제하는 방법

로그인 시도 액세스를 구성하려면 '/etc/pam.d/password-auth' 구성 파일을 사용하세요. 이 파일을 열고 'auth' 섹션 시작 부분에 다음 AUTH 구성 줄을 추가하세요.

auth        required      pam_tally2.so  file=/var/log/tallylog deny=3 even_deny_root unlock_time=1200

그런 다음 'account' 섹션에 다음 줄을 추가합니다.

account     required      pam_tally2.so
매개변수
  1. file=/var/log/tallylog – 기본 log 파일은 로그인 횟수를 유지하는 데 사용됩니다.
  2. deny=33회 시도 후 액세스를 거부하고 사용자를 잠급니다.
  3. even_deny_root – 정책은 루트 사용자에게도 적용됩니다.
  4. unlock_time=1200 – 계정이 20분까지 잠깁니다. (수동으로 잠금 해제할 때까지 영구적으로 잠그려면 이 매개변수를 제거하십시오.)

위의 구성을 완료한 후 이제 '사용자 이름'을 사용하여 서버에 3번 실패한 로그인 시도를 시도해보세요. 3번 이상 시도하면 다음 메시지가 표시됩니다.

[root@tecmint ~]# ssh [email 
[email 's password:
Permission denied, please try again.
[email 's password:
Permission denied, please try again.
[email 's password:
Account locked due to 4 failed logins
Account locked due to 5 failed logins
Last login: Mon Apr 22 21:21:06 2013 from 172.16.16.52

이제 다음 명령으로 사용자가 시도하는 카운터를 확인하거나 확인합니다.

[root@tecmint ~]# pam_tally2 --user=tecmint
Login           Failures  Latest    failure     From
tecmint              5    04/22/13  21:22:37    172.16.16.52

액세스를 다시 활성화하기 위해 사용자 계정을 재설정하거나 잠금 해제하는 방법.

[root@tecmint pam.d]# pam_tally2 --user=tecmint --reset
Login           Failures  Latest    failure     From
tecmint             5     04/22/13  17:10:42    172.16.16.52

로그인 시도가 재설정되거나 잠금 해제되었는지 확인

[root@tecmint pam.d]# pam_tally2 --user=tecmint
Login           Failures   Latest   failure     From
tecmint            0

PAM 모듈은 모든 Linux 배포판의 일부이며 제공된 구성은 모든 Linux 배포판에서 작동해야 합니다. 이에 대해 자세히 알아보려면 명령줄에서 'man pam_tally2'를 실행하세요.

추가 읽기:

  1. SSH 서버 보안 및 보호를 위한 5가지 팁
  2. DenyHosts를 사용하여 SSH 무차별 대입 공격 차단