Linuxコマンド辞典 iptables-save/ip6tables-saveコマンド(ネットワーク)

iptables/ip6tablesのパケットフィルタリングルールを出力する「iptables-save/ip6tables-save」コマンドの概要と使い方を記載しています。

RHEL Fedora CentOS Vine Deblan Ubuntu Plamo

参考サイト:Man page of INSTALL

概要・使用方法

書式

$ iptables-save [オプション]
$ ip6tables-save [オプション]

有効になっているiptables/ip6tablesのルールを標準出力に出力します。ファイルに書き出す場合は、リダイレクト(「>」)などを利用して書き出し/保存します。保存したルールは、iptables-restoreで復元できます。

オプション

-c
–counters
パケットカウンタとバイトカウンタの現在値を出力する
-t テーブル名
–table テーブル名
指定したテーブルのみをダンプする。指定しなかった場合はすべてのテーブルがダンプする

現在のiptablesルールを出力

$ iptables-save
$ iptables-save > ファイルパス

実行結果

[root@centos ~]# iptables-save
# Generated by iptables-save v1.8.4 on Tue Dec 20 18:32:10 2022
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
:LIBVIRT_INP - [0:0]
:LIBVIRT_OUT - [0:0]
:LIBVIRT_FWO - [0:0]
:LIBVIRT_FWI - [0:0]
:LIBVIRT_FWX - [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -d 192.168.0.60/32 -i eth0 -p icmp -j ACCEPT
-A INPUT -d 192.168.0.60/32 -i eth0 -p tcp -m tcp --dport 22 -j ACCEPT
-A INPUT -d 192.168.0.60/32 -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
# Completed on Tue Dec 20 18:32:10 2022
# Generated by iptables-save v1.8.4 on Tue Dec 20 18:32:10 2022
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:LIBVIRT_PRT - [0:0]
-A POSTROUTING -j LIBVIRT_PRT
-A LIBVIRT_PRT -s 192.168.122.0/24 -d 224.0.0.0/24 -j RETURN
-A LIBVIRT_PRT -s 192.168.122.0/24 -d 255.255.255.255/32 -j RETURN
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p tcp -j MASQUERADE --to-ports 1024-65535
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p udp -j MASQUERADE --to-ports 1024-65535
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -j MASQUERADE
COMMIT
# Completed on Tue Dec 20 18:32:10 2022
# Generated by iptables-save v1.8.4 on Tue Dec 20 18:32:10 2022
*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:LIBVIRT_PRT - [0:0]
-A POSTROUTING -j LIBVIRT_PRT
-A LIBVIRT_PRT -o virbr0 -p udp -m udp --dport 68 -j CHECKSUM --checksum-fill
COMMIT
# Completed on Tue Dec 20 18:32:10 2022
[root@centos ~]# 

テーブルを指定してダンプする

$ iptables-save -t nat

実行結果

[root@centos ~]# iptables-save -t nat
# Generated by iptables-save v1.8.4 on Tue Dec 20 18:34:26 2022
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:LIBVIRT_PRT - [0:0]
-A POSTROUTING -j LIBVIRT_PRT
-A LIBVIRT_PRT -s 192.168.122.0/24 -d 224.0.0.0/24 -j RETURN
-A LIBVIRT_PRT -s 192.168.122.0/24 -d 255.255.255.255/32 -j RETURN
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p tcp -j MASQUERADE --to-ports 1024-65535
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -p udp -j MASQUERADE --to-ports 1024-65535
-A LIBVIRT_PRT -s 192.168.122.0/24 ! -d 192.168.122.0/24 -j MASQUERADE
COMMIT
# Completed on Tue Dec 20 18:34:26 2022
[root@centos ~]#