Ubuntu 12.04 LTS-iptables v1.4.12
TLDR:
起動時にiptablesのルールセットはどこに保存されiptables-save <ruleset-name>
ますか?
説明:
この回答によると、 iptablesのルールを保存する基本的な方法は、
iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6
その後、これらのルールを次の/etc/network/interfaces
ようにロード/復元します:
iface eth0 inet static
....
pre-up iptables-restore < /etc/iptables/rules.v4
pre-up ip6tables-restore < /etc/iptables/rules.v6
...またはこれらをのシェルスクリプトに入れ/etc/network/if-pre-up.d
ます。
これは、iptables-persistent
パッケージをインストールすることで簡略化できます。
sudo apt-get install iptables-persistent
inovoke-rc.d iptables-persistent save
update-rc.d iptables-persistent defaults
いくつかのチュートリアルに従って私が呼び出そうとしましたservice iptables status
(iptables
12.04がプリインストールされているバージョン/パッケージの存在しない/不明なコマンド)と、この興味深い出力が見つかりました:
Aborting iptables initd: unknown command(s): "status".
...
save <ruleset>
save the current ruleset
load <ruleset>
load a ruleset
...
Saved rulesets:
active, inactive
...
ロードできるルールセットが2つあるようです(active
およびinactive
)...
..しかし、これらはどこに保存されますか?
アクティブ/非アクティブはかなり悪い検索用語でdpkg-query -L iptables
あり、助けにもならないため、私は彼らの場所を見つけることができません。
サーバーをpuppet
/ chef
でプロビジョニングしているので、ルールセットを配置し、/etc/networking/if-pre-up
これらをロードするための簡単なシェルスクリプトを追加できる場所があるかどうかを知っておくとよいでしょう。
次に、iptables-persistent
異なるルールセットのロードを許可しないため、柔軟性のないパッケージを省略できます。
ご協力いただきありがとうございます。