iptablesのログを/var/log/messagesに出していると邪魔なので、専用のファイル/var/log/iptablesとかに出したい。
man iptablesによると。
--log-level level Level of logging (numeric or see syslog.conf(5)).
iptablesはファシリティkernで出すようでして、levelでしか指定できない。カーネルレベルでパケットを落とすという仕様のため!?そこで、syslogでdebugに指定すれば良いみたいです。
iptablesのLOGGINGオプションは次のようにします。
IPTABLES='/sbin/iptables'
${IPTABLES} -A LOGGING -j LOG --log-level debug --log-prefix "DROP:" -m limit
syslogの設定はkern.debugを別ファイルに落とせばよいので、「/etc/syslog.conf」を次のように変更します。
*.info;mail.none;authpriv.none;cron.none /var/log/messages # Log iptables drop kern.debug /var/log/iptables.log
info以上が/var/log/messagesに入る。kern.debugを/var/log/iptables.logに記録。
logroateでsyslogの部分にiptables.logを追加しておく。そうするとiptablesのログを分離しつつ保存することが可能に。
あとはlogwatchなどでiptablesのログ解析をさせて日々の傾向を掴みましょう。
なお、iptablesで「ログに残すもの」と「残さないもの」を決めておいた方が良いですね。何でも全部残すとログが溢れるばかりの量になってしまいます。