Linux/설정 및 명령어

버전 별 계정 잠금 정책

gunner_77 2016. 8. 31. 09:53



계정잠금정책




계정잠금정책은 비밀번호 오류 시에 계정이 잠기는 정책입니다.

물론 사람은 실수를 하기 때문에 몇회 이상 오류, 잠기는 시간 등의 설정도 가능합니다.

계정잠금정책을 설정하는 이유는?

게정잠금정책을 설정하지 않는다면, 관리자가 아닌 공격자가 BruteForce Attack(무차별대입공격)이나 Dictionary Attack(사전대입공격) 등을 통해

계속 시도한다면 시간이 얼마나 걸릴지는 몰라도 언젠가는 비밀번호를 알아낼 수 있기 때문에 잠금정책을 설정하는 것이 좋습니다.




설정방법

CentOS 5

[root@localhost ~]# /etc/pam.d/system-auth

...

auth        required    pam_tally.so deny=5 unlock_time=60 no_magic_root

...

account    required    pam_tally.so no_magic_root reset

...


옵션

no_magic_root : root는 패스워드 잠금 설정 하지 않는다.

deny=5 : 5회 입력 실패시 패스워드 잠금

unlock_time : 계정 잠김 후 잠금 해제되는 시간 (초)

reset : 접속 시도 성공 시 실패한 횟수 초기화





CentOS 6, 7

** 추가 내용 위치 주의

##x-window 및 SSH 접속

[root@localhost ~]# /etc/pam.d/password-auth

...

auth        required    pam_env.so

auth        required    pam_tally2.so deny=3 unlock_time=60

auth        sufficient   pam_unix.so nullok try_first_pass

auth        requisite    pam_succeed_if.so uid >= 500 quiet

auth        required    pam_deny.so


account    required    pam_unix.so

account    required    pam_tally2.so

account    sufficient   pam_localuser.so

account    sufficient   pam_succeed_if.so uid < 500 quiet

account    required    pam_permit.so

...

##로컬 접속 시 적용은 /etc/pam.d/system-auth
내용은 같다

옵션

deny=3 : 3회 입력 실패시 패스워드 잠금

unlock_time : 계정 잠김 후 잠금 해제되는 시간 (초)

reset : 접속 시도 성공 시 실패한 횟수 초기화

even_deny_root : 6버전부터는 기본적으로 root는 잠기지 않고 해당 옵션을 입력해야 잠김


비밀번호 틀린 횟수 체크

[root@localhost ~]# pam_tally -u ID


잠금해제

root 권한으로 다음 명령어 실행

[root@localhost ~]# pam_tally2 -u 잠긴계정 -r