Iptables は、Linux カーネルで IPv4 パケットフィルタリングルールテーブルを設定、保守、確認するために使用されます。さまざまなテーブルを定義できます。各テーブルには複数の組み込みチェーンが含まれており、カスタムチェーンも含めることができます。
各チェーンパケットセットに一致できるルールのリスト。各ルールは、一致するパケットの処理方法を指定します。これは「ターゲット」と呼ばれ、同じテーブルのカスタムチェーンへのジャンプです。
チェーンの概念をどのように理解しますか?
チェーンは固定ルールのリストですか?
チェーンをどのように定義/指定して使用しますか?例えば、
-A, --append chain rule-specification
選択したチェーンの最後に1つ以上のルールを追加します。送信元名および宛先名が複数のアドレスで解決されると、可能な各アドレスの組み合わせのルールが追加されます。
次のコマンドにチェーン名がありますかINPUT
?この名前は私が呼びたいとおりに呼ぶことができる名前ですか?このチェーンには正確に2つのルールがありますか?ありがとうございます。
iptables -A INPUT -p tcp -s localhost --dport 25 -j ACCEPT
iptables -A INPUT -p tcp --dport 25 -j DROP
答え1
iptables チェーンは、単に順次処理されるルールのリストです。固定された組み込み機能(基本テーブルにあるものINPUT
、OUTPUT
テーブルにある他のもの)のいずれか、ユーザーが定義してから別のテーブルから呼び出すこともできます。FORWARD
filter
nat
-A
(追加)、-I
(挿入)、および(削除)コマンドでわかるように、チェーンのルール-D
は自由に編集でき、固定されません。
以下のコマンドにチェーン名がありますか
INPUT
?
はい。
この名前は私が呼びたいとおりに呼ぶことができる名前ですか?
そうではなく、システムに着信するパケットのルールを含む組み込みチェーンです(ターゲットはホスト上で実行されるプロセスです)。基本テーブルの他の2つは(明らかにシステムからの着信パケット)と(ルーティングされたパケット)filter
です。OUTPUT
FORWARD
これマニュアルページiptables(8)
テーブルとその組み込みリンクの説明があります(下記TABLES
)。
もちろん、カスタムチェーンに着信パケットのルールを配置してから、INPUT
そのチェーンを参照するルールを追加するだけです。 (たとえば、そこにあるすべてのルールはiptables -A INPUT -j mychain
ジャンプして処理されます。)mychain
このチェーンには正確に2つのルールがありますか?
私たちはこれを知りません。これら2つのコマンド追加チェーンには2つのルールがあります。ただし、これらのコマンドを実行する前に、すでに他のコマンドがある可能性があります。
これら2つのルールの前に最初のコマンドがある場合、iptables -F INPUT
結果としてこれら2つのルールだけが残ります。
また見なさい:iptablesテーブルとチェーンを通過する方法これには、次のように知る必要がないすべてのものへのリンクが含まれています。
https://stuffphilwrites.com/2014/09/iptables-processing-flowchart/。 (最初は、raw
および表が頻繁に必要なので無視してもかまいません。)mangle