ПОСТРОЙ СЕБЕ САМ:
БЫСТРЫЙ СПОСОБ ПОЗНАКОМИТЬСЯ С IPTABLES

ViTLS (vitls@beshtau.ru)

Спецвыпуск Xakep, номер #024, стр. 024-062-1


Привет, мужик. Сегодня я хочу с тобой поговорить о том, что бездумная работа может привести к очень печальным последствиям. Но главное - я расскажу тебе, как этих последствий можно избежать, на примере защиты любимой оси aka Linux. Делать мы это будем при помощи встроенной утилитки iptables, которая присутствует в ядрах 2.4.*.

ВТЫКАЕМ

Надеюсь, ты сумеешь установить пакет с исходниками ядра или скачать свежее ядро ветки 2.4.х с ftp.kernel.org. Коротко это будет выглядеть так: администратором входишь в каталог /usr/src/linux, есессено, в консоли или в терминале. Даешь команду:

make menuconfig

или

make xconfig

(если ты работаешь в Х)

Идешь в Networking Options и включаешь поддержку Network packet filtering (Рис. 1).

Затем, спустившись немного ниже, можешь настроить фильтр пакетов в разделе Netfilter Configuration (Рис. 2).

Если что-то из вариантов настройки фильтра пакетов тебе покажется непонятным, а я на 100 процентов уверен, что тебе будет непонятно почти все, я настоятельно рекомендую выйти в Сеть и прочитать (а заодно слить на свой винт) вот эту доку: http://gazette.linux.ru.net/rus/articles/iptables-tutorial.html. Там про iptables написано почти все.

Сразу скажу, что в современных дистрибутивах ALT Linux Master 2.0, ASP Linux 7.2, Mandrake Linux 7.2 и выше, Red Hat Linux 7.0 и выше, SuSE Linux, Debian 2.2 и выше и так далее - пакетный фильтр iptables уже включен в ядро и настроен на решение часто используемых задач. Значит, тебе с большой вероятностью не придется самому заниматься конфигурированием и сборкой ядра.

Другое дело в случае консервативного дистриба Slackware или Gentoo. Скорее всего, тебе самому придется ковыряться в ядре, собирать его, скачивать пакет iptables (его тоже надо будет собрать) и устанавливать все это барахло. Но я уверен, справившись с установкой такого дистрибутива, ты на 100% расправишься с такой мелочью, как настройка и сборка ядра.

УЧИМ ПРАВИЛА

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

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

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

Стандартная цепочка INPUT

В нее попадают все ВХОДЯЩИЕ в фильтр пакеты.

Цепочку INPUT проходят пакеты, которые предназначены локальным приложениям (самому firewall'у).

Стандартная цепочка OUTPUT

В нее попадают все ВЫХОДЯЩИЕ из фильтра пакеты. Цепочка OUTPUT используется для фильтрации исходящих пакетов, сгенерированных приложениями на самом firewall'е.

Стандартная цепочка FORWARD

Используется для фильтрации пакетов, идущих транзитом через firewall (во внутреннюю сеть).

Содержание  Вперед на стр. 024-062-2