next up previous contents
Next: SSH(Secure SHell) Up: ロギング Previous: newsyslog

iplog

ipmon でもログは取れますが、IPFilter ではどのルールにマッチしたものをログ に取るかを指定出来るので、全部をログに取るのではなく、重要なアクセスのみ に限定した方が良いでしょう。そして、全てのトラフィックのログは別のツールで ロギングをすることでアタックのログなども取れるようにすることが出来ます。 トラフィックのログツールは色々なものがありますが、その一つに iplog が あります。FreeBSD では iplog は、パッケージの net カテゴリーに入っています。 特徴としては、様々なスキャンやアタックの記録がとれるようになっており、 OSも FreeBSD,OpenBSD,Solaris,Linuxなどに対応しています。 その他にも、in,out 全てのログを取る場合には、clog などもあります。

iplog は監視するインターフェース毎に BPF デバイスを消費しますので、 /dev/bpfN の数には注意してください。

iplog を起動するには単に、

   # /usr/local/sbin/iplog
とするだけですが、このままでログが取れません。syslog に送るには、 facility,priority を指定してあげます。


   # /usr/local/sbin/iplog --facility LOG_LOCAL1 --priority LOG_INFO

iplog には非常に多くのオプションがありますが、デフォルトでほとんどの スイッチが ON になっているので、必要なオプションについてのみ述べます。

  1. -d /etc/resolv.conf に記された DNSとの間のトラフィックを 記録しません。DNSへのアタックを見たい時にはこのオプションを指定しない 方が良いでしょう。

  2. -D 宛先IPもログに残します。

  3. -z 少し危ないオプションですが、nmap,quesoなどの remote OS 検知に対応し、おまけとして stealth scan も失敗させますが、ネットワーク に影響を与えてしまいます。

  4. -N IP を resolv してホスト名への変換を抑制します。iplog は DNS キャッシュも搭載していますが、DNSへのトラフィックが気になる場合 には OFF にします。デフォルトでは resolv をします。

-z オプションは気になる所ですが、以下のように設定します。


   /usr/local/sbin/iplog -D -N -z --facility LOG_LOCAL4 --priority LOG_INFO

動作を確認したら /usr/local/etc/rc.d/iplog.sh に次のように登録すれば 良いでしょう。


#!/bin/sh
#

umask 022
arg=${1:-start}

test -x /usr/local/sbin/iplog || exit 1
echo -n " iplog"

case $arg in
start)
   /usr/local/sbin/iplog -D -N -z --facility LOG_LOCAL4 --priority LOG_INFO;;
stop)
   killall iplog;;
esac



Noriyo Kanayama