Я прохожу учебник по iptables и в настоящее время нахожусь в главе 6, Обход таблиц и цепочек.

У меня проблемы с пониманием причин таблиц 6-1, 6-2 и 6-3, перечисленных в предыдущей главе.

Вопросы:

  1. Есть ли лучшая книга или онлайн-ресурс, где можно найти лучшее объяснение?

  2. Должен ли я изучать / запоминать различные шаги, описанные в этих таблицах?

  3. Похоже, этому учебнику много лет. Все ли там сказано о iptables все еще действует на 100%. Версия iptables , установленная в моей системе, - 1.4.14 .

Все эти вопросы возникают главным образом потому, что я до сих пор «чувствую», что, возможно, все, что iptables должен был сделать, - это предоставить нам минимальный набор точек хуков (например, хуков до и после маршрутизации) и способность выполнять произвольную обработку пакетов (в любой последовательности, которую мы посчитали подходящей, и любое количество раз - пользовательский конечный автомат) вместо определения подробной последовательности шагов, как в приведенных выше таблицах. Например, на диаграмме, которая следует за таблицей 6-3, почему шаг «входной фильтр» должен идти только после «входного искажения», а не до? И почему бы не до и после? И т.п.

1 ответ1

1

Есть ли лучшая книга или онлайн-ресурс?

Возможно? Наверное? Существует масса онлайн и оффлайн ресурсов для изучения Linux и iptables. Вики имеет хороший обзор. Вот еще одно руководство по использованию и администрированию. Вот еще одно руководство с той же информацией, что и FrozenTux, но слегка переписанное.

Должен ли я изучать / запоминать различные шаги?

Это зависит от. Почему ты учишься в первую очередь?

Вам нужно запомнить все, чтобы использовать iptables? Нет. Фильтр используется по умолчанию, если вы не определяете никакую другую таблицу. Было бы полезно, если вы хотите использовать iptables в полной мере? Абсолютно.

Все еще действует?

Да.

почему шаг «вход фильтра» должен идти только после «входа ввода», а не раньше? И почему бы не до и после?

Ключом является описание в таблице 6.1, строки 8 и 9. По сути, вы хотите принять решение об изменении (или искалечении) пакета до его фактической фильтрации.

Вот почему цепочка ввода mangle сначала попадает, а затем цепочка ввода фильтра.

Аналогично, последовательность шагов важна, потому что пакет поступает на компьютер (на котором запущен iptables). Вы не можете принимать "входные" или входящие решения для пакета после того, как он уже был маршрутизирован и теперь является исходящим.

Вы заметите, что таблица 6.3 НЕ является продолжением таблицы 6.2. Вместо этого они похожи до строки 7 (решение о маршрутизации), а затем строка 8 - это другой путь или разветвление. Таблица 6.2 предназначена для пакетов внутри одной сети. Таблица 6.3 предназначена для пакетов вне сети.

Важно помнить 7-слойную модель OSI. Каждый бит данных упаковывается и переупаковывается в различные сегменты, пакеты и кадры. Каждый "скачок" в сети - это еще одна возможность для манипулирования и перезаписи любого конкретного сегмента, пакета или кадра.

iptables дает очень детальный контроль над этой переупаковкой. Вы можете написать правила для входящих пакетов, исходящих пакетов, пакетов только для вашей сети, а не для других, или наоборот, для вашего устройства, а не для вашего устройства и т.д. И вы можете изменять различные заголовки для всех этих кадров. **

** Я знаю, что я свободно смешиваю "frame", "сегмент" и "пакет". Извини, я действительно не должен. Если я не пытаюсь что-то сделать или проводить конкретный анализ сети, я всегда так делаю.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .