Friday, March 23, 2018

CentOS 6.6 리눅스 네트워크 ] 3.1 시스템로그 - 로그파일


안녕하세요. 썬구루입니다. 이 게시물에서는 시스템 로그에 대해 알아보도록 하겠습니다.

리눅스는 운영 시 발생하는 이벤트들에 대한 정보를 기록하는데 이것을 시스템 로그(System Log)라 합니다. 접속한 사용자 정보, 접속 이력 정보, su 명령을 사용한 정보, 부팅 시 출력되는 로그정보, 커널(Kernel) 또는 프로세스에 의해 만들어지는  메시지 정보 등 수많은 정보들이 시스템 운영 시 만들어지는데 이러한 정보를 기록한 파일을 로그 파일이라 합니다.

여기서 리눅스 주요 로그파일에 대해 알아보도록 하겠습니다.

■ /var/run/utmp

현재 접속한 사용자 정보를 가지고 있는 데이터 파일이다.

[root@sunguru ~]# file /var/run/utmp 
/var/run/utmp: data
[root@sunguru ~]#

who 또는 w 같은 명령에 의해 참조된다.

[root@sunguru ~]# who
root     tty1         2016-07-13 02:09 (:0)
root     pts/0        2016-07-13 02:12 (:0.0)
[root@sunguru ~]# w
 15:44:22 up 13:36,  2 users,  load average: 0.04, 0.03, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     tty1     :0               02:09   13:36m 29.30s 29.30s /usr/bin/Xorg :0 -br -ver
root     pts/0    :0.0             02:12    0.00s  0.43s  0.10s w
[root@sunguru ~]# 

■ /var/log/wtmp

사용자들이 접속한 이력 정보를 가지고 있는 파일이다.

[root@sunguru ~]# file /var/log/wtmp
/var/log/wtmp: data
[root@sunguru ~]# 

last 명령을 통해 사용자 접속 이력을 확인할 수 있다.

[root@sunguru ~]# last | head -5
user1    pts/2        localhost        Wed Jul 13 05:16 - 05:21  (00:04)
user1    pts/1        192.168.80.1     Wed Jul 13 05:00 - 13:46  (08:45)
root     pts/0        :0.0             Wed Jul 13 02:12   still logged in
root     tty1         :0               Wed Jul 13 02:09   still logged in
reboot   system boot  2.6.32-504.el6.x Wed Jul 13 02:08 - 15:48  (13:40)
[root@sunguru ~]#
[root@sunguru ~]# last user1
user1    pts/2        localhost        Wed Jul 13 05:16 - 05:21  (00:04)
user1    pts/1        192.168.80.1     Wed Jul 13 05:00 - 13:46  (08:45)
wtmp begins Fri May 27 02:53:07 2016
[root@sunguru ~]# 

■ /var/log/sulog

su 명령을 사용한 사용자 전환에 관련된 로그 파일이다. (기본적으로 없는 파일. 생성 및 설정을 해야 함)

[root@sunguru ~]# vi /etc/login.defs

# su command log file               <= 내용추가
SULOG_FILE=/var/log/sulog     <= 내용추가

[root@sunguru ~]# vi /etc/rsyslog.conf

# su command log                   <= 내용추가
authpriv.info   /var/log/sulog    <= 내용추가

[root@sunguru etc]# touch /var/log/sulog
[root@sunguru etc]#
[root@sunguru etc]# service rsyslog restart
시스템 로거 종료 중:                                       [  OK  ]
시스템 로거 시작 중:                                       [  OK  ]
[root@sunguru etc]#
[root@sunguru etc]# su - user1
[user1@centos01 ~]$
[user1@centos01 ~]$ exit
logout
[root@sunguru etc]#
[root@sunguru etc]# more /var/log/sulog
Jul 13 16:08:20 centos01 su: pam_unix(su-l:session): session opened for user user1 by root (uid=0)
Jul 13 16:08:23 centos01 su: pam_unix(su-l:session): session closed for user user1
[root@sunguru etc]# 

■ /var/log/secure

SSH, FTP, su 명령 등 사용자 인증 관련 기록을 가지고 있는 로그 파일이다.

[root@sunguru etc]# grep -i ssh /var/log/secure | grep -i fail
Jul 13 05:00:13 centos01 sshd[4437]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=192.168.80.1  user=user1
Jul 13 05:00:15 centos01 sshd[4437]: Failed password for user1 from 192.168.80.1 port 51080 ssh2
Jul 13 05:00:21 centos01 sshd[4437]: Failed password for user1 from 192.168.80.1 port 51080 ssh2
[root@sunguru etc]# 

■ /var/log/cron

사용자들의 cron 사용 기록 정보를 가지고 있는 로그 파일이다.

[root@sunguru etc]# head -5 /var/log/cron
Jul 13 03:10:02 centos01 run-parts(/etc/cron.daily)[3679]: finished logrotate
Jul 13 03:10:02 centos01 run-parts(/etc/cron.daily)[3660]: starting makewhatis.cron
Jul 13 03:10:03 centos01 run-parts(/etc/cron.daily)[3836]: finished makewhatis.cron
Jul 13 03:10:03 centos01 run-parts(/etc/cron.daily)[3660]: starting mlocate.cron
Jul 13 03:10:03 centos01 run-parts(/etc/cron.daily)[3847]: finished mlocate.cron
[root@sunguru etc]# 

■ /var/log/dmesg

부팅 시 시스템에 의해 출력되는 로그 정보를 가지고 있는 파일이다. dmesg 명령을 통해서도 내용을 확인할 수 있다.

[root@sunguru etc]# head -5 /var/log/dmesg
Initializing cgroup subsys cpuset
Initializing cgroup subsys cpu
Linux version 2.6.32-504.el6.x86_64 (mockbuild@c6b9.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-11) (GCC) ) #1 SMP Wed Oct 15 04:27:16 UTC 2014
Command line: ro root=UUID=047dc93f-6363-4570-a7b5-1937a6534afa rd_NO_LUKS LANG=ko_KR.UTF-8 rd_NO_MD crashkernel=128M  KEYBOARDTYPE=pc KEYTABLE=us rd_NO_LVM rd_NO_DM rhgb quiet
KERNEL supported cpus:
[root@sunguru etc]# 

■ /var/log/lastlog

사용자들이 마지막으로 로그인한 접속 정보를 가지고 있는 로그 파일이다. lastlog 명령을 통해 내용을 확인할 수도 있다.

[root@sunguru etc]# file /var/log/lastlog
/var/log/lastlog: data
[root@sunguru etc]#
[root@sunguru etc]# lastlog -u user1
사용자이름       포트     어디서           최근정보
user1            pts/2    localhost        수  7월 13 05:16:50 +0900 2016
[root@sunguru etc]#

여기까지 CentOS 주요 로그 파일에 대해 알아보았습니다. 다음 게시물에서는 운영체제 시스템 활동 및 이벤트 추적을 위해 사용되는 rsyslog에 대해 알아보도록 하겠습니다.






No comments:

Post a Comment