Вход/Регистрация
Сетевые средства Linux
вернуться

Смит Родерик В.

Шрифт:

Определение правил

Для создания правил используется опция

– -append
(или
– А
) программы
iptables
. После этой опции задается один или несколько критериев, затем указывается опция
– -jump
(или
– j
), за которой следует действие
ACCEPT
,
DROP
или
REJECT
. Вызов
iptables
, предназначенный для создания действия, выглядит следующим образом:

# iptables --append CHAIN критерий_выбора– -jump действие

Сокращенно та же команда может быть записана так:

# iptables -A CHAIN критерий_выбора– j действие

Вместо

– -append
при вызове
iptables
могут быть указаны следующие опции.

• 

– -delete
, или
– D
. Эта опция удаляет правило из существующей цепочки.

• 

– -insert
, или
– I
. С помощью данной опции вы можете включить правило в середину цепочки. При этом необходимо задать номер правила. Если номер не указан,
iptables
включит правило в начало цепочки (при использовании опции
– -append
правило помещается в конец цепочки).

• 

– -replace
, или
– R
. Эта опция дает возможность заменить правило. Задавая данную опцию, следует указать номер заменяемого правила.

• 

– -list
, или
– L
. Данная опция отображает все правила в цепочке.

Для утилиты

iptables
предусмотрены также другие опции. Информацию о них вы можете получить на страницах справочной системы, посвященных
iptables
. В следующем разделе рассматривается формирование критериев выбора, передаваемых
iptables
. В одной команде можно задать несколько критериев, например, вы можете ограничить доступ по номеру порта и по IP-адресу.

На заметку

Ядро системы читает правила в цепочке по порядку и применяет первое из них, которому соответствует пакет. Если вы хотите задать исключение из какого-либо правила (например, запретить доступ к порту Telnet для всех узлов, кроме машин, принадлежащих локальной сети), вы должны поместить исключение перед основным правилом. Политика по умолчанию по сути представляет собой правило, находящееся в самом конце цепочки. Ему удовлетворяют все пакеты, которые не соответствуют ни одному другому правилу в цепочке.

Использование номеров портов при выполнении фильтрации

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

– -destination-port
(
– -dport
). Аналогичных результатов можно добиться, используя опцию
– -protocol
(
– p
), в качестве значения которой указывается тип протокола (
tcp
,
udp
,
icmp
или
all
). Опция
– -source-port
(
– -sport
) выполняет подобные действия, но задает порт источника. Команды, определяющие правила фильтрации на основе номеров портов, выглядят следующим образом:

# iptables -A INPUT -р tcp --dport 25 -j ACCEPT

# iptables -A OUTPUT -p tcp --sport 25 -j ACCEPT

Эти команды обеспечивают прием пакетов, направленных серверу, который ожидает поступление запросов через порт 25, и передачу пакетов, возвращаемых сервером в ответ на запрос (в них указан порт источника 25). В результате, даже если политика по умолчанию отвергает пакеты, сервер сможет получить почту от внешних серверов. Заметьте, если в качестве политики по умолчанию указано действие

DROP
или
REJECT
вы должны включить в цепочку
INPUT
правило, разрешающее принимать пакеты, направленные серверу, а в цепочку
OUTPUT
— правило, разрешающее передавать пакеты, сгенерированные данным сервером. Для этого при определении правила для цепочки
INPUT
задается опция
– -destination-port
, а при определении правила для цепочки
OUTPUT
— опция
– -source-port
. Если вы забудете создать одно из правил, то сервер сможет получать запросы, но не сможет генерировать ответы на них, либо, наоборот, через брандмауэр будут пропускаться только данные, сгенерированные сервером, а информация, направленная серверу, будет отвергаться. Для брандмауэра, совмещенного с маршрутизатором, надо также включить в цепочку
FORWARD
правила, созданные с использованием опций
– -destination-port
и
– -source-port
, в противном случае данные через брандмауэр передаваться не будут. Вы можете использовать в качестве условий номера портов в сочетании с IP-адресами. Это позволит не только ограничить обмен определенным типом протокола, но и разрешить его лишь для отдельных компьютеров. Так, например, вы сможете создать правила, согласно которым взаимодействовать с внешними узлами по протоколу SMTP будет иметь право только почтовый сервер.

Если вы используете политику по умолчанию

DROP
или
REJECT
, вам необходимо разрешить клиентским программам взаимодействовать с внешними серверами. Для этого выполните следующие действия.

• Разрешите доступ к серверным портам внешних компьютеров. Соответствующее правило, включаемое в цепочку

INPUT
, должно создаваться с указанием опции
– -source-port
, а при создании правила, помещаемого в цепочку
OUTPUT
, должна использоваться опция
– -destination-port
. Для брандмауэра, совмещенного с маршрутизатором, необходимо также включить в цепочку
FORWARD
правила, созданные с помощью опций
– -source-port
и
– -destination-port
. Возможно, что наряду с номерами портов вам потребуется задать IP-адреса ваших компьютеров. Таким способом вам следует разрешить обращение вовне по каждому из протоколов, которые используются клиентами, выполняемыми в вашей сети.

• Разрешите доступ к непривилегированным портам компьютеров вашей сети. Номера непривилегированных портов лежат в диапазоне 1024-65535. В опциях

– -source-port
и
– -destination-port
указываются границы диапазона, разделенные двоеточием, например
– -source-port 1024:65535
. Для принимаемых пакетов вы можете указать также опцию
! syn
. Правилам, в которых указана опция
– -syn
, соответствуют только пакеты, содержащие запросы на установление соединений, а символ
!
означает отрицание, т.е. заданному правилу будут удовлетворять только пакеты, которые были переданы серверами в ответ на запросы клиентов.

  • Читать дальше
  • 1
  • ...
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • ...

Ебукер (ebooker) – онлайн-библиотека на русском языке. Книги доступны онлайн, без утомительной регистрации. Огромный выбор и удобный дизайн, позволяющий читать без проблем. Добавляйте сайт в закладки! Все произведения загружаются пользователями: если считаете, что ваши авторские права нарушены – используйте форму обратной связи.

Полезные ссылки

  • Моя полка

Контакты

  • chitat.ebooker@gmail.com

Подпишитесь на рассылку: