以前の記事から Logwatch のコマンドが変わっていたので、再度書き直しました。
以前から変わったところは、出力のところ。
前は、logwatch --print
とするだけで標準出力できましたが、logwatch --output stdout
と出力指定をする必要があります。
Logwatch は、いろいろなログをまとめて集計し、レポートとして毎日定期的にメールで届けてくれる。不正アクセスや不具合の発見とサーバの監視に便利なツール。
Logwatch のインストール
Logwatch は Perl で書かれていて Perl 5.8 以上が必要です。
yumからのインストールは、
$ yum install logwatch
で、
ソースからのインストールは、こちらから。
Logwatch をインストールした時点で cron に登録されているので、毎日指定した時刻または anacronでランダムな時刻に Logwatch のスクリプト (/etc/cron.daily/0logwatch) が実行されてレポートが届く。
logwatch の設定
logwatch の設定は、/usr/share/logwatch/default.conf/logwatch.conf を編集する。標準設定のままで十分ですが、以下の項目を確認して設定。
#ログが保存されているディレクトリ
LogDir = /var/log
#メールの送信先
MailTo = user@hoge.com
#アーカイブされたログも含めるかどうか
Archives = Yes
#レポートの日付範囲を3つのオプションから。All, Today, Yesterday
Range = Yesterday
ログの詳細度、Low (=0), Med (=5), High (=10) または 0から10までの数字で
Detail = High
# チェックの対象となるサービスを /usr/share/logwatch/scripts/services/ 以下、あるいは All で指定。
Service = All
# メールコマンドパス
mailer = "/usr/sbin/sendmail -t"
サービスごとの個別設定は、/usr/share/logwatch/default.conf/services/ に用意されている。各サービスの設定ファイルを編集することで個別設定できる。
logwatch コマンドを使ってみる
標準出力
logwatch --output stdout
または、デフォルトで標準出力
logwatch
出力は、標準出力 (stdout) ほか、メール (mail) とファイル (file) への出力がある。
特定のサービスだけ出力
logwatch --output stdout --service http
複数のサービスにも
logwatch --output stdout --service http --service sshd
ログの詳細度を変えてみる
logwatch --output stdout --detail 10 --service http
メールに出力
logwatch --output mail --mailto user@hoge.com
ファイルに出力
logwatch --output file --filename /path/to/logwatch.txt
logwatch --help
Usage: /sbin/logwatch [--detail ] [--logfile ] [--output ]
[--format ] [--encode ] [--numeric] [--no-oldfiles-log]
[--mailto ] [--archives] [--range ] [--debug ]
[--filename ] [--help|--usage] [--version] [--service ]
[--hostformat ] [--hostlimit <host1,host2>] [--html_wrap ]
--detail : Report Detail Level - High, Med, Low or any #.
--logfile : *Name of a logfile definition to report on.
--logdir : Name of default directory where logs are stored.
--service : *Name of a service definition to report on.
--output : Report Output - stdout [default], mail, file.
--format : Report Format - text [default], html.
--encode : Enconding to use - none [default], base64.
--no-oldfiles-log: Suppress the logwatch log, which informs about the
old files in logwatch tmpdir.
--mailto : Mail report to .
--archives: Use archived log files too.
--filename : Used to specify they filename to save to. --filename [Forces output to file].
--range : Date range: Yesterday, Today, All, Help
where help will describe additional options
--numeric: Display addresses numerically rather than symbolically and numerically
(saves a nameserver address-to-name lookup).
--debug : Debug Level - High, Med, Low or any #.
--hostformat: Host Based Report Options - none [default], split, splitmail.
--hostlimit: Limit report to hostname - host1,host2.
--hostname: overwrites hostname
--html_wrap : Default is 80.
--version: Displays current version.
--help: This message.
--usage: Same as --help.
* = Switch can be specified multiple times...
</host1,host2>