トップページ > コンテンツ > コンピュータ関連その他 > UNIXコマンド > iptables

iptables -t テーブル名 コマンド チェーン オプション ターゲットで記述する。
(例) iptables -A INPUT -p tcp -s 192.168.11.1 -d 192.168.11.5 --dport 22 -j ACCEPT

■テーブル名、チェーン
テーブル名 説明 対応するチェーン
filter フィルタリングを実施する際に使う。-tを省略すると、自動的に-t filterとなるので、通常指定しない。 INPUT
OUTPUT
FORWARD
nat nat,naptを利用する時に使用。 PREROUTING
POSTROUTING
OUTPUT
mangle 特別なパケット変換の際に使用 PREROUTING

OUTPUT

■主なコマンド
パラメータ 引数 内容
t NAT等 テーブル名を指定。
A INPUT(外から内部),OUTPUT(内部から外),FORWARDING(転送),独自チェイン等を値に取る 追加先を指定
D INPUT(外から内部),OUTPUT(内部から外),FORWARDING(転送),独自チェイン等を値に取る 削除先を指定
R INPUT(外から内部),OUTPUT(内部から外),FORWARDING(転送),独自チェイン等とルール番号を値に取る 置き換え先を指定
N ユーザ定義のチェイン名 チェイン名を指定
L 現在のiptable設定を一覧表示。
iptables -nvLはよく使うのでおさえておきたい(nが数値で表示、vがインタフェース名等も含み詳細に表示)
ちなみにiptables-saveでこの設定を記憶しておくことができる)。
ただし、ここで表示されるiptable設定はPCを再起動すると無効になる。
PCを再起動後もiptable設定を有効にするには、etc/rc.d/init.d/iptables saveにて/etc/sysconfig/iptablesに設定を書き込む必要がある。
F チェインの全消去
P チェインのポリシーを指定したターゲットに設定

※FORWARDINGのイメージは、以下な感じ
=(in)=> ethX <=(forwarding)=> ethY <=(in)=
<=(out)= =(out)=>

■主なオプション
オプション 引数 内容
i/o ppp0(インターネットとルータの口),eth0,eth1等を値に取る パケットが入ってくる/出ていくインタフェースを指定
p tcp tcp-flags等を値に取る プロトコルを指定
m --stateやlimit 等が有りがち(*)。 拡張モジュール関連の指定。
s/d xxx.xxx.xxx.xxx/24等 送信元/送信先を指定
sport/dport 80(http),443(ssl)等任意のport 送信元/送信先ポートを指定
j ACCEPT,DROP,REJECT,QUEUE,RETURN等 パケットがマッチした時の動作を指定
v インタフェースのiptableの設定状況も知りたい場合はこのオプションを使う

(*)本来、ステートレスなUDPにも有効らしい。(http://oshiete.goo.ne.jp/qa/8453474.html)

■主なターゲット
ACCEPT パケットを許可
DROP パケットを破棄
REJECT パケットを拒否
LOG ログを記録
SNAT natテーブルの場合、送信元のアドレスを変える
DNAT natテーブルの場合、送信先のアドレスを変える
REDIRECT パケットを自身のマシンにリダイレクトする。受信ポートの変更。
最終更新:2020年04月26日 12:28