フラミナル

考え方や調べたことを書き殴ります。IT技術系記事多め

iptablesコマンドで-Sをつけたらエントリ内容が見れる

f:id:lirlia:20170803120153p:plain

RedHat系のmanには記載されていないがiptablesには-Sでエントリを一覧できる。

-S, –list-rules [chain] 選択されたチェインにある全てのルールを表示する。チェインが指定されない場合、 iptables-save と同じく、 全てのチェインの情報が表示される。 他のコマンド同様、 指定されたテーブル (デフォルトは filter) に対して作用する。

Man page of IPTABLES

実際使用するとこうなる

$ iptables -S
-P INPUT ACCEPT
-P FORWARD DROP
-P OUTPUT ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p tcp -m tcp --dport 7543 -j DROP
-A INPUT -p tcp -m multiport --dports 20,21 -j DROP
-A INPUT -p udp -m multiport --dports 20,21 -j DROP
-A INPUT -p tcp -m tcp --dport 22 -j DROP
-A INPUT -p tcp -m tcp --dport 23 -j DROP
-A INPUT -p udp -m udp --dport 23 -j DROP
-A INPUT -p tcp -m multiport --dports 512,513,514 -j DROP
-A INPUT -p tcp -m tcp --dport 177 -j DROP
-A INPUT -p udp -m udp --dport 177 -j DROP
-A FORWARD -j DROP

もし表示するテーブルを変更したい場合はiptables -t table名 -Sとする

$ iptables -t nat -S
-P PREROUTING ACCEPT
-P POSTROUTING ACCEPT
-P OUTPUT ACCEPT