Raspberry Pi を Netflow Capture として使う
Raspberry Pi を Netflow Capture として使う
前回は、Netflow対応機器がない場合でも Vyosで手軽に Netflow を取得できる話でした。 kodamap.hatenablog.com
今回は Raspberry Pi を使って Netflow をCaptureする方法です。
参考サイト: NetFlow probe using Raspberry
https://blog.pandorafms.org/netflow-probe-using-raspberry/
L2SWの Port Mirroring を有効にして ターゲットポート を Raspberry Pi の 有線ポート(eth0(*))と接続します。
- Raspberry pi で パケットを Netflow Capture フローを生成 , Logstash へ 送る
- Logstash で 解析して Elasticsearch に送る
- Elasticsearch にデータを格納する
- kibana で可視化する
(*) 現状(2017/7現在) Raspberry では 1Gbpsのポートがありません。USBも2.0。 Raspberry pi has no 1Gpbs NIC and USB 2.0 interfaces.
今回使ったもの
Tools | Role |
---|---|
Raspberry Pi Zero W (RASPBIAN JESSIE LITE) | Netflow capture and prober |
Buffalo USB LAN adapter | 1Gpbs NIC (*) |
Netgear GS105E | L2SW (port mirroring enabled) |
Logstash(5.5.0) | Netflow collector |
Elasticsearch(5.5.0) | Search engine |
Kibana(5.5.0) | Virtualizer |
Install and Configure (fprobe)
- install
sudo apt install fprobe sudo apt install nfdump
- configure
sudo vi /etc/default/fprobe #fprobe default configuration file #INTERFACE="wlan0" INTERFACE="eth0" FLOW_COLLECTOR="<Netflow Collector IP>:2055 127.0.0.1:9995" #fprobe can't distinguish IP packet from other (e.g. ARP) OTHER_ARGS="-fip"
- modify /etc/rc.local
起動時にIPアドレス割り当てをflushする
ip addr flush dev eth0
こんな感じになりました。