Ubuntu 12.04 LTS - iptables v1.4.12
TLDR:
Di mana aturan iptables disimpan saat memohon iptables-save <ruleset-name>?
Penjelasan :
Menurut jawaban ini, cara dasar menyimpan aturan iptables sangat menarik
iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6
dan setelah itu memuat / mengembalikan aturan ini /etc/network/interfacesseperti:
iface eth0 inet static
....
pre-up iptables-restore < /etc/iptables/rules.v4
pre-up ip6tables-restore < /etc/iptables/rules.v6
... atau memasukkan ini ke dalam skrip shell /etc/network/if-pre-up.d.
Ini dapat disederhanakan dengan menginstal iptables-persistentpaket.
sudo apt-get install iptables-persistent
inovoke-rc.d iptables-persistent save
update-rc.d iptables-persistent defaults
Mengikuti beberapa tutorial saya mencoba memanggil service iptables status(perintah yang tidak ada / tidak dikenal untuk iptablesversi / paket yang sudah diinstal sebelumnya dengan 12.04) dan menemukan output yang menarik ini:
Aborting iptables initd: unknown command(s): "status".
...
save <ruleset>
save the current ruleset
load <ruleset>
load a ruleset
...
Saved rulesets:
active, inactive
...
Tampaknya ada dua aturan yang dapat saya muat ( activedan inactive) ...
.. tapi di mana ini disimpan ?
Saya tidak dapat menemukan lokasi mereka sebagai aktif / tidak aktif adalah istilah pencarian yang sangat buruk dan dpkg-query -L iptablestidak membantu.
Karena saya menyediakan server saya dengan puppet/ chefakan lebih baik untuk mengetahui apakah ada beberapa tempat saya dapat meletakkan aturan saya dan menambahkan skrip shell sederhana /etc/networking/if-pre-upuntuk memuat ini.
Lalu saya bisa mengabaikan iptables-persistentpaket yang tidak fleksibel karena tidak memungkinkan memuat aturan yang berbeda.
Terima kasih atas bantuan Anda.