iptablesとは
Linuxカーネル機能であるパケットフィルタリングを設定するコマンド・ツール
パケットフィルタリングとは
流れてきたパケットが設定した条件と一致するかどうか「判定」し、一致する場合に設定した「アクション」を行うこと
iptablesの機能
iptablesはテーブルとチェインで構成されている
- 「判定」の条件:テーブル
- 「アクション」の設定:チェイン
テーブル
全部で5種類存在するがよく利用するのは2種類のみ
- filterテーブル:パケットの出入りを制御(ex.通過、遮断)
- natテーブル:パケットの中身の書き換えを制御(ex.送信元、送信先)
チェイン
いきなり自分でチェイン設定するのはつらぽよだから組み込みチェインと呼ばれるデフォルト定義が用意されている
- filterテーブル:「INPUT」「OUTPUT」「FORWARD」
- natテーブル:「POSTROUTING」「PREROUTING」「OUTPUT」
オプションに使われる略の意味
- -s:Source、送信元
- -A:Add
- -d:Destination、宛先
- -p:Protocol、プロトコル
- -j:Jump、条件一致したパケットの扱い(つまりチェイン)を記述
よく利用される初期化
iptables -F(フィルタリングルールの削除) iptables -Z(カウンターのリセット) iptables -X(各チェインのデフォルトポリシーをACCEPTに戻す) iptables -t nat -F(上記で初期化されるのはfilterテーブルのみなのでnat等は別途必要) iptables -P INPUT ACCEPT iptables -P OUTPUT ACCEPT iptables -P FORWARD ACCEPT