1. TCPコネクションの状態を表示するコマンドを使用します
netstatの-antp:(1)過去のコマンドを使用
[ansible制御ZABBIX @ルート]#は、netstat -antp アクティブなインターネット接続(サーバと確立) 原Recv関数- Q送る-Qローカルアドレス外国住所州PID /プログラム名 TCP 0 0 0.0.0.0:10050 0.0.0.0:*がLISTEN 19285 / zabbix_agentd TCP 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 1620 / mysqldを TCP 0 0 0.0.0.0:111はLISTEN 0.0.0.0:* 815 / rpcbindの TCP 0 0 0.0.0.0:80 0.0.0.0:* 7887 / nginxのをLISTEN:マスター TCP 0 0 192.168.122.1:53 0.0.0.0:*は、1948 / dnsmasqのをLISTEN TCP 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1169 / sshdの 0 127.0.0.1:631 0.0.0.0:*がLISTEN TCP 0 1171 / cupsdの 0 0 127.0.0.1:25 0.0.0.0:*は1691をLISTEN TCP /マスター TCP 0 0 127.0.0.1:6010 0.0.0.0:* 12527 / SSHDをLISTEN:ルート@ ptのの TCP 0 0 127.0.0.1:6011 0.0.0.0:* 16970 / SSHDをLISTEN:ルート@ ptの
(2)現在一般的に使用されるコマンドです:SS -antp
-antp [ルートansible制御ZABBIX @]#ssの 状態のRecv-Qは、送信-Qローカルアドレス:ポートピアアドレス:ポート 10050 *:*ユーザー:0 128 * LISTEN(( "zabbix_agentd"を、PID = 19290、FD =を4)、( "zabbix_agentd"、PID = 19289、FD = 4)、( "zabbix_agentd"、PID = 19288、FD = 4)、( "zabbix_agentd"、PID = 19287、FD = 4)、( "zabbix_agentd"、 PID = 19286、FD = 4)、( "zabbix_agentd"、PID = 19285、FD = 4)) 0 50 * LISTEN:3306 *:*ユーザー:))(( "のmysqld"、PID = 1620 FD = 14 LISTEN 0 128 *:111 *:*ユーザー:(( "のrpcbind"、PID = 815、FD = 8)) LISTEN 0 128 * 80 * *ユーザー:(( "nginxの"、PID = 7888、FD = 6)、( "nginxの"、PID = 7887、FD = 6)) LISTEN 0~5 192.168.122.1:53 *: *ユーザー:(( "DNSMASQ"、PID = 1948、FD = 6)) LISTEN 0 128 * 22 *:*
2.書き込み監視スクリプトのアイデア
AWKは、最初の列を使用してステータス情報を取得します。
[ansible制御ZABBIX @ルート]#SSは-antp | awkは'{$ 1印刷}' 国家 LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN LISTEN TIME-WAIT TIME-WAITの TIME-WAITを
3.監視クライアントのhostsファイルを変更します/etc/zabbix/zabbix_agentd.confです
UserParameter = tcp.status [*]、SSの-antp | AWK '{[$$ 1] ++} END {[印刷 " '$ 1'"]}'
テストの4 ZABBIXサーバ側が正常にクライアント情報を取得することができます
[ルート@ ZABBIXサーバーセンター/]#zabbix_get -s 192.168.10.100 -p 10050 -k 'tcp.status [LISTEN]' 17 [ルート@ ZABBIXサーバセンター/]#zabbix_get -s 192.168.10.100 -p 10050 -k 'tcp.status [TIME-WAIT]' 96
5.テンプレートを作成し、グラフィック表示