優秀なシステム管理者なら誰でも、トラブルシューティングを始めるのに最適な場所の一つはログファイルだと言うでしょう。これは、日常的なシステムの問題だけでなく、より重要なセキュリティ問題にも当てはまります。Linuxシステムでは、これらのログは/var/logに保存され、ターミナルと任意のコマンド(lessやcatなど)で表示できます。もちろん、そのためにはターミナルを開き、/var/logディレクトリに移動して、ログファイルを一つずつ確認する必要があります。もし、ログディレクトリを監視し、エントリの集約ダイジェストを作成し、簡単に精査できる単一のアプリケーションを利用できたらどうでしょうか?一つのファイルで、多くのログを処理できます。
そこでLogwatchの出番です。このシンプルなツールを使えば、Linuxシステム上で実行されているサービスごとにログを分類できます。集計に含めるログを指定したり、特別なニーズに合わせてカスタム分析を作成したりすることも可能です。
Logwatchのインストール、設定、そして使い方のプロセスを解説します。Ubuntu Server 16.04でデモを行います。
参照: Linux のセキュリティ保護ポリシー (Tech Pro Research)
インストール
Logwatchは標準リポジトリに含まれているため、ほぼすべてのディストリビューションでコマンドラインからツールをインストールできます。以下のコマンドを、お使いのディストリビューションのパッケージマネージャーに合わせて変更するだけです。
Ubuntu にインストールするには、ターミナルを開いて次のコマンドを発行します。
sudo apt-get install logwatch
現在の設定によっては、インストール中に Postfix を構成するように求められる場合があります (図 A )。
図A
Postfixを設定する必要があるのは、Logwatchメールの配信のためです。メールの配信方法に応じて、利用可能なオプションから1つを選択する必要があります。「Local Only」を選択した場合は、mailutils(sudo apt install mailutils )をインストールし、 sudo mailコマンドでメールを確認できます。
インストールが完了したら、設定する準備が整います。
構成
Logwatch のすべての設定は 1 つのファイルで処理されます。ターミナルを開き、コマンドsudo nano /usr/share/logwatch/default.conf/logwatch.confを実行します。最初に設定する必要があるオプションは、Logwatch に電子メールの送信先を指定することです。必要なオプションはMailTo =です。設定方法は、サービスの設定方法によって異なります。Logwatch をローカルのみの配信に設定した場合は、メールの受信者となるユーザーにMailTo = を設定します。Logwatch をインターネットまたはスマートホスト対応のインターネットに設定した場合は、Logwatch ダイジェストの閲覧に必要なメールアドレスにこのオプションを設定します。
もう少し下にスクロールして、「MailFrom =」オプションまで移動します。Logwatchをインターネットまたはスマートホスト接続のインターネットで使用している場合は、有効なメールアドレスに設定する必要があります(そうしないと、リモート配信で問題が発生する可能性があります)。
次のオプションはRange =です。これにより、メールダイジェストを以下のオプションに設定できます。
- Logwatch がインストールされて以来のすべて。
- 今日–今日のログ。
- 昨日—昨日のログ。
デフォルトでは、範囲は昨日に設定されています。
数行下にスクロールして「詳細」オプションを設定してください。これにより、ログの詳細度が決まります。より多くの情報が必要な場合は、「詳細 = 高」に設定してください。中程度の情報が必要な場合は、「詳細 = 中」に設定してください。より少ない情報(デフォルト)が必要な場合は、「詳細 = 低」のままにしてください。
次のオプションはService =です。これを使うと、すべてのサービスに対して設定するか、個別にリストアップするかを選択できます。つまり、デフォルト(Service = All)または以下のような設定が可能です。
Service = http
âService = sshd
âService = sudo
このオプションが不明な場合は、「すべて」のままにして、必要に応じて構成してください。
参照:ファイルレスマルウェア感染を最小限に抑える10の方法(無料PDF)(TechRepublic)
使用法
Logwatchの設定が完了したら、ダイジェストが毎日送信されるようになります。ツールを手動で実行することもできます。
logwatch --detail Med --mailto ADDRESS --service all --range today
ここで、ADDRESSはリモートメールアドレスまたはローカルユーザーのいずれかです。レポートが送信され、詳細を確認できます(図B)。
図B
Logwatch はコマンドの結果を含む電子メールを自動的に送信するため (logwatch.conf の設定に従って)、コマンドを毎日実行する必要はありません。
読書の時間を作る
ぜひ時間を作って読んでみてください。ログ(特にLogwatchで生成されたログ)を毎日の読書リストに加えていれば、きっと問題ありません。Linuxシステム(そして会社)はきっと感謝してくれるでしょう。