Ubuntu 12.04 LTS - iptables v1.4.12
TLDR:
Các quy tắc của iptables được lưu khi gọi iptables-save <ruleset-name>
?
Giải thích :
Theo câu trả lời này, cách cơ bản để tiết kiệm quy tắc của iptables là gọi
iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6
và sau đó tải / khôi phục các quy tắc này /etc/network/interfaces
như:
iface eth0 inet static
....
pre-up iptables-restore < /etc/iptables/rules.v4
pre-up ip6tables-restore < /etc/iptables/rules.v6
... hoặc đặt chúng vào một tập lệnh shell /etc/network/if-pre-up.d
.
Điều này có thể được đơn giản hóa bằng cách cài đặt iptables-persistent
gói.
sudo apt-get install iptables-persistent
inovoke-rc.d iptables-persistent save
update-rc.d iptables-persistent defaults
Theo một số hướng dẫn, tôi đã cố gắng gọi service iptables status
(một lệnh không tồn tại / không xác định cho iptables
phiên bản / gói được cài đặt sẵn với 12.04) và tìm thấy kết quả thú vị này:
Aborting iptables initd: unknown command(s): "status".
...
save <ruleset>
save the current ruleset
load <ruleset>
load a ruleset
...
Saved rulesets:
active, inactive
...
Dường như có hai quy tắc tôi có thể tải ( active
và inactive
) ...
.. nhưng những thứ này được lưu trữ ở đâu?
Tôi không thể tìm thấy vị trí của họ là hoạt động / không hoạt động là các cụm từ tìm kiếm khá tệ và dpkg-query -L iptables
cũng không giúp được gì.
Vì tôi đang cung cấp các máy chủ của mình với puppet
/ chef
thật tuyệt khi biết rằng có một số nơi tôi có thể đặt các quy tắc của mình và thêm một tập lệnh shell đơn giản /etc/networking/if-pre-up
để tải chúng.
Sau đó, tôi có thể sử iptables-persistent
dụng gói không linh hoạt vì nó không cho phép tải các quy tắc khác nhau.
Cảm ơn bạn đã giúp đỡ.