![]() |
LINUX |
Logcheckのインストール (参考)
・logを定期的にチェックし、管理者にメールを送ります
・logcheck-1.2.69をソースからインストールし、設定します
・logcheck-1.3.13はmime-constructを必要とします
・debianでメンテナンスされているバージョンです
・logwatchパッケージと競合するので停止します
・ソースの取得、削除は省略します
・エディタ、ファイラーの操作は省略します
・ソースを展開したら説明文を読みましょう
・Enterキーを省略します
・ログイン端末で "#" はroot、"$" は一般ユーザのプロンプトの記号です
・設定ファイルで "#" で始まる行はコメントとして解釈されます
関連サイト| :logcheck_1.2.69.tar.gz | (http://packages.debian.org/lenny/logcheck) |
| :lockfile-progs_0.1.11-0.1.tar.gz | (http://packages.debian.org/lenny/lockfile-progs) |
| :liblockfile_1.08.orig.tar.gz | (http://packages.debian.org/lenny/liblockfile1) |
参照ファイル
インストール環境| :OS | CentOS 5.5 |
| :selinux | permissive |
| :インストール先 | /usr/local/etc |
| :作業 | /usr/src |
| :言語 | LANG=en_US.UTF-8 |
| :ユーザー | rootで実行 |
・メンテナンスの場合は一般ユーザから行います
logcheck-1.2.69
logwatchの調整・/etc/cron.daily/@0logwatchシンボリックリンクを削除します
・またはlogwatchパッケージをアンインストールします
[root@earth:~]
# ls -l -o /etc/cron.daily
lrwxrwxrwx 1 root 28 Nov 7 13:15 0logwatch -> \
/usr/share/logwatch/scripts/logwatch.pl
# unlink /etc/cron.daily/0logwatch
・または
# rpm -e logwatch
liblockfileのインストール# cd /usr/src [root@earth:/usr/src] # tar zxf liblockfile_1.08.orig.tar.gz # chown -R root:root liblockfile-1.08 # cd liblockfile-1.08 [root@earth:/usr/src/liblockfile-1.08] # ./configure # make
# mkdir -p /usr/local/man/{man1,man3}
# make install
lockfile-progsのインストール# cd /usr/src [root@earth:/usr/src] # tar zxf lockfile-progs_0.1.11-0.1.tar.gz # chown -R root:root lockfile-progs-0.1.11 # cd lockfile-progs-0.1.11 [root@earth:/usr/src/lockfile-progs-0.1.11] # make
・ファイルをコピーします
# cd bin [root@earth:/usr/src/lockfile-progs-0.1.11/bin] # cp -a * /usr/local/bin # cd ../man [root@earth:/usr/src/lockfile-progs-0.1.11/man] # cp -a * /usr/local/man/man1
logcheckのインストール# cd /usr/src [root@earth:/usr/src] # tar zxf logcheck_1.2.69.tar.gz # chown -R root:root logcheck-1.2.69 # cd logcheck-1.2.69 [root@earth:/usr/src/logcheck-1.2.69] # make clean DESTDIR= # make install DESTDIR=
・cronファイルをコピーします
# cp -a debian/logcheck.cron.d /etc/cron.d/logcheck
専用ユーザの作成・ディレクトリ所有者の変更・logcheckをsystemIDで登録します( <500 )
# cd ~ [root@earth:~] # useradd -u 105 -G adm -d /var/lib/logcheck -s /sbin/nologin logcheck
・(ファイルを含む)ディレクトリ所有者を変更します
# chown -R logcheck:adm /etc/logcheck # chown -R logcheck:adm /var/lock/logcheck # chown -R logcheck:adm /var/lib/logcheck
logcheck.logfilesの修正・チェックするログファイルを設定します
:/etc/logcheck/logcheck.logfiles
/var/log/maillog /var/log/messages /var/log/secure
ログファイルのユーザ・グループ・パーミッションの変更・ユーザlogcheckが読み込めるようにします
[root@earth:~]
# chmod 640 /var/log/{maillog,messages,secure}
# chgrp adm /var/log/{maillog,messages,secure}
syslogローテートの修正:/etc/logrotate.d/syslog
/var/log/messages /var/log/secure /var/log/maillog /var/log/spooler /var/log/boot.log /var/log/cron {
create 0640 root adm
sharedscripts
postrotate
/bin/kill -HUP `cat /var/run/syslogd.pid 2> /dev/null` 2> /dev/null || true
/bin/kill -HUP `cat /var/run/rsyslogd.pid 2> /dev/null` 2> /dev/null || true
endscript
}
cronファイルの修正・毎日午前2時2分に実行します
:/etc/cron.d/logcheck (root root 644)
# /etc/cron.d/logcheck: crontab entries for the logcheck package
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
@reboot logcheck if [ -x /usr/sbin/logcheck ]; then nice -n10 /usr/sbin/logcheck -R; fi
02 2 * * * logcheck if [ -x /usr/sbin/logcheck ]; then nice -n10 /usr/sbin/logcheck; fi
# EOF
logcheckスクリプトの修正・lockfile-progsのインストール先 (/usr/local/bin) に合わせます
・ー部分 を +部分 にエディタで修正します(ー+は書き込まない)
:/usr/sbin/logcheck
--- logcheck.orig 2009-02-10 05:31:44.000000000 +0900 +++ logcheck 2010-12-16 07:14:45.000000000 +0900 @@ -31,9 +31,9 @@ exit 1 fi -if [ ! -f /usr/bin/lockfile-create -o \ - ! -f /usr/bin/lockfile-remove -o \ - ! -f /usr/bin/lockfile-touch ]; then +if [ ! -f /usr/local/bin/lockfile-create -o \ + ! -f /usr/local/bin/lockfile-remove -o \ + ! -f /usr/local/bin/lockfile-touch ]; then echo "fatal: lockfile-progs is a prerequisite for logcheck, and was not found." exit 1 fi @@ -211,7 +211,7 @@ mkdir $cleaned \ || error "Could not make dir $cleaned for cleaned rulefiles." fi - for rulefile in $(run-parts --list $dir); do + for rulefile in $(run-parts $dir); do rulefile=$(basename $rulefile) if [ -f ${dir}/${rulefile} ]; then debug "cleanrules: ${dir}/${rulefile}"
・logcheckのテスト
[root@earth:~]
# su -s /bin/bash -c "/usr/sbin/logcheck -d" logcheck
![]() |
Copyright(c) 528p.com All Rights Reserved. |

