11 アクティブチェックを使用してWindowsイベントログを監視する
はじめに
このガイドでは、Zabbixのアクティブチェックを使用してWindowsイベントログを監視する方法について説明します。ZabbixのWindows固有のアイテムキーを使用することで、重要なイベント(ログオン失敗、システムエラーなど)をリアルタイムで収集・分析できます。
このガイドの対象者
このガイドは、Windowsイベントログを監視したいZabbixの新規ユーザーやネットワーク管理者向けに作成されています。高度な設定オプションについては、Windows固有のアイテムキーのドキュメントを参照してください。
前提条件
このガイドを進める前に、OSの手順に従ってZabbixサーバーとZabbixフロントエンドをダウンロードしてインストールする必要があります。また、監視対象のWindowsマシンにZabbixエージェントをダウンロードしてインストールする必要があります。
Windowsイベントログ監視用のZabbixエージェントの設定
1. Windowsホスト上で zabbix_agentd.conf(既定のパスは C:\Program Files\Zabbix Agent\zabbix_agentd.conf)を開き、ServerActive パラメーターがZabbixサーバーのIPアドレスに設定されていること、および Hostname パラメーターが Zabbix Webインターフェース で定義するホスト名と一致していることを確認します。これにより、エージェントは自身のホストに対するアクティブチェックを、指定されたZabbixサーバーから要求できるようになります。例:
ServerActive=192.0.2.1
Hostname=MyWindowsHost
2. 変更を適用するため、Zabbixエージェントサービスを再起動します:
net stop "Zabbix Agent" && net start "Zabbix Agent"
3. Windowsホストが稼働していることを確認します:
- WindowsホストでZabbixエージェントサービスが実行中であることを確認します。
- Windowsホストがポート10051でZabbixサーバーに接続できることを確認します。Windowsホストから接続性をテストするには、PowerShellを開いて次のコマンドを実行します:
Test-NetConnection -ComputerName <Zabbix-server-IP> -Port 10051
Zabbix Webインターフェースの設定
1. データ収集 > ホスト に移動し、ホストを作成します。
- ホスト名 フィールドに、ホスト名を入力します(例: "MyWindowsHost")。
- ホストグループ フィールドに、ホストグループを入力または選択します(例: "Event log Monitoring")。
- 追加 をクリックして、設定したホストを保存します。
テンプレート フィールドでは、同じホスト上の他のアクティブなアイテムが更新されているかどうかを確認してトラブルシューティングに役立てるために、"Windows by Zabbix agent active" テンプレートを追加できます。

2. 次のパラメーターで新しいアイテムを作成します。
- 名前 フィールドに、説明的なアイテム名を入力します(例: "Security log: failed logon events")。
- タイプ のドロップダウンで、"Zabbix agent (active)" を選択します(Event log monitoring に必要です)。
- キー フィールドに、eventlog アイテムキーを使用します。たとえば、Security log でのログオン失敗試行(Event ID: 4625)を監視し、アイテムの最終チェックより古いエントリを無視する(
skipパラメーターを使用する)には、次のアイテムキーを入力します:eventlog[Security,,,,4625,,skip] - 情報の種類 のドロップダウンで、"Log" を選択します。

3. 追加 をクリックして、アイテムを保存します。
収集されたメトリクスのテストと表示
おめでとうございます!ZabbixはWindowsイベントログの収集を行うように設定されました。 イベントログが収集されていることを確認するには、Windowsアカウントからログアウトし、誤った認証情報でログインを試みることで、「セキュリティログ:ログオン失敗イベント」アイテムをテストできます。
次に、Zabbixフロントエンドで収集されたログを表示します。
1. Zabbixフロントエンドの監視 > 最新データに移動します。

2. 名前フィールドで「MyWindowsHost」ホストでフィルタリングします。
3. 履歴をクリックして記録されたログ値を表示します。

4. ログ値が存在しない場合は、本ガイドのトラブルシューティングセクションに進んでください。
障害アラートの設定
このガイドでは、メールアラートを送信するための基本的な設定手順を説明します。
1. トリガーを定義するには、[データ収集] > [ホスト]に移動し、イベントログアイテムが関心のあるパターンを記録したときに発火するようにします。たとえば、セキュリティログで失敗したログオン試行を検出するには、find()関数を使用します。
find(/MyWindowsHost/eventlog[Security,,,,4625,,skip],10m,"like","Logon failed")
2. ユーザー設定 > プロファイルに移動し、メディアタブに切り替えてメールアドレスを追加します。

3. 障害通知の受信のガイドに従います。
次回、Zabbixが障害を検出したときは、メールでアラートを受信できるはずです。
トラブルシューティング
Windowsイベントログの収集や表示に問題が発生した場合は、以下のヒントを使用して一般的な問題を特定し、解決してください。
1. Zabbixサーバー(Linux)で、次のコマンドを使用してiptablesルールを一覧表示します。
sudo iptables -L -n
そして、TCPポート10051に対するACCEPTルールがあることを確認します。
2. eventlog[...]キーが、Windows固有のアイテムキーに示されている通り、正確なログ名(大文字小文字を区別)、イベントID、モード(例:skip)、その他のパラメータを正確に使用していることを確認してください。
関連情報:
- アイテムの作成 - 追加のメトリクスを追加する方法を学びます。
- Microsoft Windows 上の Zabbix エージェント - 詳細なインストール手順。
- Zabbix エージェントで Windows を監視する - Zabbix エージェントを使用して Windows マシンの基本監視を設定するための包括的なガイド。
- Windows 固有のアイテムキー - イベントログ監視を含む、Zabbix エージェントでサポートされる Windows 固有のアイテムキーに関する詳細情報。
- ログファイルの監視 - Windows のイベントログにも適用できる、ログファイルの集中監視と分析のために Zabbix を設定する手順。