ZABBIXでWindowsホストのファイル存在をチェック

セキュリティソフトが誤検知して重要なファイルを隔離してしまったのでセキュリティソフトの除外設定と挙動監視の見直しと共にZABBIXでファイルの存在チェックを行う。
ホストWindowsServer2019にはZABBIX Agent(サービスの登録)ZABBIXのコンソールからは監視ホストの設定 トリガ トリガからのメール通知を行いました。

ZABBIXサーバについてはローカルで運転している状態です。

 

ZabbixAgentWindows版のダウンロード

Download Zabbix agents
Download and install pre-compiled Zabbix agents

MSIインストーラー版とZIP版ありマニュアル記載のあるZIPをダウンロードする。i386だと7.0LTSがないので7.4をダウンロードした。

必要ファイルの設置

マニュアル通りCドライブ直下にzabbixフォルダを作成しダウンロードしたZIPを解凍 BINフォルダよりzabbix_agentd.exe Confフォルダよりzabbix_agentd.confをC:\zabbixに移動

 

zabbix_agentd.conf編集

サーバのIPアドレスを記載するのみ ZABBIXサーバのIPアドレスに編集する

 

サービスに登録

サービス登録の確認

サービスの手動開始 次回からは自動で開始される 

 

ZABBIXの管理画面から監視ホストの設定をする

アイテムの追加

実験のためテストファイル(test.txt)を設置し監視する。一連で問題なければ対象のパス・ファイルを指定する。

キー値
vfs.file.exists["C:\F_TERM_1016\EXE\test.txt"]

テスト実施

アイテムから下部 テストボタン押下

 

テスト結果 値=1存在している test.txt

test.txtをtest.txt_とし存在なしとなるか 0=存在しない→OK

 

トリガの作成

上記で設定した条件式 ファイルが無いときは、という式
last(/VMRDS-1015/vfs.file.exists["C:\F_TERM_1016\EXE\test.txt"])=0

 

メディアタイプの作成

通知→メディアタイプ

ここではメールで通知する設定する。設定はZABBIXの6からバージョンアップの値を継承しているため方法詳細については割愛。プロバイダのSMTP情報を入れるだけ。

 

トリガアクションの設定

通知→アクション→トリガーアクション(このメニュー位置を探すのに一苦労)

アクション作成

障害発生時と障害解消時をメール通知する。今回のファイル消失については自動では解消しないのですが、、、

実行内容をクリックして 実行内容と復旧時の実行内容を設定する

変更のリンクをクリックしてメールの通知内容を組み立てる。ほぼ初期設定 項目を日本語にしている位です。

問題を検出したときのメッセージ

件名 ZABBIX問題検出メール:{TRIGGER.NAME}
メッセージ 障害発生日時 {EVENT.TIME} on {EVENT.DATE}
障害名: {EVENT.NAME}
ホスト名: {HOST.NAME}
Severity: {EVENT.SEVERITY}
Original problem ID: {EVENT.ID}
{TRIGGER.URL}

復旧時の実行内容

件名 ZABBIX問題復旧メール:{TRIGGER.NAME}
メッセージ 以下は解決しました。
ZABBIX問題検出メール:{TRIGGER.NAME}: {EVENT.NAME}
障害発生日時 {EVENT.TIME} on {EVENT.DATE}
障害名: {EVENT.NAME}
ホスト名: {HOST.NAME}
Severity: {EVENT.SEVERITY}
Original problem ID: {EVENT.ID}
{TRIGGER.URL}

メールテスト

ファイル名を変更して 「問題検出メール」 ファイル名を正常に戻して 「問題解決メール」が意図した通りに受信できているか

以下のようなメール本文

障害発生日時 16:00:50 on 2025.10.18

障害名: 103_VMRDS-1015 ファイルが見つかりません(test.txt)

ホスト名: 103_VMRDS-1015

Severity: Disaster

Original problem ID: 9771958

コメント