チェインモデル・・・チェインとはルールをグループ化したもの。標準でINPUT、FORWARD、OUTPUTがある。
RHELのデフォルト設定は、ループバック関連、自分からの送信以外ほとんどのパケットがドロップされる。
INPUT・・・自分宛のパケットを処理する。
FORWARD・・・自分宛以外のパケットを処理する(ルーターとして動く場合に使う)。
OUTPUT・・・自分で生成したパケットをフィルタする。
チェインは自分で定義でき、ターゲットとして指定できる(チェインから別チェインにフィルタを投げる)
通常のルール
# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
オリジナルチェインを作成する
# iptables -N Chainname
チェインからチェインへのルール
# iptables -I INPUT 1 -j OTHERCHAIN
このように定義することで、入力パケットをまずOTHERCHAINで処理してから、INPUTに戻すことができる(OTHERCHAINでマッチした場合はそこで終了)
現在のルールを確認
# iptables -L -v -n --line-number
設定を編集したら必ず保存
# /etc/init.d/iptables save
保存したファイルは以下にあるので、バックアップしておくと良い。
/etc/sysconfig/iptables
その他設定例
http/httpsでの接続を禁止する設定を追加(ルールの一番下に追加される)
# iptables -A OUTPUT -p tcp --sport 80,443 -j REJECT
OUTPUTの5番目のルールとして、192.168.100.0/24への接続を禁止する
# iptables -I OUTPUT 5 -d 192.168.100.0/24 -j REJECT
ルール番号を指定して削除する
# iptables -D CHAINNAE rulenum
ちなみにGUIの system-config-securitylevel でFW関連の設定いじると、iptablesの設定が「全て」上書きされるので注意。