私はubuntuを持っていますが、iptablesのログファイルはどこにありますか?/var/log/messages
を見つけましたが、これが正しいログファイルであるかどうかはわかりません。
また、このログファイルがいつ変更されるのか知りたいですか?マシンがpingメッセージに応答しないようにルールを1つ追加しましたが、マシンにpingを実行しても、/var/log/messages
に変更がありませんでした。
ログは簡単にいっぱいになる可能性があるため、デフォルトではログに記録されません。 LOGターゲットにジャンプを追加します。これにより、カーネルログにログが記録されます(これは、dmesg
を使用するか、syslogがディストリビューション用に書き込むように構成されている場所で確認できます)。 LOGターゲットルールで、--log-level
と--log-prefix
を設定して、メッセージを整理し、他のカーネルメッセージから分離しておくことができます。
LOGは「非終了ターゲット」であるため、ルールトラバーサルは次のルールに進みます。基本的に、既存のルールに影響を与えることなく、ログを既存のルールのすぐ上に追加できます。
ログエントリを追加するルールを追加しない限り、IPTablesはログに記録しません。これは通常、-jLOG宛先を使用して実行されます。ログエントリはカーネルログに送信され、syslogデーモンがカーネルログエントリの送信先を決定します。この場合は/ var/log/messagesのようです。
特定のホスト(架空の123.456.789.10など)からのpingをブロックし、それらすべてのパケットをログに記録する場合は、次のコマンドを実行します。
iptables -A INPUT -p icmp --icmp-type 8 --source 123.456.789.10 -j LOG
iptables -A INPUT -p icmp --icmp-type 8 --source 123.456.789.10 -j DROP