linux-failed-logins

/var/log/btmp 파일을 파싱하여 리눅스 시스템의 로그인 실패 이력을 조회합니다. 각 실패 시도의 시각, 사용자 이름, 접속 IP 주소를 구조화된 필드로 반환합니다.

명령어 속성

항목설명
명령어 유형드라이버 쿼리
필요 권한관리자
라이선스 사용량집계함
병렬 실행미지원
분산 실행수집 노드에서 실행 (mapper)

문법

linux-failed-logins [ignore-error=BOOL]

옵션

ignore-error=BOOL
/var/log/btmp 파일을 읽을 수 없는 경우의 오류 처리 방식 (기본값: f)
  • t: 오류를 무시하고 빈 결과를 반환합니다.
  • f: 오류를 발생시켜 쿼리 실행을 중단합니다.

출력 필드

필드타입설명
_time날짜로그인 실패 시각
user문자열로그인을 시도한 사용자 이름
src_ipIP 주소로그인을 시도한 원격지 IP 주소. 로컬 시도인 경우 null을 반환합니다.

오류 코드

파싱 오류
오류 코드메시지설명
95040no-read-permission관리자 권한 없이 실행한 경우
런타임 오류
오류 코드메시지설명후처리 동작
--/var/log/btmp 파일을 읽을 수 없는 경우ignore-error=t이면 빈 결과를 반환하고 정상 종료함. 그렇지 않으면 쿼리 실행을 중단함

설명

linux-failed-logins 명령어는 /var/log/btmp 파일을 바이너리 형식으로 파싱하여 로그인 실패 이력을 추출합니다. btmp 파일은 로그인에 실패한 모든 시도를 기록하며, 무차별 대입 공격(brute-force attack) 탐지 등 보안 분석에 활용할 수 있습니다.

/var/log/btmp 파일은 기본적으로 root:utmp 소유이며 제한된 읽기 권한을 가지므로, 파일 접근 권한이 없으면 오류가 발생합니다. 이 경우 ignore-error=t 옵션을 사용하면 오류를 무시하고 빈 결과를 반환합니다.

사용 예

  1. 전체 로그인 실패 이력 조회

    linux-failed-logins
    

    시스템의 모든 로그인 실패 이력을 조회합니다.

  2. 오류 무시 옵션으로 조회

    linux-failed-logins ignore-error=t
    

    /var/log/btmp 파일을 읽을 수 없는 경우에도 오류 없이 빈 결과를 반환합니다.

  3. 특정 사용자에 대한 실패 시도 조회

    linux-failed-logins
    | search user == "root"
    

    root 사용자에 대한 로그인 실패 시도만 필터링합니다.

  4. IP 주소별 실패 횟수 집계

    linux-failed-logins
    | stats count by src_ip
    | sort -count
    

    접속 IP 주소별 로그인 실패 횟수를 집계하여 다수의 실패를 기록한 IP를 확인합니다.

호환성

linux-failed-logins 명령어는 소나 4.0 이전 버전부터 제공되었습니다.