Zabbixでポートを監視する

スポンサーリンク

目的

Zabbixを使用してポートを監視します。

ネットワーク構成

環境

Zabbixサーバの環境です。

OSWebサーバデータベースPHPZabbix ServerZabbix Agent
CnetOS 7.8Apache 2.4.6MySQL 8.0.217.2.324.0.234.0.23

クライアントの環境です。

OSZabbix Agent
CnetOS 7.44.0.23
Windows Server 20194.0.23

監視設定

アイテムの設定

項目CentOS側の設定値Windows側の設定値
名前ポート監視 (22)ポート監視 (3389)
タイプZabbixエージェントZabbixエージェント
キーnet.tcp.service[ssh,,22]net.tcp.service[tcp,,3389]
監視間隔1m1m
値のマッピングService stateService state
アプリケーションの作成ポートポート

トリガーの設定

項目CentOS側の設定値Windows側の設定値
名前{HOST.NAME} ポート疎通不可{HOST.NAME} ポート疎通不可
深刻度軽度の障害軽度の障害
条件式{CentOS7-ZA4-1:net.tcp.service[ssh,,22].min(#5)}=0
※22ポートの応答が5回連続でなかったという意味です。
{Windows2019-1:net.tcp.service[rdp,,3389].min(#5)}=0
※3389ポートの応答が5回連続でなかったという意味です。
手動クローズを許可チェックをつけるチェックをつける

アクションの設定

項目設定値
デフォルトのアクション実行ステップの間隔1h
デフォルトの件名【ZBX】{TRIGGER.NAME}
デフォルトのメッセージOriginal event ID: {EVENT.ID}
障害発生時刻:{DATE} {TIME}
ホスト名:{HOST.HOST}
IPアドレス:{HOST.IP}
設置場所:{INVENTORY.LOCATION}
深刻度:{TRIGGER.SEVERITY}
障害内容:{TRIGGER.NAME}
最新値:{ITEM.LASTVALUE}
メンテナンス中の場合に実行を保留チェックをつける
実行内容アラートメールの宛先を設定

動作確認

最新データの状態です。正常時は以下の通りです。

ホスト名前最新のチェック時刻最新の値
CentOS7-1ポート監視 (22)2023/02/12 17:49:48Up (1)
Windows2019-1ポート監視 (3389)2023/02/12 17:50:49Up (1)

ポートを閉じてみます。
CentOSは、「systemctl stop sshd」コマンドを実行、
Windowsサーバはリモートデスクトップの設定で「このコンピューターへのリモート接続を許可しない」にチェックを入れます。数分後、ポートのダウンを検知しました。

ホスト名前最新のチェック時刻最新の値
CentOS7-1ポート監視 (22)2023/02/12 18:04:48Down (0)
Windows2019-1ポート監視 (3389)2023/02/12 18:04:500

アラートメールが届いていることを確認します。

件名本文備考
【ZBX】CentOS7-ZA4-1 ポート疎通不可Original event ID: 419
障害発生時刻:2023.02.12 18:06:49
ホスト名:CentOS7-ZA4-1
IPアドレス:192.168.xxx.xxx
設置場所:UNKNOWN
深刻度:Average
障害内容:CentOS7-ZA4-1 ポート疎通不可
最新値:Down (0)
ポートのダウンを検知したのが18:02でした。障害発生時刻が18:06なのでトリガーの5回連続ダウンが正常に機能しています。
【ZBX】Windows2019-1 ポート疎通不可Original event ID: 418
障害発生時刻:2023.02.12 17:56:51
ホスト名:Windows2019-1
IPアドレス:192.168.xxx.xxx
設置場所:UNKNOWN
深刻度:Average
障害内容:Windows2019-1 ポート疎通不可
最新値:Down (0)
ポートのダウンを検知したのが17:52でした。障害発生時刻が17:56なのでトリガーの5回連続ダウンが正常に機能しています。