FreeBSD QandA 1646

FreeBSD QandA

Q. FireWall を構築しました。破棄 (deny) したパケットの log を取りたいので
   すが、どのようにすればよいでしょうか?

A. 次のオプションを含めてカーネルを構築してください。
 
      options         IPFIREWALL_VERBOSE
      options         "IPFIREWALL_VERBOSE_LIMIT=30"

   オプションの詳しい解説はファイル「/usr/src/sys/i386/conf/LINT」を読ん
   でください。

   次に、rc.firewall に記述している ipfw のルールに 「log」を追加してくだ
   さい。

   例えば次のようなルールを記述していたら、

      $fwcmd add 65000 deny all from any to any

   「deny」の次に「log」という引数を追加してください。

      $fwcmd add 65000 deny log all from any to any

   記述したら reboot してください。

   成功したら次のようなメッセージが console に表示されます。

     ipfw: 65000 Deny P:2 123.456.789.012 224.0.0.2 out via mx0
     ipfw: 65000 Deny ICMP:9.0 123.456.789.012 224.0.0.1 in via mx0

   以上は FreeBSD 3.4-RELEASE にて確認されました。
   以下の参考文献を参照してお使いのシステムに当てはまるかどうか確認して下さい。

   参考文献: ipfw(8)
             FreeBSDハンドブック 「6.4 ファイアウォール」
             <URL:http://www.jp.freebsd.org/www.FreeBSD.org/doc/ja_JP.eucJP/books/handbook/firewalls.html>
             ファイル 「/usr/src/sys/i386/conf/LINT」

間違い・追加情報を見付けた場合は、 修正案の投稿のしかた を読んだ上で、
QandA@jp.FreeBSD.org まで お知らせください。