Перейти к содержимому

Учебное пособие по брандмауэру Linux: таблицы, цепочки, основы IPTables на пальцах

Брандмауэр iptables используется для управления фильтрацией пакетов и правилами NAT. IPTables поставляется со всеми дистрибутивами Linux.

Понимание того, как установить и настроить iptables, поможет вам эффективно управлять брандмауэром Linux. Инструмент iptables используется для управления правилами брандмауэра Linux.

На первый взгляд, iptables может показаться сложным (или даже запутанным).

Но, как только вы поймете основы работы iptables и его структуру, чтение и запись правил брандмауэра iptables станет простым делом.

На высоком уровне iptables может содержать несколько таблиц. Таблицы могут содержать несколько цепочек. Цепочки могут быть встроенными или определяемыми пользователем. Цепочки могут содержать несколько правил. Правила определены для пакетов. Итак, структура выглядит так: iptables -> Tables -> Chains -> Rules.

Просто для повторения, таблицы — это куча цепочек, а цепочки — куча правил брандмауэра.

I. IPTABLES Таблицы и Цепочки

IPTables имеет следующие 4 встроенные таблицы.

Таблица фильтров ( Filter ) Filter — это таблица по умолчанию iptables. Таким образом, если вы не определите свою собственную таблицу, вы будете использовать таблицу Filter. Таблица фильтров Iptables имеет следующие встроенные цепочки. Цепочка INPUT — входящий траффик в брандмауэр. Для пакетов, поступающих на локальный сервер. Цепочка OUTPUT — исходящий траффик из брандмауэра. Для пакетов, генерируемых локально и выходящих из локального сервера. Цепочка FORWARD — Пакеты для другого сетевого адаптера на локальном сервере. Для пакетов, маршрутизируемых через локальный сервер.

NAT таблица Таблица NAT в Iptables имеет следующие встроенные цепочки. PREROUTING — изменяет пакеты перед маршрутизацией. Т.е. преобразование пакета происходит сразу после поступления пакета в систему (и до маршрутизации). Это помогает преобразовать IP-адрес назначения пакетов во что-то, что соответствует маршрутизации на локальном сервере. Она используется для DNAT (целевой NAT). Цепочка POSTROUTING — Изменяет пакеты после маршрутизации. Т.е. перевод пакетов происходит, когда пакеты покидают систему. Это помогает преобразовать исходный IP-адрес пакетов во что-то, что может соответствовать маршрутизации на сервер назначения. Она используется для SNAT (источник NAT). Цепочка OUTPUT — NAT для локально сгенерированных пакетов на брандмауэре.

Mangle таблица Таблица Mangle Iptables предназначена для специализированного изменения пакетов. Она изменяет биты QOS в заголовке TCP. Mangle имеет следующие встроенные цепочки. PREROUTING OUTPUT FORWARD INPUT POSTROUTING

Raw таблица Таблица Iptables Raw предназначена для исключений конфигурации. Raw таблица имеет следующие встроенные цепочки. PREROUTING OUTPUT

II. IPTABLES ПРАВИЛА

Ниже приведены ключевые моменты, которые следует помнить для правил iptables.

Правила содержат критерии и целевые значения.

Если критерий соответствует, iptables переходит к правилам, указанным в цели (или), выполняет специальные значения, указанные в цели.

Если критерий не сопоставлен, iptables переходит к следующему правилу.

Целевые значения

Ниже приведены возможные специальные значения, которые вы можете указать в цели.

ACCETP Брандмауэр примет пакет. DROP — брандмауэр сбросит пакет. QUEUE — Брандмауэр передаст пакет в пространство пользователя. RETURN — межсетевой экран прекратит выполнение следующего набора правил в текущей цепочке для этого пакета. Элемент управления будет возвращен в вызывающую цепочку.

Если вы выполняете iptables-list (или) service iptables status, вы увидите все доступные правила брандмауэра в вашей системе.

В следующем приемлемом примере показано, что в этой системе не определены правила брандмауэра. Как вы видите, он отображает таблицу input по умолчанию, с цепочкой input по умолчанию, цепочкой прямой forward и цепочкой output.

Сделайте следующее, чтобы просмотреть таблицу mangle.

Для просмотра таблицы nat выполните следующие действия.

Для просмотра  таблицы raw выполните следующие действия.

Примечание. Если вы не укажете опцию -t, будет отображена таблица filter по умолчанию. Итак, обе следующие команды одинаковы.

В следующем примере показано, что существуют некоторые правила, определенные в цепочке input, forward и output таблицы фильтров.

В выводе данных команды iptables –list содержат следующие поля у правил:

num — номер правила в определенной цепочке target — специальная переменная target, которую мы обсуждали выше prot — протоколы. TCP, UDP, ICMP и т. д., opt — Специальные опции для этого конкретного правила. source — IP-адрес источника пакета destination — IP-адрес получателя пакета

Опубликовано вLinux

Ваш комментарий будет первым

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *