linux-logins

/var/log/wtmp 파일을 파싱하여 리눅스 시스템의 터미널 로그인 및 로그아웃 이력을 조회합니다. 각 로그인 세션의 사용자, 접속 IP, 터미널, 로그인/로그아웃 시각을 구조화된 필드로 반환합니다.

명령어 속성

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

문법

linux-logins

출력 필드

필드타입설명
_time날짜로그인 시각. login_time 필드와 동일한 값을 할당합니다.
src_ipIP 주소접속 원본 IP 주소. 로컬 로그인인 경우 null을 반환합니다.
host문자열접속 호스트 이름 (IP 주소 또는 도메인). 값이 비어 있으면 null을 반환합니다.
pid32비트 정수로그인 프로세스 ID
user문자열로그인 사용자 이름
tty문자열터미널 장치 이름 (예: pts/0, tty1)
login_time날짜로그인 시각
logout_time날짜로그아웃 시각. 아직 로그인 중이거나 로그아웃 기록이 없으면 null을 반환합니다.

오류 코드

파싱 오류
오류 코드메시지설명
95040no-read-permission관리자 권한 없이 실행한 경우
런타임 오류
오류 코드메시지설명후처리 동작
--/var/log/wtmp 파일을 읽을 수 없는 경우쿼리 실행을 중단함

설명

linux-logins 명령어는 /var/log/wtmp 파일을 바이너리 형식으로 파싱하여 터미널 로그인 이력을 추출합니다. wtmp 파일에서 UserProcess 타입의 레코드를 로그인으로 인식하고, 동일한 터미널에서 발생한 다음 DeadProcess 레코드의 시각을 로그아웃 시각으로 할당합니다. 동일한 터미널에서 로그아웃 전에 새로운 로그인이 발생하면 이전 세션의 logout_time에 null을 할당합니다.

_time 필드에는 login_time과 동일한 값을 할당하여 시간 기반 쿼리에 활용할 수 있도록 합니다.

사용 예

  1. 전체 로그인 이력 조회

    linux-logins
    

    시스템의 모든 터미널 로그인 이력을 조회합니다.

  2. 원격 접속 이력만 필터링

    linux-logins
    | search isnotnull(src_ip)
    

    원격지에서 접속한 로그인 이력만 필터링합니다.

  3. 특정 사용자의 로그인 이력 조회

    linux-logins
    | search user == "root"
    

    root 사용자의 로그인 이력만 조회합니다.

  4. 현재 로그인 중인 세션 조회

    linux-logins
    | search isnull(logout_time)
    

    로그아웃 시각이 없는 세션, 즉 현재 로그인 중인 세션을 조회합니다.

호환성

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