iptablesにドロップされたパケットの内容を記録する

iptablesにドロップされたパケットの内容を記録する

私はiptablesの規則に従って(おそらくtcpdumpを使用して)ドロップされたパケットの内容全体を記録する方法を見つけようとしています。

現在、私はこれらのパケットを記録し(ログプレフィックスを含む)、その規則に従ってパケットを破棄する規則を持っています。

レビューのためにこれらのパケットの内容を記録する方法はありますか?それから

だから私はこれを探しています:

  1. 一致するパケットの履歴ルール
  2. コンテンツを記録する新しい宛先(おそらくQUEUE宛先?)にパケットを転送するルール
  3. パケットドロップルール

2と3を組み合わせることもできます。

私の理解は、tcpdumpがパケットを確認するため、これを実行できない可能性があることです。今後したがって、iptablesはドロップされたパケットのみを記録しません。

ありがとうございます。

ベストアンサー1

NFLOG 目標は、この目的に使用できます。以下は非常に基本的な例です。

# Drop traffic by default
iptables -P INPUT DROP

# add your whitelists here
# iptables -A INPUT ...

# Pass the packets to NFLOG (just like LOG, but instead of syslog,
# it uses netlink). You can add extra filters such as '-p tcp' as usual
iptables -A INPUT -j NFLOG
# packets that get here will now be dropped per INPUT policy

# Finally you can use tcpdump to capture from this interface (there
# can only be one active user of nflog AFAIK)
tcpdump -i nflog ...

iptables-extensionsターゲットの説明については、マニュアルページを参照してくださいNFLOG

おすすめ記事