IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau Discussion :

Ports forwarding avec iptables


Sujet :

Réseau

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2002
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Ports forwarding avec iptables
    Salut tout le monde. Là j'en ai ma claque comme on dit. Ça doit faire un bon deux heures que je gosse après ce problème là. Voici mon problème et svp n'essayez pas de comprendre la raison pourquoi je veux faire cela, mais dites moi plutôt pourquoi ça ne fonctionne pas. Merci.

    J'utilise RedHat 8.0 et tout ce que je veux faire c'est tout simplement de forwardé toutes les requêtes au port, disons 5000, qui arrive à ma machine sur un autre ordinateur à un autre port. Je me suis dit que ce serait vraiment simple avec iptables et aussi j'ai trouvé plein d'exemples sur le web, mais aucun ne fonctionne. Svp, aidez-moi quelqu'un!!!

    Voici ce que j'ai tenté jusqu'à présent :

    J'ai changé l'option suivante dans le fichier etc/sysctl.conf :
    # Controls IP packet forwarding
    net.ipv4.ip_forward = 1 <---- était à 0

    adresse ip de ma machine = 192.168.2.2
    adresse ip de l'autre machine = 192.168.2.3

    commande iptables que je tape pour ma rule :
    iptables -t nat -A PREROUTING -d 192.168.2.2 -p tcp --dport 5000 -j DNAT --to-dest 192.168.2.9:80

    Donc, vous comprenez que tout ce que je veux faire c'est de rediriger toute requête qui arrive sur mon ordi(192.168.2.2) au port 5000 sur un autre ordi(192.168.2.3) sur le port 80. Pourtant, ça ne fonctionne pas. Ce que je fais pour tester c'est que je tapes dans un browser l'url suivante : 192.168.2.2:5000 . Ce qui devrait théoriquement m'apporter sur le site web de la machine 192.168.2.3, mais ça ne fonctionne pas du tout. Mon browser tourne en rond indéfiniement puis au bout d'un certain me dis que la page ne peut être affiché. C'est comme si je DENY ces requêtes au lieu de les accepter. Pourtant quand je fais un iptables -L le résultat est le suivant :
    Chain INPUT (policy ACCEPT)
    Chain FORWARD (policy ACCEPT)
    Chain OUTPUT (policy ACCEPT)

    Aussi, je ne crois pas que ce soit une question de DENY parce que je DENY toute requêtes ça prend genre 2 secondes et mon browser me dit que la page ne peut être trouvé comparativement au 20 secondes actuel.
    Donc, il ne devrait y avoir aucune raison que ça bloque. Je ne sais plus quoi faire. Aidez-moi quelqu'un, donnez-moi une solution alternative pour forwardé un port autre que les iptables... N'Importe quoi !!!! Merci.

  2. #2
    Membre éprouvé
    Avatar de matrix788
    Profil pro
    Inscrit en
    Juin 2002
    Messages
    740
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 740
    Points : 1 056
    Points
    1 056
    Billets dans le blog
    2
    Par défaut
    slt, ne t'énerve pas aussi vite, c pas ainsi que tu vas résoudre ton pb ;=]]

    ce que je vois à première vue sur ta commande, c que l'@ip de destination ne correspond pas du tout à 192.168.2.3:80 ...
    est-ce une erreur de frappe, ou est-ce vraiment ta commande ? vois déja ce coté ...

    Sinon, il peut aussi s'agir de systeme mal installé : Linux sait-il que tu utilise iptable ... pour les préliminaires, et comparer ta commande, u site de plus ne vas pas te tuer :
    http://lea-linux.org/reseau/iptables.php3

    @ + ...

  3. #3
    Futur Membre du Club
    Inscrit en
    Mai 2002
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Merci pour ta réponse l'ami. Je pouvais sembler énervé comme ça, mais c'est plus que j'étais fatigué de gosser après ce problème-là. Pour ce qui est de l'adresse ip : oui c'est une erreur de frappe (désolé!). Merci pour le lien je m'en vais voir ça de ce pas. Je ne crois pas que les iptables soient mal installés parce que quand je fais des DENY sur un port spécifiques par exemples et bien ça fonctionne à merveille. Ça semble véritablement juste quand je fais un forward de port que ça ne fonctionne pas. Est-ce que ça fonctionne sur ta machine toi faire un forward de port avec iptables?

  4. #4
    Membre expérimenté
    Avatar de nyal
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    622
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2002
    Messages : 622
    Points : 1 428
    Points
    1 428
    Par défaut
    Citation Envoyé par Iced Earth
    Merci pour ta réponse l'ami. Je pouvais sembler énervé comme ça, mais c'est plus que j'étais fatigué de gosser après ce problème-là. Pour ce qui est de l'adresse ip : oui c'est une erreur de frappe (désolé!). Merci pour le lien je m'en vais voir ça de ce pas. Je ne crois pas que les iptables soient mal installés parce que quand je fais des DENY sur un port spécifiques par exemples et bien ça fonctionne à merveille. Ça semble véritablement juste quand je fais un forward de port que ça ne fonctionne pas. Est-ce que ça fonctionne sur ta machine toi faire un forward de port avec iptables?
    DENY ?????
    oula mais tu as une vieille version de iptables. maintenant c est DROP. donc upgrade ton kernel et iptables vite fait

  5. #5
    Futur Membre du Club
    Inscrit en
    Mai 2002
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    J'ai RedHat 8.0 et ma version de kernel est la 2.4.18. Je ne sais pas c'est quoi la dernière version, mais déjà en partant que ce soit la version 8.0 de RedHat le kernel devrait pas être si vieux que ça. Je suis vraiment pas un expert en iptables (ou dans quoi que ce soit tant qu'a y être), mais dans les tutoriels que j'ai lu l'utilisation du DENY et du DROP n'avait pas la même fonction dans le sens ou DENY renvoie un message à l'utilisateur comme quoi le service est interdit tandis que la commande DROP ignore tout simplement les requêtes et ne renvoie aucune explication à l'utilisateur.

    Matrix 788 : Le lien que tu m'as donné est vraiment génial. Je crois que tu as raison : il y a plein de choses qui se doivent d'être spécifier dans la compilation du kernel pour assurer la bonne marche des iptables. Théoriquement j'imagine que si RedHat a inclus les iptables le Kernel devrait être à la base configurer comme il faut, mais je me suis fait imprimer les pages du lien que tu m'as donnée et je vais les faire de A à Z et on va voir ce que ça va donner. Est-ce qu'il y moyen quelqu'un de voir la configuration existante du kernel plutôt que d'avoir à tout recompiler pour être certain que les bonnes options sont activées?

  6. #6
    Membre expérimenté
    Avatar de nyal
    Profil pro
    Inscrit en
    Septembre 2002
    Messages
    622
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2002
    Messages : 622
    Points : 1 428
    Points
    1 428
    Par défaut
    tape cette commande pour voir les mdoules activé du noyau
    voila.

  7. #7
    Futur Membre du Club
    Inscrit en
    Mai 2002
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Excusez-moi, mais en me relisant je vois que je me suis complétement trompé dans mes explications. Voici les bonnes :

    REYAHOOOOOO!!! J'ai finalement trouvé comment faire pour régler mon problème!! Tout d'abord merci à vous tous qui m'avez répondu pour votre aide. Pour ceux que ça intéresse voici ce qu'il fallait faire :

    1) Tout d'abord taper la commande suivante qui fait en sorte que les requêtes arrivant sur le port 5000 à l'adresse IP 192.168.2.2 soient forwardé à l'adresse IP 192.168.2.3 sur le port 80.

    iptables -t nat -A PREROUTING -d 192.168.2.2 -p tcp --dport 5000 -j DNAT --to-dest 192.168.2.3:80



    2) Maintenant c'est la partie logique, mais qu'il fallait penser. Il faut taper la commande suivante qui va changer l'adresse IP du destinataire adresse_IP_de_la_machine_d'ou_provenait_la_requête_originale) du paquet forwardé pour celle de la machine avec les iptables (192.168.2.2). Tout ça est très logique puisque sinon la réponse à la requête forwardé va revenir directement à la machine de laquelle la requête originale a été émise et que cela n'est pas correct puisqu'il faut que tout le traffique transite par l'ordinateur avec les iptables qui va se charger de faire suivre convenablement toutes les requêtes.

    iptables -t nat -A POSTROUTING -d 192.168.2.3 -p tcp --dport 80 -j SNAT --to 192.168.2.2

    Désolé pour les explications erronnées !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 21/02/2012, 17h14
  2. Iptable-Ouvrir un port entrant avec snort_inline
    Par Djef-69 dans le forum Sécurité
    Réponses: 1
    Dernier message: 07/10/2007, 10h57
  3. Iptables port forwarding
    Par blacksnake dans le forum Sécurité
    Réponses: 2
    Dernier message: 10/03/2007, 01h09
  4. Ouvrir le port NTP avec Iptables
    Par biglittlekiss dans le forum Sécurité
    Réponses: 2
    Dernier message: 07/01/2007, 16h40
  5. Mapping de port avec iptables
    Par segphault dans le forum Sécurité
    Réponses: 1
    Dernier message: 12/01/2006, 01h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo