XTables Addons

Немного истории

В мире UNIX все находится в почти постоянном движении, программисты извобретают интересные и, порой, извращенные вещи. Некоторые из них потом начинают использоваться на производстве. Однако не все и не всегда. Так для популярного в Linux-фаерволла iptables выпускался патч, содержащий экспериментальные модули для него. Однако постеменно ядро развивалось, а модули не принимались в основную ветку. Активность патчеписаталей падала (говорят, что даже один из них уже умер, однако точно я не скажу). И тогда был придуман удобный интерфейс для подключения таких вот расширений в ядро. Он и назывался Xtables.

Проверка системы

И так, допустим у нас есть современная система на основе GNU/Linux(>=2.6.18), в которой необходимо установить дополнительный расширения для брандмауэра netfilter, идущего в комплекте с ядром. Для начала проверим нашу систему на наличие ядерного модуля для XTables. Делается это таким вот кодом:

<strong>cat /boot/config-`uname -r` | grep XTABLES</strong>

Вернуть должно либо:

<strong>CONFIG_NETFILTER_XTABLES=m</strong>

Или же:

<strong>CONFIG_NETFILTER_XTABLES=y</strong>

Если команда вернула

<strong># CONFIG_NETFILTER_XTABLES is not set</strong>

То нам прийдется пересобирать наше ядро. Увы и ах. При пересборке нам будет необходимо включить эту опцию. Как это делается читайте в соответствующей статье.

Но если у нас все хорошо, то можно перейти к сборке самих дополнений.

Сборка XTables Addons в Debian >= 6 и Ubuntu >= 9.04

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

  1. Для налача установим заголовочные файлы ядра, а так же ассистента для сборки модулей из пакетов исходного кода.
    <strong>apt-get install linux-headers-`uname -r` 
    </strong>
  2. <strong>apt-get install module-assistant iptables-dev</strong>
  3. Потомы выполним
    <strong>sudo m-a prepare</strong>
  4. Поставим пакет исходного кода
    <strong>sudo apt-get install xtables-addons-source</strong>
  5. Код будет скачан и распакован. Останется лишь сказать
    <strong>sudo m-a build xtables-addons</strong>
  6. И теперь установим их.
    <strong>sudo m-a install xtables-addons</strong>
  7. После этого необходимо добавить модуль x_tables в /etc/modules, чтобы он подключался при загрузке.
  8. Теперь можно открывать man tables-addons и читать-читать-читать, там есть хорошие примеры.

Сборка XTables Addons в Debian < 6 и Ubuntu < 9.04

А вот если дебиан или убунта старые, то придется плясать. Есть исходники уже в дистибутиве, зовутся netfilter-extensions-source

  1. Берутся стандартным образом, как и xtables-addons
    <strong>sudo apt-get instal netfilter-extensions-source module-assistant</strong>
  2. Собираются аналогично, стандартно.
    <strong>m-a build netfilter-extensions</strong>
  3. Устанавливаются так-же.
    <strong>m-a install netfilter-extensions</strong>