XTables Addons

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

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

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

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

cat /boot/config-`uname -r` | grep XTABLES

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

CONFIG_NETFILTER_XTABLES=m

Или же:

CONFIG_NETFILTER_XTABLES=y

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

# CONFIG_NETFILTER_XTABLES is not set

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

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

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

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

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

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

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

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