* iptables-persistent [#e14e4906]
** iptables-persistentとは? [#ke5954c5]
- iptablesの設定を永続化するのに使う。
- Ubuntuなどのディストリビューションで、Redhat/Fedora系と似た環境にするのに使う。
** インストール [#jf6bf633]
sudo apt install iptables-persistent netfilter-persistent
** 設定ファイルのパス [#k48a0a21]
/etc/iptables/rules.v4
/etc/iptables/rules.v6
** 設定変更 [#w5c4cd21]
*** 方法 A. 設定ファイルrules.v4/6を書き換える [#x33071f0]
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -s 127.0.0.1 -j ACCEPT
-A INPUT -i eth1 -s 192.168.1.0/24 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j ACCEPT
COMMIT
*** 方法 B. iptables.shシェルスクリプトを作成して、それを実行する [#f5c0e530]
iptables -F
iptables -t nat -F
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --sport 22 -j ACCEPT
** 現在の設定を設定ファイルに保存する [#e56d2a97]
sudo /etc/init.d/iptables-persistent save
または
sudo iptables-save >/etc/iptables/rules.v4
sudo ip6tables-save >/etc/iptables/rules.v6
** 設定ファイルを再読み込みする [#g6f58793]
sudo netfilter-persistent reload
** 自動起動サービス [#n98b0844]
*** サービスの開始 [#y8284e3d]
sudo service netfilter-persistent start
*** サービスの停止 [#e492fcbc]
sudo service netfilter-persistent stop
*** サービスへの登録 [#b5b490ee]
sudo invoke-rc.d netfilter-persistent save
** 参考 [#kdec162a]
- https://dev-notes.eu/2016/08/persistent-iptables-rules-in-ubuntu-16-04-xenial-xerus/
- https://askubuntu.com/questions/1052919/iptables-reload-restart-on-ubuntu-18-04