Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Erreur IPTables

10 réponses
Avatar
NoMas
Bonjour,

Sur un VPS Xen chez Santrex, une distribution debian lenny.
J'obtiens un message d'erreur lors du lancement de mon script iptables.
C'est cette ligne (identifi=E9e =E0 coup de echo "ici") qui provoque
l'erreur :

$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

L'erreur est la suivante :

iptables: No chain/target/match by that name

Le module nf_conntrack est bien charg=E9 il me semble :

# lsmod
nf_conntrack_ipv4 10432 3 iptable_nat,nf_nat
nf_conntrack 51380 3 iptable_nat,nf_nat,nf_conntrack_ipv4

Le fichier bien pr=E9sent :

# ll /lib/modules/2.6.31.6/kernel/net/ipv4/netfilter/
-rw-r--r-- 1 root root 19324 mai 3 20:04 nf_conntrack_ipv4.ko

Mais si les r=E8gles ACCEPT, DROP, REJECT, etc fonctionnent bien,
l'option "-m state --state" et donc le suivi des connexions ne
fonctionne pas, ce qui est bien dommage...

Je ne sais que faire. Avez vous des id=E9es ?
Merci.

NM

10 réponses

Avatar
Philippe Naudin
On Sun, 30 May 2010 10:29:25 +0200
NoMas wrote:

Bonjour,

Sur un VPS Xen chez Santrex, une distribution debian lenny.
J'obtiens un message d'erreur lors du lancement de mon script iptables.
C'est cette ligne (identifiée à coup de echo "ici") qui provoque
l'erreur :

$IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

L'erreur est la suivante :

iptables: No chain/target/match by that name

Le module nf_conntrack est bien chargé il me semble :

# lsmod
nf_conntrack_ipv4 10432 3 iptable_nat,nf_nat
nf_conntrack 51380 3 iptable_nat,nf_nat,nf_conntrack_ipv4



Il me semble qu'il manque xt_state, qui devrait être référencé par
nf_conntrack :

$ /sbin/modinfo xt_state
filename: /lib/modules/2.6.18-194.3.1.el5/kernel/net/netfilter/xt_state.ko
alias: ip6t_state
alias: ipt_state
description: ip[6]_tables connection tracking state match module

Mais ce module porte peut être un autre nom sur ton système...

--
Philippe
Avatar
NoMas
Le 2010-05-30, Philippe Naudin écrivit :

On Sun, 30 May 2010 10:29:25 +0200
NoMas wrote:

> Bonjour,
>
> Sur un VPS Xen chez Santrex, une distribution debian lenny.
> J'obtiens un message d'erreur lors du lancement de mon script
> iptables. C'est cette ligne (identifiée à coup de echo "ici") qui
> provoque l'erreur :
>
> $IPT -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
>
> L'erreur est la suivante :
>
> iptables: No chain/target/match by that name
>
> Le module nf_conntrack est bien chargé il me semble :
>
> # lsmod
> nf_conntrack_ipv4 10432 3 iptable_nat,nf_nat
> nf_conntrack 51380 3 iptable_nat,nf_nat,nf_conntrack_ipv4

Il me semble qu'il manque xt_state, qui devrait être référencé par
nf_conntrack :

$ /sbin/modinfo xt_state
filename: /lib/modules/2.6.18-194.3.1.el5/kernel/net/netfilter/xt_s tate.ko
alias: ip6t_state
alias: ipt_state
description: ip[6]_tables connection tracking state match module

Mais ce module porte peut être un autre nom sur ton système...



Merci pour cette réponse.

Je ne vois pas de module nommé xt_state.ko. J'ai par contre un
xt_statistic.ko :

# /sbin/modinfo xt_statistic
filename: /lib/modules/2.6.31.6/kernel/net/netfilter/xt_statistic.ko
alias: ip6t_statistic
alias: ipt_statistic
description: Xtables: statistics-based matching ("Nth", random)

Mais je ne suis pas sûr, s'agit-il bien du même que xt_state ?

Quoi qu'il en soit, le chargement de ce module xt_statistic ne fait pas
disparaitre le message d'erreur, toujours impossible d'utiliser le
suivi des connexions.
Avatar
Nicolas George
NoMas wrote in message :
Je ne vois pas de module nommé xt_state.ko. J'ai par contre un
xt_statistic.ko :

Mais je ne suis pas sûr, s'agit-il bien du même que xt_state ?



Dans le 2.6.33, c'est bien xt_state qu'il faut. Tu peux vérifier sur ton
propre noyau en regardant net/netfilter/xt_state.c dans l'arbre source de ta
version du noyau : à partir de <URL:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=summary >
choisir le tag correspondant à ta version, puis explorer l'arbre. J'obtiens
précisément <URL:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob;f=net/netfilter/xt_state.c;hL946cbd731f7cfe47b9333b13c7e861906f9298;hb`b341b778cc2929df16c0a504c91621b3c6a4ad#l55
, ce qui montre bien que c'est le bon.
Avatar
NoMas
Le 2010-05-30, Nicolas George écrivit :

> J'obtiens
précisément <URL:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=bl ob;f=net/netfilter/xt_state.c;hL946cbd731f7cfe47b9333b13c7e861906f929 8;hb`b341b778cc2929df16c0a504c91621b3c6a4ad#l55
>, ce qui montre bien que c'est le bon.



Merci.

Il me faut donc maintenant compiler ce module et l'ajouter à mon noyau
je pense.

Pour cela j'ai télécharger les sources de mon noyau, les fichiers sont
décompressés dans /usr/src/. J'ai bien un fichier xt_state.c dans le
répertoire "/usr/src/linux-2.6.31.6/net/netfilter".
Ensuite il me faut créer un Makefile pour compiler ce module. Il doit
contenir ceci :

obj-m = xt_state.o
KVERSION = $(shell uname -r)
all:
make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules
clean:
make -C /lib/modules/$(KVERSION)/build M=$(PWD) clean

Puis simplement lancer la commande "make" en me plaçant dans le
répertoire "/usr/src/linux-2.6.31.6", où ce trouve le fichier Makefile.

Malheureusement j'obtiens le message "make: Rien à faire pour « all » .",
et je ne trouve pas de fichier xt_state.ko dans le répertoire courant.

Je ne vois pas où ce trouve mon erreur.
Avatar
Nicolas George
NoMas wrote in message :
Il me faut donc maintenant compiler ce module et l'ajouter à mon noyau
je pense.



Non, il faut que tu comprennes pourquoi tu ne l'as pas.
Avatar
NoMas
Le 2010-05-31, Pascal Hambourg écrivit :

Salut,

NoMas a écrit :
>
> Je ne vois pas de module nommé xt_state.ko. J'ai par contre un
> xt_statistic.ko :
[...]
> Mais je ne suis pas sûr, s'agit-il bien du même que xt_state ?

Non, rien à voir. Par contre si tu as le module xt_conntrack, sa
correspondance 'conntrack' remplace et étend les possibilités de la
correspondance 'state'.

-A INPUT -m conntrack --ctstate ESTABLISHED,RELATED



Non, ce module n'est pas non plus présent. Mais je note, je ne
connaissais pas.
Avatar
NoMas
Le 2010-05-31, Nicolas George écrivit :

NoMas wrote in message :
> Il me faut donc maintenant compiler ce module et l'ajouter à mon
> noyau je pense.

Non, il faut que tu comprennes pourquoi tu ne l'as pas.



Une installation fraiche d'une debian Lenny sur le VPS utilise le noyau
2.6.31.6.
Par contre, dans /lib/modules/, il n'y a après l'installation que les
modules "2.6.18-164.15.1.el5xen/", qui ne fonctionnent pas avec mon
noyau. Je l'ai signalé, ils m'ont alors proposé de télécharger une
archive contenant les modules du noyau 2.6.31.6.
Il en manque beaucoup concernant netfilter. D'ou mon besoin de compiler
le module xt_state.
Avatar
Philippe Naudin
On Tue, 1 Jun 2010 10:29:43 +0200
NoMas wrote:

Le 2010-05-31, Nicolas George écrivit :

> NoMas wrote in message :
> > Il me faut donc maintenant compiler ce module et l'ajouter à mon
> > noyau je pense.
>
> Non, il faut que tu comprennes pourquoi tu ne l'as pas.

Une installation fraiche d'une debian Lenny sur le VPS utilise le noyau
2.6.31.6.
Par contre, dans /lib/modules/, il n'y a après l'installation que les
modules "2.6.18-164.15.1.el5xen/", qui ne fonctionnent pas avec mon
noyau.



Là, tu es en train de tout mélanger. Il te faut être plus précis dans ta
description du problème :
- quel est l'OS du DOM0 (uname -a) ;
- quel est l'OS du DOMU ;
- quelle topologie tu as adoptée pour tes machines virtuelles ?

Note que tu n'as aucune chance de faire fonctionner des modules provenant
de CentOS avec un noyau Debian ... mais tu t'en était déjà aperçu.

Il serait bien que tu montres aussi ta configuration de grub, tant sur le
DOM0 que sur le DOMU, ainsi que ton fichier de configuration de la
machine virtuelle (celui avec « kernel = ... »).

--
Philippe
Avatar
NoMas
Le 2010-06-01, Philippe Naudin écrivit :

Là, tu es en train de tout mélanger. Il te faut être plus précis dans
ta description du problème :



C'est que je ne suis pas très clair il faut dire.

- quel est l'OS du DOM0 (uname -a) ;



Une debian lenny 5.0.4 avec un kernel 2.6.31.6.

- quel est l'OS du DOMU ;



Aucune idée, je ne gère pas le DOMU

- quelle topologie tu as adoptée pour tes machines virtuelles ?



Là aussi donc, je ne gère rien. J'ai juste un VPS, avec le choix d'une
distribution à installer, sans avoir aucunement la main sur
l'installation. J'arrive sur un système minimal, avec un SSH néanmoins.

Note que tu n'as aucune chance de faire fonctionner des modules
provenant de CentOS avec un noyau Debian ... mais tu t'en était déjà
aperçu.



Absolument, c'est la raison pour laquelle je veux compiler les modules
dont j'ai besoin pour le noyau que j'utilise par défaut sur la Debian
de la machine virtuelle.
Avatar
NoMas
Bonjour,

Ce problème est résolu, Santrex aillant fournit une archive contenant
tous les modules nécessaires. Un petit coup de depmod et ça
fonctionne.

Merci à ceux qui se sont penchés sur mon souci.