기타

리눅스 log 확인

sm_hope 2023. 12. 10. 15:02

1. /var/log/messages (시스템의 표준 메시지 기록)

- 시스템에서 발생하는 표준 메시지가 기록되는 파일이다.

- root 사용자만 열람할 수 있다.

- 날짜 및 시간, 메시지가 발생한 호스트명, 메시지를 발생한 내부 시스템이나 응용 프로그램의 이름, 발생된 메시지가 ':'으로 구분되어 기록된다.

yhjeong@ubuntu:/$ sudo cat /var/log/messages 
May  6 16:43:26 ubuntu rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="23118" x-info="http://www.rsyslog.com"] start
May  6 16:43:26 ubuntu rsyslogd: rsyslogd's groupid changed to 108
May  6 16:43:26 ubuntu rsyslogd: rsyslogd's userid changed to 104
May  6 16:43:26 ubuntu rsyslogd-2007: action 'action 11' suspended, next retry is Wed May  6 16:43:56 2020 [v8.16.0 try http://www.rsyslog.com/e/2007 ]

 

* Ubuntu에서는 '/var/log/messages' 파일이 안 보이는 경우가 있다. 이때,'/etc/rsyslog.d/50-default.conf ' 파일의 주석 일부를 해제해 준 후, 관련 데몬을 재시작하면 정상적으로 'messages' 로그파일을 열람할 수 있다.

 

vi 편집기를 이용하여, 이 부분의 주석(#)을 제거해 준다.

yhjeong@ubuntu:/$ sudo vi /etc/rsyslog.d/50-default.conf
*.=info;*.=notice;*.=warn;\
...
...
mail,news.none -/var/log/messages
# Some "catch-all" log files.
#
#*.=debug;\
#       auth,authpriv.none;\
#       news.none;mail.none     -/var/log/debug
*.=info;*.=notice;*.=warn;\
        auth,authpriv.none;\
        cron,daemon.none;\
        mail,news.none          -/var/log/messages

 

편집이 완료되면 파일을 저장한 후(esc + wq! 입력), 다음과 같은 명령어로 관련 데몬(Daemon)을 재시작한다.

yhjeong@ubuntu:/$ sudo service rsyslog restart

 

2. /var/log/secure (인증 기반 접속 관련 기록)

- 인증과 관련된 로그가 기록된다.

- 주로 로그인, tcp_wrappers, xinetd 관련 로그가 쌓인다.

 

 

3. /var/log/dmesg (부팅 기록)

- 시스템이 부팅할 때 출력되었던 로그가 기록된다.

- 보통 커널 부트 메시지 로그라고 한다.

 

 

4. /var/log/maillog (메일 관련 기록)

- sendmail과 같은 메일 작업이 기록되는 로그이다.

 

 

5. /var/log/xferlog (FTP 접속 관련 기록)

- FTP 접속과 관련된 작업이 기록되며, 총 14개의 영역으로 구성되어 있다.

 

 

6. /var/log/cron (cron 관련 정보 기록)

- cron 관련 정보가 기록되는 파일이다.

 

7. /var/log/boot.log (부팅 시 동작하는 데몬 정보 기록)

- 부팅 시 발생하는 메시지가 기록되는 파일이다.

- 부팅 시 동작하는 데몬의 정보가 기록된다.

 

8. /var/log/lastlog (사용자의 접속 기록) = lastlog

- telnet이나 ssh를 통해 들어오는 사용자의 마지막 정보가 기록된다.

- 바이너리 파일로 기록되어 있어 바로 열람할 수 없다.

'lastlog' 명령어로 확인 가능하다.

root@ubuntu:/var/log# lastlog 
Username         Port     From             Latest
root                                       **Never logged in**
daemon                                     **Never logged in**
bin                                        **Never logged in**
sys                                        **Never logged in**
sync                                       **Never logged in**
games                                      **Never logged in**
man                                        **Never logged in**
lp                                         **Never logged in**
mail                                       **Never logged in**
news                                       **Never logged in**
uucp                                       **Never logged in**
proxy                                      **Never logged in**
www-data                                   **Never logged in**

 

lastlog 명령어

- 각각의 사용자가 마지막으로 로그인한 정보를 출력해 주는 명령어이다.

- 바이너리 파일인 '/var/log/lastlog' 파일의 내용을 보여주는 명령어이다.

 

* 주요 옵션 *

옵션 설명
-u 사용자명 특정 사용자에 대한 정보만 출력한다.
-t 날짜 오늘부터 지정한 날짜만큼 거슬러 올라가 그 이후에 로그인한 사용자의 정보를 보여준다.

 

9. /var/log/wtmp (사용자의 접속 기록) = last

- telnet이나 ssh를 통해 들어오는 사용자의 마지막 정보가 기록된다.

- 바이너리 파일로 기록되어 있어 바로 열람할 수 없다.

'last' 명령어로 확인 가능하다.

root@ubuntu:/var/log# last

wtmp begins Sun May  3 08:25:50 2020

 

last 명령어

- 실질적으로는 '/var/log/wtmp' 파일의 내용을 그대로 보여주는데, 해당 파일은 바이너리 형태이다.

- 이를 열람할 수 있게 해주는 명령어이다.

 

* 주요 옵션 *

옵션 설명
-f 파일명 로그 로테이션 설정이 되어있는 경우, 기본 로그 파일 이외의 다른 로그 파일의 기록을 볼 경우에 사용한다.
-n 숫자 가장 최근부터 해당 숫자 값만큼만 출력한다.
-t YYYYMMDDHHMMSS 지정한 시간 이전에 로그인한 기록을 출력한다.
-R IP 주소나 호스트명을 출력하지 않는다.
-a 호스트명이나 IP 주소 필드를 맨 마지막에 출력한다. 일반적으로는 '-d' 옵션과 함께 사용된다.
-d 리눅스는 외부에서 접속한 기록을 IP 주소뿐만 아니라, 호스트 이름도 저장한다. 이 옵션을 사용하면 호스트 이름이 존재하는 경우에는 IP 주소를 호스트 이름으로 변환하여 출력한다.
-F 로그인 및 로그아웃 시간을 출력한다.
-i 접속한 호스트의 IP 주소로만 출력한다.
-w 사용자의 전체 이름이나 전체 도메인 이름을 전부 출력해 준다.

 

10. /var/log/btmp (사용자의 접속 실패 기록) = lastb

-'/var/log/wtmp' 파일과는 정반대로, 사용자가 접속에 실패한 경우를 기록한다.

- 바이너리 파일로 기록되어 있어 바로 열람할 수 없다.

'lastb'라는 명령어로 확인한다.

 

lastb명령어

- 실질적으로는 '/var/log/btmp' 파일의 내용을 그대로 보여주는데, 해당 파일은 바이너리 형태이다.

- 이를 열람할 수 있게 해주는 명령어이다.

- root 사용자만 사용 가능하다.

- 기본적인 사용법은 last 명령어와 동일하다.

 

* 주요 옵션 *

옵션 설명
-f 파일명 로그 로테이션 설정이 되어있는 경우, 기본 로그 파일 이외의 다른 로그 파일의 기록을 볼 경우에 사용한다.
-n 숫자 가장 최근부터 해당 숫자 값만큼만 출력한다.
-t YYYYMMDDHHMMSS 지정한 시간 이전에 로그인한 기록을 출력한다.
-R IP 주소나 호스트명을 출력하지 않는다.
-a 호스트명이나 IP 주소 필드를 맨 마지막에 출력한다. 일반적으로는 '-d' 옵션과 함께 사용된다.
-d 리눅스는 외부에서 접속한 기록을 IP 주소뿐만 아니라, 호스트 이름도 저장한다. 이 옵션을 사용하면 호스트 이름이 존재하는 경우에는 IP 주소를 호스트 이름으로 변환하여 출력한다.
-F 로그인 및 로그아웃 시간을 출력한다.
-i 접속한 호스트의 IP 주소로만 출력한다.
-w 사용자의 전체 이름이나 전체 도메인 이름을 전부 출력해 준다.

지금까지 리눅스의 log 파일 및 명령어에 대해 알아보았다.

 

 

출처 : https://tragramming.tistory.com/86