Security-X

Forum Security-X => Internet & Réseau => Discussion démarrée par: XmichouX le février 14, 2014, 11:59:06

Titre: Question IPTables (Debian)
Posté par: XmichouX le février 14, 2014, 11:59:06
Yo !

J'ai une question concernant IPTables.
Dans le cadre du boulot, j'ai ajouté quelques règles sur un iptables (os debian).

J'ai vu qu'il figurait déjà la règle suivante :

Chain INPUT (policy DROP 3854 packets, 476K bytes)
 pkts    bytes        target         prot    opt     in        out         source               destination
419K   60M         ACCEPT        all      --        lo        any        anywhere           anywhere

Concernant cette ligne, elle n'autorise pas tous les flux entrants bien-sûr, ceci à cause du "local" spécifié pour l'interface "in".

Dans le man iptables, j'ai trouvé ça :

Citer
-i, --in-interface [!] [nom]

Nom de l'interface qui reçoit les paquets (seulement pour les paquets passant par les chaînes INPUT, FORWARD et PREROUTING). Lorsqu'un «!» est utilisé avant le nom d'interface, la sélection est inversée. Si le nom de l'interface se termine par un «+», il désigne toutes les interfaces commençant par ce nom. Si cette option est omise, toutes les interfaces réseau sont désignées.

-o, --out-interface [!] [nom]

Nom de l'interface qui envoie les paquets (seulement pour les paquets passant par les chaînes FORWARD, OUTPUT et POSTROUTING). Lorsqu'un «!» est utilisé avant le nom d'interface, la sélection est inversée. Si le nom de l'interface se termine par un «+», il désigne toutes les interfaces commençant par ce nom. Si cette option est omise, toutes les interface réseau sont désignées.

Mais j'aimerais bien comprendre exactement ce que veut dire ma règle, ce qu'actuellement je n'ai pas réellement compris;

Merci !



Titre: Re : Question IPTables (Debian)
Posté par: igor51 le février 14, 2014, 12:20:36
Salut

Ta règle ressemble à ça ?

Citer
igor51@debian-lenovo:~% sudo iptables -A INPUT --in-interface lo -j ACCEPT

Ce qui donne  :

Citer
igor51@debian-lenovo:~% sudo iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere 

Si je suis bien réveillé, ta règle autorise tous les flux entrant sur ton interface local, quelque soit la source .
Titre: Re : Question IPTables (Debian)
Posté par: XmichouX le février 14, 2014, 15:30:58
Salut,

oui c'est ça : -A INPUT -i lo -j ACCEPT

Concrètement, ça veut dire quoi ça ? (flux entrant sur mon interface "locale")
Sachant que ça n'autorise pas tous les flux entrants.

Merci  :)
Titre: Re : Question IPTables (Debian)
Posté par: igor51 le février 14, 2014, 15:53:36
Citer
Sachant que ça n'autorise pas tous les flux entrants.
Comment ça ? Juste avec la règle que tu as mise, la réponse est "j'autorise tous les flux entrant sur cette interface".

Cela signifique, que si tu as un process qui écoute sur ton interface "lo", alors les connexions seront acceptées. Je cherche un exemple parlant, mais je n'ai que Stunnel sous la main et je ne sais pas si tu connais...

Titre: Re : Question IPTables (Debian)
Posté par: XmichouX le février 14, 2014, 16:37:32
En fait, ce que je ne comprends pas bien est la notion de "local".

Si mon IP est par exemple 10.30.2.2. Si un autre serveur (10.30.2.3 par exemple) tente de se connecter à moi en tcp, ça ne fonctionne pas (normal à vrai dire vu que c'est l'interface locale qui est spécifiée).

En fait je ne vois pas trop à quoi la règle peut servir. ça sert pour des processus qui font du réseau localement ?

genre un processus qui se connecterait via le "réseau" à un autre processus (autre port) sur le même PC?

Thx
Titre: Re : Question IPTables (Debian)
Posté par: igor51 le février 14, 2014, 18:18:54
Ca sert pour les processus qui écoute sur la boucle local.

J'ai trouvé un exemple concret (vu que tu ne sembles pas connaitre Stunnell)

Citer
igor51@debian-lenovo:~% sudo netstat -tpna
Connexions Internet actives (serveurs et établies)
Proto Recv-Q Send-Q Adresse locale          Adresse distante        Etat        PID/Program name
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      3212/mysqld 

Par exemple, j'ai une base de donnée Mysql qui n'écoute qu'en local. Si tu bloques toutes les connexions par défaut pour les autoriser une par une dans ton iptables, tu dois mettre ta règle si tu veux pouvoir t'y connecter, sinon iptables empechera la connexion sur à la base.
Titre: Re : Question IPTables (Debian) [resolved]
Posté par: XmichouX le février 14, 2014, 20:52:29
D'ac, merci =)