息抜きにiptablesのログからアクセス元のIPと宛先ポートをランキング化する
iptablesのログみるぞ!
common lisp楽しくて勉強してたら疲れたので息抜きにiptables
のログを整形しながら眺めます。
ACCEPT以外のパケットはすべてDropしてログに記録しているので、ログファイルに記録されてる=謎の通信と判断できます。
謎の通信を見ていきましょう。
iptables
のログ書式は以下のような感じ。
[IPTABLES INPUT]
は私がsyslogに送る時につけているprefixです。
Apr 20 23:13:38 hoge kernel: [IPTABLES INPUT] : IN=xxxx OUT= MAC=xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx SRC=xxx.xxx.xxx.xxx DST=xxx.xxx.xxx.xxx ... DPT=xx ....
SRC
に接続元のIPアドレスが入ります。DPTは接続先ポート番号です。
送信元IPをランキング化する
まずは接続してくるIPアドレスランキングを作りましょう。
# cat log | grep -o -E "SRC=([0-9]{1,3}\.){3,}[0-9]{1,3}" | cut -d '=' -f 2 | sort | uniq -c | sort -r | head -10 617 46.151.52.48 174 194.74.144.193 164 58.218.204.225 124 199.59.148.210 100 199.59.148.209 67 80.82.78.38 64 199.59.148.211 49 183.60.48.25 38 185.94.111.1 38 160.16.54.42
なにやらいっぱいきていますね。
堂々たる一位はウクライナみたいです。
ポートも
宛先Portはどうなっているのでしょうか。
完全に自分用のLinkと化しているryoana.com
が乗っているサーバなので、やはり80番が多いのでしょうか。
# cat log | grep -o -E "DPT=[0-9]{1,5}" | cut -d '=' -f 2 | sort | uniq -c | sort -r | head -10 3039 23 1801 80 198 161 174 1433 168 6666 146 5060 138 3389 122 25 111 8080 88 3306
telnet
が多いようです。
楽しいですね。