Сохранить правила iptables после перезагрузки Debian

После перезагрузки правила iptables не восстанавливаются, если их правильно не сохранить.

Правила iptables могут быть полезными при использовании FTP внутри виртуального контейнера при работе с несколькими виртуальными OVZ серверами на различных портах (не обязательно на 80), при защите от большого количества POST-запросов на wordpress да и во многих других случаях.

Для сохранения правил создадим файл
vi /etc/network/if-up.d/00-iptables
следующего содержания:
#!/bin/sh
iptables-restore < /etc/firewall.conf
ip6tables-restore < /etc/firewall6.conf

и дадим права на выполнение
chmod +x /etc/network/if-up.d/00-iptables
В указанные конфиг-файлы сохраняем текущую конфигурацию iptables для ip4 и ip6 соответственно:

iptables-save >/etc/firewall.conf
ip6tables-save >/etc/firewall6.conf

Конфигурация iptables будет сохранена в файлы, которые начинаются строчками примерно такого содержания:

# Generated by iptables-save v1.4.8 on Tue Feb 13 19:20:41 2013
*nat
:PREROUTING ACCEPT [22:1080]
:POSTROUTING ACCEPT [1470:72883]
:OUTPUT ACCEPT [18:1368]

После перезагрузки правила iptables не сбросятся (точнее, будут прочитаны из конфиг файла - т.е. будут соответствовать правилам на момент сохранения конфигурации). Однако, при частом изменении правил такой вариант будет неудобен тем, что нужно постоянно сохранять текущую конфигурацию.. Банально, можно забыть это сделать.

Сохранение конфигурации iptables в текущем режиме

В случае, если редактирование правил iptables производится постоянно, можно добавить следующие строки в файл
/etc/network/interfaces
pre-up iptables-restore < /etc/iptables.rules
post-down iptables-save > /etc/iptables.rules

Метки:

Автор будет признателен, если Вы поделитесь ссылкой на статью, которая Вам помогла:
BB-код (для вставки на форум)

html-код (для вставки в ЖЖ, WP, blogger и на страницы сайта)

ссылка (для отправки по почте)

Добавить комментарий