리눅스 로그 분석

리눅스 2019. 1. 25. 11:51

리눅스 콘솔의 정의는 아래와 같습니다.

출처 : http://www.logcenter.net/itcenter/?q=YToyOntzOjEyOiJrZXl3b3JkX3R5cGUiO3M6MzoiYWxsIjtzOjQ6InBhZ2UiO2k6Mzt9&bmode=view&idx=1236937&t=board

리눅스 콘솔은 리눅스 커널에 내부적으로 동작하는 시스템 콘솔입니다. 커널과 다른 프로세스들이 텍스트를 사용자에게 출력하고 사용자로부터 텍스트 입력을 받을 수 있는 방법을 제공합니다. 사용자는 일반적으로 컴퓨터 키보드로 텍스트를 입력하고 컴퓨터 모니터로 텍스트를 출력합니다. 또한 가상 콘솔을 지원하며, 이 콘솔은 논리적으로 분리되어있지만 동일한 물리적 키보드와 디스플레이어로 접근할 수 있습니다.


오늘 설명할 콘솔 로그는 위 정의와 같이 리눅스 커널에 내부적으로 동작하는 시스템 콘솔에 뿌려지는 메시지입니다.

즉, 커널에 관련된 내용을 나타내는 로그입니다.

시스템에 관련된 중요 내용들에 대한 로그를 관리자에게 알리고자 함이 목적이기에 파일에 저장하는 것이 아닌 장치명을 사용하여 콘솔로 로그를 뿌려줍니다.


콘솔로그는 아래의 경로에서 확인할 수 있습니다.

/dev/console



시스템 관리에 있어서 무엇보다 중요한 것이 로그파일분석과 관리입니다. 시스템에 이상징후가 발생하였을 때, 가장 먼저 살펴봐야할 파일이 로그파일이기 때문에 관리해야할 로그 파일의 수와 경로를 알고 있는 것이 중요합니다.


이 밖에 중요 커널로그는 다음과 같습니다.



① 부팅로그

시스템의 데몬들이 실행되거나 재시작되었을 때 기록되는 로그파일입니다.

부팅시의 에러나 조치사항을 확인할 때 활용이 가능하며, timestamp/호스트명/데몬명(PID)/메시지 내용이 기록됩니다.

리눅스가 부팅될 때 나타나는 메시지를 기록하고 있으므로 에러 발생시 아래 경로를 이용하여 해당 파일을 확인합니다.


/var/log/boot.log


부팅될 당시의 각종 메시지들을 저장하는 커널 부트 메시지 로그가 있습니다.

/var/log/dmesg


시스템이 부팅될 때 출력되었던 메시지 로그를 기록한 것으로 아래의 명령어를 이용하여 확인할 수 있습니다.

dmesg


보통 more, tail, less, grep과 같은 표준 텍스트 제어 도구를 이용하여 검토합니다.

또한, 부팅이 완료한 후에도 커널이 가끔 진단 메시지를 추가로 출력하는 경우도 있습니다. I/O장치에서 오류가 발생하거나 USB가 핫 프로그될 때와 같이 이후에도 이러한 메시지를 검토할 수 있으니 이 점 참고바랍니다.



② 시스템 로그

주로 접속시 인증에 관한 것과 메일에 관한 내용, 시스템에 관한 변경사항 등 시스템에 관한 전반적인 로그를 기록하는 파일입니다.

커널에서 보내주는 실시간 메시지의 로그를 관리합니다.

 timestamp/호스트명/데몬명(PID)/메시지 내용이 기록되며, 보안사고 발생시 가장 먼저 분석해야하는 파일입니다.

/etc/syslog.conf의 설정에 따라 보여지는 정보의 종류가 달라집니다.


/var/log/message

#dmesg 명령어로 확인할 수 있습니다.



③ 커널로그

- wtmp

접속했던 모든 사용자의 로그인과 로그아웃 정보를 가지고 있습니다. 정보를 누적해서 저장하기 때문에 정기적으로 백업 후 삭제가 필요합니다.

아래의 경로로 저장되며, 해킹 피해로 시스템 분석시 비중있게 분석해야하는 파일입니다.

/var/log/wtmp


바이너리 파일 형태이므로 다음의 명령어를 이용하여 해당 로그를 확인합니다.

명령어
설명
last [계정명]
해당 계정의 접속기록 출력
last -R
IP를 제외한 로그 정보 출력
last -a
로그 정보 출력시 IP 뒤로 배치해서 출력
last -d
외부에서 접속한 정보와 reboot 정보 출력



- utmp

시스템에 현재 로그인한 사용자들에 대한 현재 상태를 기록한 로그입니다.

사용자 접속시 먼저 이 파일에 해당 정보가 기록되며 로그아웃시 기록된 정보가 삭제됩니다.

사용자 이름, 터미널 장치 이름, 원격 로그인시 원격 호스트 이름, 로그인한 시간 등을 기록합니다.

아래의 경로로 저장되며, 해킹 피해로 시스템 분석시 비중있게 분석해야하는 파일입니다.

/var/log/utmp


바이너리 파일 형태이므로 다음의 명령어를 이용하여 해당 로그를 확인합니다.

# w


리눅스의 이벤트 로그인 콘솔 및 커널로그에 대해 알아보았습니다.

아래 링크를 통해 다양한 로그 분석을 확인하세요~