これが私がしたいことです。
私のルールファイル(と一緒に使用されますiptables-restore
)には次のものがあります(制限が削除されます)。
-4 -A LOGDROP -j LOG --log-prefix "ipt:4:drop "
-6 -A LOGDROP -j LOG --log-prefix "ipt:6:drop "
-A LOGDROP -j DROP
私はすべてのチェーンが終わるたびに同じ言葉を繰り返したくありません。だから別のチェーンに飛び込むといいと思います。~からLOGDROP
文字列をチェーンに組み立てることができるように、すでに文字列を設定できますlog-prefix
。
これを達成する方法はありますか?
答え1
良いアイデア。これは、変数を生成してすべてのパケットに追加することを意味します。私はそれが可能であることを知りませんでした。しかし、すべての希望は消えません。同様のことを達成する方法があるかもしれません。
MARKターゲットを使用できます。
iptables -A INPUT -j MARK --set-mark 123
Netfilterは32ビットフィールドを各パケットに関連付けます。その値は LOG 宛先とともに記録されます。その後、ログから文字列MARK=0x7b
(7B = 123)をgrepできます。 iptblesルールでこのタグをさらに一致させるには、matchを使用して完了できますmark
。
もしそうなら、文字列ほど良くはありませんが、あなたのニーズに適していますか?
編集:または、--and-mark
またはを使用して、1つ以上の特定のビットのみを設定/設定解除することもできます。これにより、接続文字列と同じようにパケットを表示するためのさまざまな可能性が提供されます。--or-mark
--xor-mark
--set-mark val/mask
この文書は次の場所にあります。Webフィルタページ下部のセクションでは、ターゲットに対して(正確に一致する拡張子(-m)が同じ名前を持ち、同じページに文書化されています。)