ptablesのパケットパス
下記では、それぞれの意味について説明します。左からそれぞれ転送される時のパス、入力されるときのパス、出力されるときのパスを示します。
テーブルとチェイン
iptablesには、
- filter
- nat
- mangle
という3つのテーブルが用意されています。そして、それぞれのテーブルに、下記のようにチェインが備わっています。
- filter
- FORWARD
- INPUT
- OUTPUT
- nat
- PREROUTING
- POSTROUTING
- mangle
- PREROUTING
- OUTPUT
filterテーブル
パケットの内容をチェックして、パケットを受け入れたりブロックしたりします。FORWARDチェインはポートからポートへ転送されるときにパケッ
トをチェックします。INPUTチェインははローカルプロセスに入力されるとき、OUTPUTチェインはローカルプロセスからアウトプットされたときにパ
ケットをチェックします。
natテーブル
NAT(Network Address Translation)を実行します。WAN→DMZのあて先NATはPREROUTINGチェイン、IPマスカレードはPOSTROUTINGチェインで行われます。
mangleテーブル
ヘッダの変更や処理の最適化を行うテーブルです。あまり必要としませんので、説明を割愛します。
ユーザチェイン
iptablesはその処理の構造化を可能にするため、ユーザが特別なチェインを作成することができます。ユーザチェインは3つのテーブルのいずれかに関連付けられます。プログラムで言うところの、関数を作るようなイメージです。
これらiptablesの基本的な機能をうまく利用して、次のページでは実際にiptablesを用いたファイアウォールのルールを構築していきます。