TWSNMP FCのポーリング辞典:syslogからレポート作成
syslogからネットワーク上で通信しているデバイスの情報、サーバーにアクセスしているユーザーの情報、ファイヤーフォールを通過する通信の情報などが取得できます。ネットワークの状態を知るためには有益な情報です。TWSNMP FCで、これらの情報からレポートを作成するためのポーリングの説明です。
ポーリング設定
基本的なポーリングの設定は、
種別
SYSLOGを設定します。
モード
モードで作成するレポートを指定します。以下のモードがあります。
フィルター
対象のログを取得するためのフィルターを正規表現で指定します。
抽出パターン
レポートを作成するために必要なGROKパターンを指定します。
で登録したものです。
デバイスレポート
デバイスレポートは、
Dec 13 07:32:42 rpi root: mac=00:01:02:03:04:05 ip=192.168.1.222
のようなログからMACアドレスとIPアドレスを取得して、
のようにレポートに反映させます。
組み込みでDEVICEという抽出パターンがあります。
定義は
`mac=%{MAC:mac}.+ip=%{IP:ip}`
です。
ユーザーレポート
ユーザーレポートは、
Dec 13 05:10:33 rpi sshd[18703]: Failed password for invalid user test from 192.168.1.250 port 51696 ssh2
Dec 13 07:01:47 rpi sshd[21406]: Accepted password for pi from 192.168.1.250 port 55485 ssh2
Dec 14 05:56:41 rpi sshd[23428]: Accepted publickey for root from 192.168.1.250 port 59115 ssh2: RSA 2b:12:fb:d3:e2:9d:f9:79:b9:6d:77:34:e8:7c:8d:bc
のようなログからユーザーIDとアクセス元IP、成功失敗のを取得して
のようなレポートを作成します。
このレポートは、SSHのログインに関するログを使っていますが、組み込んである抽出フィルターはSSHLOGINという名前で
`%{GREEDYDATA:stat} (password|publickey) for( invalid user | )%{USER:user} from %{IP:client}`
のような定義です。statが
Accepted
の場合に成功とする判断します。
サーバー、通信フローレポート
ファイヤーフォールの
'id=firewall sn=18B169A9C2A8 time="2020-12-13 00:06:15" pri=6 c=1024 m=537 msg="Connection Closed" app=11 n=58652207 src=10.30.165.222:52868:X0 dst=52.113.194.132:443:X1 srcMac=70:85:c2:c8:64:a1 dstMac=10:48:80:02:1b:d0 proto=tcp/https sent=1353 rcvd=6605 spkt=8 rpkt=11 dpi=0 cdur=61566 rule="8 " fw_action="NA"'
のようなログから送信元IPとポート、宛先IPとポート、プロトコル、通信量を取得してサーバーレポート、通信フローレポートを作成します。
地球儀に通信を表示することもできます。
このポーリングはNetFlowに対応していないファイヤーフォールやNetFlowを有効にすると負荷が高くなり通信障害が発生するファイヤーフォールのためにsyslogからフローに関する機能です。NetFlow使ったほうがよいと思います。
sonicwall
などのWELF形式の通信ログ
からデータを抽出するパターンはWELFFLOWで組み込んであります。
src=%{IP:src}:%{BASE10NUM:sport}:.+dst=%{IP:dst}:%{BASE10NUM:dport}:.+proto=%{WORD:prot}.+sent=%{BASE10NUM:sent}.+rcvd=%{BASE10NUM:rcvd}.+spkt=%{BASE10NUM:spkt}.+rpkt=%{BASE10NUM:rpkt}