Требуется ли сброс для iptables перед добавлением новых правил?

Я новичок в сети и пытаюсь выполнить простую настройку сервера для доступа к локальной сети (SSH и HTTP) с помощью iptables. Я использую CentOS7, если это имеет значение. Я работал с учебниками по формам, и они, кажется, предлагают в качестве первого шага очистить все существующие правила. Я работаю над новой установкой CentOS, и у меня есть пара терминальных окон правил, и я определенно не знаю достаточно, чтобы попытаться восстановить их, если я их убью, и я определенно не знаю, что они делают, поэтому я боюсь если я убью их, начнут происходить проблемы с сетью, которых я не понимаю, или я открою свой сервер для угроз безопасности. В этих туториалах не удосужились объяснить, почему выполняется сброс текущих правил. Я в порядке без сброса, если нет другого правила, которое противоречит тем, которые я добавляю в конце? Если я сделаю сброс, все ли будет восстановлено при перезагрузке, если я не использую сохранение iptable?


person WebSnake    schedule 17.01.2015    source источник
comment
Вопросы по настройке сервера относятся к ошибке сервера.   -  person    schedule 17.01.2015


Ответы (1)


Сбрасывать текущие правила не требуется, но иногда лучше начать с чистого листа. Даже если кто-то не хочет нарушать текущую конфигурацию, может оказаться более выгодным полностью перестроить ее с нуля. То есть не только в отношении простоты и эффективности полученной конфигурации, но и в уме при попытке придумать правильные правила.

Если кто-то решает сохранить текущую конфигурацию и использовать ее, он должен иметь в виду, что порядок правил имеет значение. Аргумент -I можно использовать для вставки новых правил в определенную позицию в указанной цепочке, как написано на справочной странице iptables:

-I, --insert chain [rulenum] спецификация-правила

Вставьте одно или несколько правил в выбранную цепочку под заданным номером правила. Таким образом, если номер правила равен 1, правило или правила вставляются в начало цепочки. Это также значение по умолчанию, если номер правила не указан.


Прежде чем что-либо изменять, желательно сохранить текущую конфигурацию в файл:

iptables-save > <filename>

Этот файл можно использовать позже для восстановления исходной конфигурации:

iptables-resotre < <filename>

Правила, созданные с помощью команды iptables, сохраняются в памяти. Если система перезапускается до явного указания обратного, текущий набор правил теряется. На CentOS7 это делается:

service iptables save

Подробности этой командной строки можно найти здесь :

При этом выполняется сценарий инициализации iptables, который запускает программу /sbin/iptables-save и записывает текущую конфигурацию iptables в /etc/sysconfig/iptables. Существующий файл /etc/sysconfig/iptables сохраняется как /etc/sysconfig/iptables.save.

При следующей загрузке системы сценарий инициализации iptables повторно применяет правила, сохраненные в /etc/sysconfig/iptables, с помощью команды /sbin/iptables-restore.


Обратите внимание, что в CentOS7 для управления iptables был введен firewalld. Этот ответ объясняет, как можно восстановить классическую настройку iptables.

person Yoel    schedule 18.01.2015