Поддержка iptables в ядрах Linux 2.4
Модераторы: SLEDopit, Модераторы разделов
-
- Сообщения: 16
Поддержка iptables в ядрах Linux 2.4
Объясните пожалуйста, как включить поддержку iptables в ядрах Linux 2.4? (У меня 2.4.31)
LIVE FREE OR DIE!
-
- Сообщения: 618
- Статус: Любитель SUSE
- ОС: Suse 11.2
Re: Поддержка iptables в ядрах Linux 2.4
Вкладка Network->Networking options->Network packet filtering (replaces ipchains)
И включить там то что требуется в работе.
И включить там то что требуется в работе.
-
- Сообщения: 16
Re: Поддержка iptables в ядрах Linux 2.4
Вот мои Networking Options: (если нет вложенных опций, значит они отключены)
# iptables -nL
/lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o: unresolved symbol nf_unregister_sockopt
/lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o: unresolved symbol nf_register_sockopt
/lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o: insmod /lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o failed
/lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o: insmod ip_tables failed
iptables v1.3.4: can't initialize iptables table `filter': iptables who? (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
Код: Выделить всё
<*> Packet socket
[*] Packet socket: mmaped IO
<*> Netlink device emulation
[*] Network packet filtering (replaces ipchains)
[*] Socket Filtering
<*> Unix domain sockets
[*] TCP/IP networking
IP: netfilter configuration --->
<M> IP tables support (required for filtering/masq/NAT)
<*> ART tables support
# iptables -nL
/lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o: unresolved symbol nf_unregister_sockopt
/lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o: unresolved symbol nf_register_sockopt
/lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o: insmod /lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o failed
/lib/modules/2.4.31/kernel/net/ipv4/netfilter/ip_tables.o: insmod ip_tables failed
iptables v1.3.4: can't initialize iptables table `filter': iptables who? (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
LIVE FREE OR DIE!
-
- Сообщения: 618
- Статус: Любитель SUSE
- ОС: Suse 11.2
Re: Поддержка iptables в ядрах Linux 2.4
А вы часом iptables не обновляли?
Какой у вас дистрибутив?
Какой у вас дистрибутив?
-
- Сообщения: 16
Re: Поддержка iptables в ядрах Linux 2.4
Да, я устанавливал ядро 2.4.31 и обновлял iptables до 1.3.4 (собирал из сорцов).
Дистрибутив Red Hat 9.
Дистрибутив Red Hat 9.
LIVE FREE OR DIE!
-
- Сообщения: 216
Re: Поддержка iptables в ядрах Linux 2.4
А чего не хочешь обновить ядрышко до версии по-выше - 2.6?
ASP Linux 10.0 / 2.6.12-1.1386.1asp / KDE 3.3
-
- Сообщения: 143
-
- Сообщения: 618
- Статус: Любитель SUSE
- ОС: Suse 11.2
Re: Поддержка iptables в ядрах Linux 2.4
Что можно сказать у вас несоответствие версий между бинарником
/sbin/iptables, и патчем который установлен на ядро. Вы на исходники должны
наложить патч который идёт с вашей версией iptables.Очень часто
люди забывают что пакет iptables это патч + интерфейс управлением
ядром (то есть этот самый /sbin/iptables).
Я с этим когда-то в Gentoo сталкивался.
-
- Сообщения: 16
Re: Поддержка iptables в ядрах Linux 2.4
7biohazard7 писал(а): ↑02.12.2005 09:33
Что можно сказать у вас несоответствие версий между бинарником
/sbin/iptables, и патчем который установлен на ядро. Вы на исходники должны
наложить патч который идёт с вашей версией iptables.Очень часто
люди забывают что пакет iptables это патч + интерфейс управлением
ядром (то есть этот самый /sbin/iptables).
Я с этим когда-то в Gentoo сталкивался.
Буду очень признателен, если напишете как этот патч устанавливать.

LIVE FREE OR DIE!
-
- Сообщения: 16
Re: Поддержка iptables в ядрах Linux 2.4
Нашёл отличную статью по этой проблеме: http://linuxportal.ru/entry.php/1730_0_3_0_C/
LIVE FREE OR DIE!
-
- Сообщения: 16
Re: Поддержка iptables в ядрах Linux 2.4
Всё сделал по инструкции с linux-2.4.31, iptables-1.3.4, patch-o-matic-ng-20051208 и вот 

Код: Выделить всё
# iptables -nL
iptables v1.3.4: can't initialize iptables table `filter': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
LIVE FREE OR DIE!
-
- Сообщения: 16
Re: Поддержка iptables в ядрах Linux 2.4
Получилось!
1) Распаковал сорцы iptables, patch-o-matic и ядра в /usr/src, сделал симлинки на iptables и ядро:
2) При конфигурировании ядра включил только Network options -> Network packet filtering и Network options -> IP: Netfilter configuration -> IP tables support (мне были нужны только основные функции iptables). Собрал, установил ядро, перезагрузил систему с новым ядром.
3) Пропатчил ядро:
На всякий случай поставил все предложенные патчи.
4) Снова пересобрал и переустановил ядро, перезагрузился, собрал и установил ipatables:
iptables просто так не хотел компилироваться, пришлось убрать то, что не хотело компилироваться (новая возможность iptables "OS Fingerprint"):
iptables собрался, я ещё раз перезагрузился и всё заработало.

1) Распаковал сорцы iptables, patch-o-matic и ядра в /usr/src, сделал симлинки на iptables и ядро:
Код: Выделить всё
# ls -al /usr/src/
итого 32
drwxr-xr-x 8 root root 4096 Дек 10 17:16 .
drwxr-xr-x 15 root root 4096 Дек 10 14:48 ..
drwxr-xr-x 2 root root 4096 Янв 25 2003 debug
lrwxrwxrwx 1 root root 15 Дек 10 17:16 iptables -> iptables-1.3.4/
drwxr-xr-x 7 root root 4096 Дек 10 17:26 iptables-1.3.4
lrwxrwxrwx 1 root root 13 Дек 10 15:43 linux -> linux-2.4.31/
drwxr-xr-x 16 root root 4096 Дек 10 16:58 linux-2.4.20-8
dr-xr-xr-x 15 root root 4096 Дек 10 17:20 linux-2.4.31
drwxr-xr-x 5 root root 4096 Дек 9 01:55 patch-o-matic-ng-20051208
drwxr-xr-x 7 root root 4096 Дек 10 14:59 redhat
2) При конфигурировании ядра включил только Network options -> Network packet filtering и Network options -> IP: Netfilter configuration -> IP tables support (мне были нужны только основные функции iptables). Собрал, установил ядро, перезагрузил систему с новым ядром.
3) Пропатчил ядро:
Код: Выделить всё
# cd /usr/src/patch-o-matic-ng-20051208
# KERNEL_DIR=/usr/src/linux IPTABLES_DIR=/usr/src/iptables ./runme pending
# KERNEL_DIR=/usr/src/linux IPTABLES_DIR=/usr/src/iptables ./runme base
На всякий случай поставил все предложенные патчи.
4) Снова пересобрал и переустановил ядро, перезагрузился, собрал и установил ipatables:
Код: Выделить всё
# cd /usr/src/iptables
# make KERNEL_DIR=/usr/src/linux BINDIR=/sbin LIBDIR=/lib MANDIR=/usr/share/man
# make KERNEL_DIR=/usr/src/linux BINDIR=/sbin LIBDIR=/lib MANDIR=/usr/share/man install
# make KERNEL_DIR=/usr/src/linux BINDIR=/sbin LIBDIR=/lib MANDIR=/usr/share/man install-devel
iptables просто так не хотел компилироваться, пришлось убрать то, что не хотело компилироваться (новая возможность iptables "OS Fingerprint"):
Код: Выделить всё
# cd /usr/src/iptables/extensions
# rm -f ./.osf_test
# rm -f *osf*
iptables собрался, я ещё раз перезагрузился и всё заработало.

LIVE FREE OR DIE!
-
- Сообщения: 16
Re: Поддержка iptables в ядрах Linux 2.4
Вышеописанный способ кривое извращение. В ядре 2.4.31 толи разработчики накосячили, толи я чегото не понял. Там в include/linux/netfilter_ipv4 кто-регистры в именах файлов походу напутал
. Можно конечно было это вручную исправить, но мне что-то стало лень и я просто скачал ядро 2.4.32, где это исправили.
С linux-2.4.32 всё отлично собирается и устанавливается по стандартной инструкции и patch-o-matic не нужен.

С linux-2.4.32 всё отлично собирается и устанавливается по стандартной инструкции и patch-o-matic не нужен.
LIVE FREE OR DIE!