Précédent   Forum des professionnels en informatique > Systèmes > Linux > Réseau
Réseau Vos questions autour des réseaux et télécoms sous Linux
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/07/2011, 11h00   #1
Invité régulier
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 35
Points : 9
Points : 9
Par défaut Pont et iptables

Bonjour,

j'ai créer un pont pour relier eth0 (192.6.1.30) et eth1 (192.6.1.31), où circulent des flux UDPde eth0 vers eth1 et inversement


Pour créer le pont, j'ai juste fait, et les données transitent bien :
Code :
1
2
3
4
5
 
sudo brctl addbr br0
sudo brctl addif br0 eth0
sudo brctl addif br0 eth1
ifconfig br0 up
Mais quand j'utilise mes regles iptables pour faire du filtrage ou du NAT, mes regles n'ont aucune influence sauf celle de la chaine FORWARD dans la table filter

Je suppose que cela vient du pont (mon code) qui est incompatible avec iptables
albertopisto est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 05/07/2011, 18h28   #2
Membre Expert
 
Étudiant
Inscription : août 2004
Messages : 500
Détails du profil
Informations personnelles :
Âge : 22

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2004
Messages : 500
Points : 1 017
Points : 1 017
Envoyer un message via MSN à Senaku-seishin
Lors d'une redirection d'ip (comme un bridge), la chaine complète est :
Code :
PREROUTING -> FORWARD -> POSTROUTING
Le filtrage s'effectue dans la chaine FORWARD.
Le SNAT dans PREROUTING.
Le DNAT dans POSTROUTING

Quels sont les règles que tu as utilisé ?
__________________
Avoir un regard neutre sur notre vie dénuée de sens, c'est la voir tel un ignorant
Senaku-seishin est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 06/07/2011, 08h38   #3
Invité régulier
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 35
Points : 9
Points : 9
dans la table FILTER, j'ai utilisé FORWARD INPUT et OUTPUT et seul FORWARD marche

dans la table NAT, j'ai utilisé PREROUTING POSTROUTING et OUTPUT mais rien ne marche


j'ai 3 interfaces avec le bridge : eth0 br0 eth1

dans mon cas eth0 et eth1 ont une @IPV4 (192.6.1.30 et 192.6.1.31) mais pas le br0

j'ai vu dans des doc que il fallait enlever les @ de eth0 eth1 pour en mettre à br0
albertopisto est déconnecté   Envoyer un message privé Réponse avec citation 02
Vieux 06/07/2011, 12h09   #4
Membre Expert
 
Étudiant
Inscription : août 2004
Messages : 500
Détails du profil
Informations personnelles :
Âge : 22

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2004
Messages : 500
Points : 1 017
Points : 1 017
Envoyer un message via MSN à Senaku-seishin
Citation:
dans la table FILTER, j'ai utilisé FORWARD INPUT et OUTPUT et seul FORWARD marche
Les chaines INPUT et OUTPUT sont pour les paquets à destination de sois-même. Donc normal que ces chaines ne fonctionne pas, lors d'une redirection ip.
Il faut utilisé FORWARD.

Je me répète, quel sont les règles utilisé?

Exemple de par-feu dans un bridge : http://www.debian.org/doc/manuals/se...dge-fw.en.html
__________________
Avoir un regard neutre sur notre vie dénuée de sens, c'est la voir tel un ignorant
Senaku-seishin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2011, 15h06   #5
Invité régulier
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 35
Points : 9
Points : 9
Bonjour,

Sinon à part le pont quel est le meilleur moyen pour faire :



J'ai ma machine, sur eth2 je reçois des paquets dont la destination est l'@IP de la machine A (on regarde avec wireshark)

sur ma machine, je relie les machines A et B sur eth0 et eth1, je veux que A et B reçoivent le paquet dont la destination est l'@IP de A

quel est le moyen pont, routage?
albertopisto est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/07/2011, 17h23   #6
Membre Expert
 
Étudiant
Inscription : août 2004
Messages : 500
Détails du profil
Informations personnelles :
Âge : 22

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2004
Messages : 500
Points : 1 017
Points : 1 017
Envoyer un message via MSN à Senaku-seishin
Code :
1
2
3
4
5
6
7
8
9
10
11
12
   TEE
       The  TEE  target will clone a packet and redirect this clone to another machine on the local network
       segment. In other words, the nexthop must be the target, or you will have to configure  the  nexthop
       to forward it further if so desired.
 
       --gateway ipaddr
              Send  the  cloned  packet to the host reachable at the given IP address.  Use of 0.0.0.0 (for
              IPv4 packets) or :: (IPv6) is invalid.
 
       To forward all incoming traffic on eth0 to an Network Layer logging box:
 
       -t mangle -A PREROUTING -i eth0 -j TEE --gateway 2001:db8::1
Ou

http://www.snort.org/users/roesch/Si...monlogger.html

Citation:
Sinon à part le pont quel est le meilleur moyen pour faire
[...]
Bridge != Duplication paquet
Bridge == Interconnexion entre plusieurs interface réseau
__________________
Avoir un regard neutre sur notre vie dénuée de sens, c'est la voir tel un ignorant
Senaku-seishin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/07/2011, 10h42   #7
Invité régulier
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 35
Points : 9
Points : 9
Merci de m'avoir répondu, j'ai installé le logiciel que tu m'as indiqué


je vais mieux expliqer

A l'origine, sur eth0 j'avais des flux de la machine A et B

mais comme j'ai créé un pont pour relier eth0 à ath1 mes commandes iptables ne marchent plus


mais je peux installer une 3eme carte réseau et j'aurai
Code :
1
2
3
A(192.6.1.3)------------------eth0
                                        MOI eth2---------------------automate (192.6.1.59)
B(192.6.1.15)-----------------eth1

Mais pour que l'automate renvoie la requête à A et B (dont la destination est A) je devrais créer deux pont reliant :A et automate puis B et automate
y a-til d'autre moyen à part le pont pour relier des interfaces?

pour dupliquer une trame et l'envoyer à B, cela suppose t-til que l'adresse de destination sera changé?


pour dupliquer et envoyer à B je devrais faire :

Code :
       -t mangle -A PREROUTING -i eth0 -j TEE --gateway 192.6.1.15
quels sont les autres moyens

désolé j'ai pas mal de questions car je suis débutant, et que c'est assez important
albertopisto est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2011, 05h36   #8
Membre Expert
 
Étudiant
Inscription : août 2004
Messages : 500
Détails du profil
Informations personnelles :
Âge : 22

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2004
Messages : 500
Points : 1 017
Points : 1 017
Envoyer un message via MSN à Senaku-seishin
Citation:
mais comme j'ai créé un pont pour relier eth0 à ath1 mes commandes iptables ne marchent plus
Si tu me fournie pas un exemple de règle utilisé, je ne peux aider.

Citation:
y a-til d'autre moyen à part le pont pour relier des interfaces?
C'est possible avec des règles Iptables. Son intérêt est limité : Plus complexe, moins souple, ...

Le bridge reste la meilleur solution.

Citation:
pour dupliquer et envoyer à B je devrais faire :
Code :
-t mangle -A PREROUTING -i eth2 -j TEE --gateway 192.6.1.15
Citation:
quels sont les autres moyens
  • Sniffer le réseau à partir de «MOI»
  • Adapter l'application pour du multicast
  • D'autres solutions que je n'ai en tête
__________________
Avoir un regard neutre sur notre vie dénuée de sens, c'est la voir tel un ignorant
Senaku-seishin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2011, 08h59   #9
Invité régulier
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 35
Points : 9
Points : 9
Merci de m'avoir répondu

Ma config actuelle :

A et B ---------------------eth0 MOI eth1 -------------------------automate

un bridge br0 relie eth0 et eth1

les regles iptables avec le FORWARD marchent exemple (je vérifie si cela marche en utilisant wireshark apres) :

Code :
1
2
iptables -A FORWARD -br0 -s 192.6.1.3 -j DROP
iptables -A FORWARD -br0 -s 192.6.1.3 -j DROP
INPUT et OUTPUT ne marche pas
Code :
iptables -A INPUT -i eth0 -s 192.6.1.3 -j DROP
Pour réaliser la duplication et l'envoyer à B, je pensais
Code :
iptables -t nat -A PREROUTING -d 192.6.1.3 -j DNAT --to-destination 192.6.1.3-192.6.1.15
sans succès

quand je fais
Code :
-t mangle -A PREROUTING -i eth1 -j TEE --gateway 192.6.1.15
j'ai sur le terminal : iptables: No chain/target/match by that name.

j'ai installé daemonlogguer mais je ne vois pas les commandes pour dupliquer

mon code du bridge est sur mon premier post

voila merci pour ta disponiblité
albertopisto est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2011, 11h55   #10
Membre Expert
 
Étudiant
Inscription : août 2004
Messages : 500
Détails du profil
Informations personnelles :
Âge : 22

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2004
Messages : 500
Points : 1 017
Points : 1 017
Envoyer un message via MSN à Senaku-seishin
Le forward sont les packets à destination de A, B et automate.
Input et output sont les packets à destination de «MOI».

Avec :
Code :
iptables -A INPUT -i eth0 -s 192.6.1.3 -j DROP
Un ping fonctionne t'il depuis 192.6.1.3 vers «MOI» ?

Code :
iptables -t nat -A PREROUTING -d 192.6.1.3 -j DNAT --to-destination 192.6.1.3-192.6.1.15
Ceci ne fonctionnera pas. Netfilter (=Iptables) avec cette règle va envoyer les packets à destination de 192.168.1.3, vers l'adresse la moins utilisé de la plage 192.6.1.3-192.6.1.15.
Pour faire simple c'est du load balancing, pour les (très) pauvres.
Pour se que tu souhaite faire, il faut réalisé du port mirroring.

Citation:
j'ai sur le terminal : iptables: No chain/target/match by that name.
Installe les extensions de xtables. Plusieurs solutions s'offre à toi :
  • Selon ta distribution, un paquet est disponible. Sous Debian (/!\ Attention testing) : http://packages.debian.org/wheezy/iptables
  • Compilation des extensions
  • Ces extensions ont était ajouté au kernel récemment. Donc utiliser un kernel récent. Debian : linux-image-2.6 (wheezy)
__________________
Avoir un regard neutre sur notre vie dénuée de sens, c'est la voir tel un ignorant
Senaku-seishin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2011, 14h56   #11
Invité régulier
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 35
Points : 9
Points : 9
Merci de la réponse !

en fait je ne controle pas les machines A et B, je suis juste un intermediare qui doit rediriger et dupliquer les paquets, toutes les regles sont realisées sur MOI

La regle suivante n'a aucune influence aussi
Code :
iptables -t nat -A PREROUTING -d 192.6.1.3 -j DNAT --to-destination 192.6.1.15
Si j'ai bien compris la table Nat ne marche pas car les paquets ne sont pas à destination de MOI, cette regne ne marcherait que si on ll'execute sur 192.6.1.3,



sur wireshark je vois les réponses aux requetes de 192.6.1.3

paquet : @source 192.6.1.59 @dest 192.6.1.3

je veux en plus obtenir ce même paquet avec @source 192.6.1.59 @dest 192.6.1.15


le port mirroring on l'utilise comment?
albertopisto est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/07/2011, 23h50   #12
Membre Expert
 
Étudiant
Inscription : août 2004
Messages : 500
Détails du profil
Informations personnelles :
Âge : 22

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : août 2004
Messages : 500
Points : 1 017
Points : 1 017
Envoyer un message via MSN à Senaku-seishin
Citation:
Si j'ai bien compris la table Nat ne marche pas car les paquets ne sont pas à destination de MOI, cette regne ne marcherait que si on ll'execute sur 192.6.1.3,
Ne confond pas chaine et table.

La CHAINE INPUT et OUPUT pour «MOI»
La CHAINE FORWARD les autres passant par «MOI»

Code :
iptables -t nat -A PREROUTING -d 192.6.1.3 -j DNAT --to-destination 192.6.1.15
On pourrait traduire cette règle en : Tout les packets à destination de 192.6.1.3, aurons pour nouveau destinataire 192.6.1.15.
Citation:
Le port mirroring on l'utilise comment?
Installe les extensions de xtables. Plusieurs solutions s'offre à toi :
  • Selon ta distribution, un paquet est disponible. Sous Debian (/!\ Attention testing) : http://packages.debian.org/wheezy/iptables
  • Compilation des extensions
  • Ces extensions ont était ajouté au kernel récemment. Donc utiliser un kernel récent. Debian : linux-image-2.6 (wheezy)

Code :
iptables -t mangle -A PREROUTING -i eth1 -j TEE --gateway 192.6.1.15
__________________
Avoir un regard neutre sur notre vie dénuée de sens, c'est la voir tel un ignorant
Senaku-seishin est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/07/2011, 11h31   #13
Invité régulier
 
Inscription : février 2011
Messages : 35
Détails du profil
Informations forums :
Inscription : février 2011
Messages : 35
Points : 9
Points : 9
Bonjour en installant xtables la commande
Code :
iptables -t nat -A PREROUTING -d 192.6.1.3 -j DNAT --to-destination 192.6.1.15
fonctionne, c'est à dire que le message est cloné, le clone est identique au message sauf qu'il change l'adresse mac source et de destination dans la trame

avant : mac source automate
mac destination A

apres : mac source MOI
mac destination B

on peut voir le clone sur B avec wireshark

mais je pense qu'il ne va pas le traiter car l'adresse de destination est toujours 192.6.1.3

peut-on modifier le clone pour qu'il mette maintenant la bonne adresse IP et le bon port de B

Merci
albertopisto est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h28.


 
 
 
 
Partenaires

Hébergement Web