Jump to content
Калькуляторы

Сборка ipset 2.5 как собрать сошку для iptables

С какой то версии появилась сборка модуля ядра при наличии исходников, сам ipset собирается и работает с родным ядром без его пересборки. Я использую CentOS и менять родное ядро на vanilla почему-то желания нет, в принципе можно и родное пересобрать с доп. патчами, но достаточно муторно (http://wiki.centos.org/HowTos/Custom_Kernel).

 

Собственно вопрос, можно ли собрать модуль set для iptables отдельно, так же при наличии исходников? Просто непонятки какие-то получаются, нафига делать возможность сборки ipset отдельно, если у меня его поддержки в iptables нет и прикрутить ее без пересборки ядра я опять же не могу... прикольно однако.

Edited by SokolovS

Share this post


Link to post
Share on other sites

Вобщем кому интересно проблему решил. Накладывать patch-o-matic надо, но ядро потом пересобирать не нужно (модули то уже собраны). Останется только собрать попатченный ipatables. Все работает.

Share this post


Link to post
Share on other sites

Ну с ipset я так понимаю проблем нет, а заставить iptables работать с ipset можно так:

Я качал iptables-1.3.8-6.fc7.src.rpm, устанавливал его с помощью rpm -Uvh

Потом скачал patch-o-matic-ng-20090312, вам можно и посвежее уже, распаковывал и выполнял:

KERNEL_DIR=/usr/src/kernels/2.6.18-92.1.22.el5-PAE-i686 \
IPTABLES_DIR=/usr/src/redhat/SOURCES/iptables-1.3.8 \
./runme set

 

Потом cd /usr/src/redhat/SPECS и rpmbuild -bb iptables.spec

Устанавливаем собранный rpm, ВСЕ.

Share this post


Link to post
Share on other sites

Да, ipset собрался и поставился без вопросов.

Скачал такие же исходники iptables.

качнул patch-o-matic-ng-20090920 и выполнил как вы указали - написало excelent и все такое.

iptables собирается, все ок. Но при добавление правила с ключем -m set все равно выдается:

 

iptables v1.3.8: Couldn't load match `set':/lib64/iptables/libipt_set.so: cannot open shared object file: No such file or directory

 

проверил на всякий случай - этого файла нигде в системе нет и похоже что patch-o-matic не накладывает патч ipset на исходники iptables.

 

в чем может быть трабл?

 

 

Edited by amindomao

Share this post


Link to post
Share on other sites

похоже что разобрался

в последней версии patch-o-matic-ng-20090920 просто нет патча ipset.

скачал ту, что ставили вы - там тоже нет :)

странно...

Share this post


Link to post
Share on other sites

скачал и пропатчил patch-o-matic-ng'ом, в котором есть ipset - тот же рузультат.

единственное чего не делал, так это не пересобирал ядро.

 

только что заметил, что вы используете ipset 2.5, а я вожусь с 3.2, может в этом дело?

Edited by amindomao

Share this post


Link to post
Share on other sites

Пересобрал штатное ядро CentOS 5 с патчем ipset 2.5

Пересобрал штатный iptables с поддержкой модулей libipt_set и libipt_SET.

Брать здесь http://centos.alt.ru/repository/centos/5/i386/

 

Для тех кому религия не позволяет ставить не родное ядро собрал kmod-ipset брать там же.

 

 

Также в репозиторий для CentOS 5 добавил такие полезные модули (для ядра и iptables) как ipp2p, connlimit, netflow.

 

 

Share this post


Link to post
Share on other sites
только что заметил, что вы используете ipset 2.5, а я вожусь с 3.2, может в этом дело?

Если Вам так хочется ipset 3.2, то он не заработает со штатным iptables 1.3.5 CentOS, Вам придется пересобрать свежий iptables >1.4 например из SRPMS от Fedora.

Патч ipset-3.2 на штатное ядро CentOS здесь

Share this post


Link to post
Share on other sites

Очень хороший вариант - xtables-addons. Включает возможности patch-o-matic, а так же ipset 4.1. Для использования не требует патчить ядро, но должна быть включена опция CONFIG_NETFILTER_XTABLES.

Share this post


Link to post
Share on other sites

Для желающих протестировать ipset 4.5 под CentOS/RHEL 5.x собрал RPM пакеты под i386/x86_64 архитектуры

 

Скачать можно здесь http://centos.alt.ru/pub/temp/ipset-4.5/

 

Штатный iptables в CentOS не содержит модуля set, пришлось его немного пропатчить.

 

ipset -V

ipset v4.5, protocol version 4.
Kernel module protocol version 4.

 

Если проблем не выявится, то данные пакеты уйдут в репозиторий CentALT.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this