logwatch의 시스템 로그분석 결과를 매일 관리자 메일로 보고받기
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,794 조회
- 0 추천
- 목록
본문
logwatch의 시스템 로그분석 결과를 매일 관리자 메일로 보고받기
logwatch는 시스템 로그분석기 역할과 분석한 로그 결과를 관리자에게 보고해주는 역할(system log analyzer and reporter)을 합니다.
간단히 설명하자면 /var/log/디렉토리에 존재하는 시스템 로그파일들(messages, maillog, secure등)을 분석하여 관리자(대부분 root)에게 메일을 보내주거나 보고를 하는 명령어입니다.
이 logwatch라는 명령어는 대부분 cron에 의해서 자동 실행되고 /etc/log.d/logwatch.conf파일 내에 설정되어 있는 보고방식(주로 메일)에 따라서 관리자(주로 root)에게 보고합니다.
당연한 얘기겠지만 logwatch는 다음과 같이 logwatch라는 RPM패키지가 시스템에 설치되어 있어야 합니다.
[root@www services]# rpm -qa | grep logwatch logwatch-7.3.6-31.fc10.noarch [root@www services]# [root@www services]# rpm -ql logwatch-7.3.6-31.fc10.noarch /etc/cron.daily/0logwatch /etc/logwatch /etc/logwatch/conf /etc/logwatch/conf/ignore.conf /etc/logwatch/conf/logfiles /etc/logwatch/conf/logwatch.conf /etc/logwatch/conf/override.conf /etc/logwatch/conf/services /etc/logwatch/scripts /etc/logwatch/scripts/services /usr/sbin/logwatch … 중략 /usr/share/logwatch /usr/share/logwatch/default.conf /usr/share/logwatch/dist.conf /usr/share/logwatch/dist.conf/logfiles /usr/share/logwatch/dist.conf/services … 이하생략 |
명령어위치 : /usr/sbin/logwatch
먼저, logwatch가 분석한 보고서를 관리자의 일반메일 주소로 받아보는 방법부터 알아보도록 하겠습니다.
즉, 시스템의 기본설정을 그대로 사용하신 후에 다음과 같이 해보시기 바랍니다.
만약, 로그분석 결과를 root가 아닌 일반메일계정(대부분 관리자가 사용하는 일반계정)으로 받아보고자 하신다면 /etc/aliases파일의 아래 부분을 관리자의 일반 메일주소로 앨리어스(별칭)시켜 두시면 됩니다.
그러면 root의 모든 메일들이 아래 설정한 관리자의 일반계정(bible)으로 들어오게 됩니다.
# Person who should get root's mail root: bible |
따라서 logwatch로 분석한 로그의 결과가 bible이라는 계정의 메일로 오게 되는 것입니다.
그리고 대부분 cron은 새벽 04:00에 실행이 되므로 내일 아침 bible의 계정으로 도착한 메일을 확인해 보시기 바랍니다.
다음은 logwatch에 관한 cron설정의 일부분입니다.
[root@www cron.daily]# cat /etc/crontab SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/
# run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly [root@www cron.daily]# [root@www cron.daily]# ls -l /etc/cron.daily/0logwatch lrwxrwxrwx 1 root root 45 2008-12-01 22:08 /etc/cron.daily/0logwatch -> ../..//usr/share/logwatch/scripts/logwatch.pl [root@www cron.daily]# |
위의 설정에서 우리는 /etc/cron.daily디렉토리의 모든 실행파일들은 매일 새벽 04시 02분에 모두 자동실행된다는 것을 알 수 있습니다.
따라서 /etc/cron.daily디렉토리에 존재하는 0logwatch실행파일도 매일 이 시작에 자동 실행된다는 사실을 알 수 있습니다.
이와 같이 리눅스 설치초기 환경에는 logwatch라는 로그분석 유틸리티가 cron에 등록되어 있기 때문에 별다른 설정을 하지 않아도 관리자 계정으로 그 결과가 들어오는 것입니다.
자, 그럼 이제 logwatch의 실행환경을 살펴보도록 하겠습니다.
먼저 logwatch의 주디렉토리는 다음과 같이 /etc/logwatch입니다.
[root@www ~]# ls -l /etc/logwatch/ 합계 8 drwxr-xr-x 4 root root 4096 2008-12-01 22:08 conf drwxr-xr-x 3 root root 4096 2008-12-01 22:08 scripts [root@www ~]# |
그리고 이 디렉토리에 존재하는 conf디렉토리는 logwatch의 모든 설정파일들이 들어 있는 곳이며 scripts디렉토리는 logwatch의 실행스크립트파일이 존재하는 곳입니다.
그러면 설정파일이 위치하는 /etc/logwatch/conf디렉토리를 보겠습니다.
[root@www ~]# ls -l /etc/logwatch/conf 합계 20 -rw-r--r-- 1 root root 81 2008-10-24 17:47 ignore.conf drwxr-xr-x 2 root root 4096 2008-10-24 17:47 logfiles -rw-r--r-- 1 root root 103 2008-10-24 17:47 logwatch.conf -rw-r--r-- 1 root root 77 2008-10-24 17:47 override.conf drwxr-xr-x 2 root root 4096 2008-10-24 17:47 services [root@www ~]# |
여기에 존재하는 각각의 로그파일들의 분석결과를 logwatch는 관리자에게 알려주게 됩니다.
위의 각각의 파일들은 여러분들께서 직접 확인해 보시기 바랍니다.
그리고 다음은 logwatch가 분석한 로그분석결과를 메일로 받은 예를 보인 것입니다.
제목 : LogWatch for ns.superuser.co.kr
################## LogWatch 2.6 Begin #####################
--------------------- Named Begin ------------------------
**Unmatched Entries**
client 66.136.44.126#4978: update 'diroo.com/IN' denied: 1 Time(s) client 66.136.44.126#4988: update 'diroo.com/IN' denied: 1 Time(s) client 66.136.44.126#5000: update 'diroo.com/IN' denied: 1 Time(s) ---------------------- Named End -------------------------
--------------------- proftpd-messages Begin ------------------------
**Unmatched Entries** www (210.222.223.192[210.222.223.192]) - FTP session opened. www (logserver[220.144.223.221]) - FTP session opened. www (210.222.223.192[210.222.223.192]) - FTP session closed. www (logserver[220.144.223.221]) - FTP session closed. www (211.218.236.123[211.218.236.123]) - no such user 'anonymous' www (211.111.193.138[211.111.193.138]) - no such user 'anonymous' ---------------------- proftpd-messages End -------------------------
---------------- Connections (secure-log) Begin -------------------
Connections: Service pop3: 161.178.140.22: 17 Time(s) 211.111.193.138: 6 Time(s)
**Unmatched Entries** proftpd[20490]: www (210.222.223.192[210.222.223.192]) - USER bible: Login successful. proftpd[20504]: www (logserver[220.144.223.221]) - USER bible: Login successful. proftpd[15777]: www (218.232.58.83[218.232.58.83]) - USER anonymouse: no such user found from 218.232.58.83 [218.232.58.83] to 211.220.193.181:21 proftpd[31219]: www (211.111.193.138[211.111.193.138]) - USER anonymous: no such user found from 211.111.193.138 [211.111.193.138] to 211.220.193.181:21 proftpd[31821]: www (211.218.236.123[211.218.236.123]) - USER anonymous: no such user found from 211.218.236.123 [211.218.236.123] to 211.220.193.181:21 proftpd[31822]: www (211.218.236.123[211.218.236.123]) - USER anonymous: no such user found from 211.218.236.123 [211.218.236.123] to 211.220.193.181:21 proftpd[31828]: www (211.218.236.123[211.218.236.123]) - USER anonymous: no such user found from 211.218.236.123 [211.218.236.123] to 211.220.193.181:21 xinetd[6971]: FAIL: pop3 libwrap from=211.111.193.138 proftpd[7115]: www (211.111.193.138[211.111.193.138]) - USER anonymous: no such user found from 211.111.193.138 [211.111.193.138] to 211.220.193.181:21
----------------- Connections (secure-log) End --------------------
--------------------- sendmail Begin ------------------------
2412285 bytes transferred 678 messages sent
Unknown users: pa@binggayun.net: 1 Times(s) aceace@binggayun.net: 27 Times(s)
**Unmatched Entries**
i2OF7NR11130: lost input channel from [61.72.135.185] to MTA after rcpt i2OFGJR11583: ruleset=check_rcpt, arg1=<k199909@starfish.co.kr>, relay=[219.240.92.41], reject=550 5.7.1 <k199909@starfish.co.kr>... Relaying denied. IP name lookup failed [219.240.92.41] i2OH3jR17863: ruleset=check_rcpt, arg1=<bible@knhc.co.kr>, relay=[61.254.67.81], reject=550 5.7.1 <bible@knhc.co.kr>... Relaying denied. IP name lookup failed [61.254.67.81] i2OH3jR17863: lost input channel from [61.254.67.81] to MTA after rcpt i2OH3kR17865: ruleset=check_rcpt, arg1=<bible@knhc.co.kr>, relay=[61.254.67.81], reject=550 5.7.1 <bible@knhc.co.kr>... Relaying denied. IP name lookup failed [61.254.67.81] i2OH3kR17865: lost input channel from [61.254.67.81] to MTA after rcpt i2OH3kR17867: ruleset=check_rcpt, arg1=<bible@knhc.co.kr>, relay=[61.254.67.81], reject=550 5.7.1 <bible@knhc.co.kr>... Relaying denied. IP name lookup failed [61.254.67.81] i2OH3kR17867: lost input channel from [61.254.67.81] to MTA after rcpt i2OH3lR17871: ruleset=check_rcpt, arg1=<bible@knhc.co.kr>, relay=[61.254.67.81], reject=550 5.7.1 <bible@knhc.co.kr>... Relaying denied. IP name lookup failed [61.254.67.81] i2P0g1R09329: i2P0g7R09331: DSN: User unknown i2P0gsR09465: i2P0gwR09467: DSN: User unknown i2P0hmR09599: i2P0hmR09601: DSN: User unknown i2P0iDR09669: ruleset=check_rcpt, arg1=coba@mk.co.kr, relay=[161.178.140.22], reject=550 5.2.1 coba@mk.co.kr... Mailbox disabled for this recipient i2P0iRR09682: i2P0iSR09684: DSN: Service unavailable i2P0kaR10324: i2P1B6S12673: DSN: Service unavailable i2P0kXR10233: i2P1D5o12673: DSN: Service unavailable i2P0kUR10116: i2P1D5p12673: DSN: Service unavailable i2P1J4L13494: i2P1J7L13497: DSN: User unknown i2P1JrL13589: ruleset=check_rcpt, arg1=<parksh20012000@yahoo.kr>, relay=[211.108.158.119], reject=450 4.7.1 <parksh20012000@yahoo.kr>... Relaying temporarily denied. Cannot resolve PTR record for 211.108.158.119 i2P1JrL13589: lost input channel from [211.108.158.119] to MTA after rcpt NOQUEUE: [211.111.193.138] did not issue MAIL/EXPN/VRFY/ETRN during connection to MSA NOQUEUE: [211.111.193.138] did not issue MAIL/EXPN/VRFY/ETRN during connection to MTA NOQUEUE: [211.61.67.153] did not issue MAIL/EXPN/VRFY/ETRN during connection to MTA ---------------------- sendmail End -------------------------
--------------------- SSHD Begin ------------------------
Users logging in through sshd: bible logged in from 161.178.140.22 using password: 2 Times(s) sskim logged in from 161.178.140.22 using password: 1 Times(s)
**Unmatched Entries** refused connect from 211.111.193.138 (211.111.193.138) refused connect from 211.111.193.138 (211.111.193.138) refused connect from 211.111.193.138 (211.111.193.138) ---------------------- SSHD End -------------------------
###################### LogWatch End #########################
|
위의 예는 logwatch에 의해 분석된 로그파일의 결과를 실제 필자가 받은 예입니다.
위의 결과를 보시면 Named에 관한 로그분석결과, proftpd에 관한 로그분석 결과, secure에 관한 로그분석 결과, sendmail에 관한 로그분석 결과, SSHD에 관한 로그분석결과 등을 보고하였음을 알 수 있습니다.
관련자료
-
이전
-
다음