Passerelle IPTABLES

Salut
Alors voila j'ai un serveur que j'aimerai mettre en tant que passerrelle. J'ai une carte réseau(eth0) connecté à internet et une carte réseau(eth1) connecté au réseau local.
Alors voila j'aimerai que le réseau local puisse accéder à internet en passant pas le serveur qui fera office de passerelle.
Alors si vous pourriez m'aider a configurer mon serveur avec iptables ca serait sympa merci.
Configuration: Windows Vista
Internet Explorer 7.0

6 réponses

  1. Modérateur
    Salut

    tu passes par un routeur ou ton server et lié directement sur net?
    ton pc en local c'est un linux ou un windows?
    1. Ah oui mince, dans ma précipitation je n'ai pas dis l'esentiel, je suis sur Linux(debian exactement) et mon serveur est directement sur le net(il ne passe pas par un routeur).
      Voila.
      1. Oui c'est tout du debian je suis en stage, c'est pas moi qui décide lol(c'est pas grave ca me fait la main)^^
        1. Modérateur
          Tu n'as pas préciser si tu as un ip fix.
          Si c'est un IP dynamique il faut utiliser la cible MASQUERADE au lieu de SNAT

          Tu peux t'inspirer en utilisant ce cas.
                               web
                                 |
                              freebox
                                 |
                    routeur Netgear:10.0.0.254
                                 |
                              debian
                    (passerelle défaut: 10.0.0.254)
                          DNS1:212.27.32.xxx
                          DNS2:212.27.32.yyy
                     |                           |
           eth0:10.0.0.2/24 (wan)  eth1:192.168.1.1/24 (LAN)
                                             |
                                           WinXP
                                             |
                                      Lan:192.168.1.2 
                               (passerelle défaut: 192.168.1.1)
                                     DNS1:212.27.32.xxx
                                     DNS2:212.27.32.yyy

          Le firewall sur le serveur (donc win va sur net via debian) - à adapter dans ton cas
          #! /bin/sh
          #
          # Description: configuration de firewall netfilter/iptables
          #
          # Initialization de la table FILTER
          #
          iptables -F
          iptables -X
          iptables -P INPUT   DROP 
          iptables -P OUTPUT  DROP
          iptables -P FORWARD DROP # les 3 cmd presque la debranchement des cables
          # Initialization de la table NAT
          #
          iptables -t nat -F
          iptables -t nat -X
          iptables -t nat -P PREROUTING    ACCEPT
          iptables -t nat -P POSTROUTING   ACCEPT
          iptables -t nat -P OUTPUT        ACCEPT
          #
          # Initialisation de la table MANGLE
          #
          iptables -t mangle -F
          iptables -t mangle -X
          iptables -t mangle -P PREROUTING    ACCEPT
          iptables -t mangle -P INPUT         ACCEPT
          iptables -t mangle -P OUTPUT        ACCEPT
          iptables -t mangle -P FORWARD       ACCEPT
          iptables -t mangle -P POSTROUTING   ACCEPT
          # interface lo
          iptables -A INPUT -i lo -s '0.0.0.0/0' -d '0.0.0.0/0' -j ACCEPT
          iptables -A OUTPUT -o lo -s '0.0.0.0/0' -d '0.0.0.0/0' -j ACCEPT
          #                            table FILTER
          # chaine INPUT
          iptables -A INPUT -i eth0 -d 10.0.0.2 -m state --state ESTABLISHED,RELATED -j ACCEPT
          # chaine FORWARD
          iptables -A FORWARD -i eth0 -o eth1 -s 0.0.0.0/0 -d 192.168.1.2 -m state --state RELATED,ESTABLISHED -j ACCEPT
          iptables -A FORWARD -i eth1 -o eth0 -s 192.168.1.2 -d 10.0.0.0/0 -m state --state ! INVALID -j ACCEPT
          # chaine OUTPUT
          iptables -A OUTPUT -o eth0 -m state --state ! INVALID -j ACCEPT
          iptables -A OUTPUT -o eth1 -m state --state ! INVALID -j ACCEPT
          #                        table NAT
          iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.2 -j SNAT --to-source 10.0.0.2

          Configurer le forwarding(3 variantes - je préfére la 3ème) :
          1. echo 1 > /proc/sys/net/ipv4/ip_forward tu as 2 posibilités :
          2. écrire cette ligne dans /etc/init.d/rc.local
          3. ajouter dans le fichier /etc/sysctl.conf la ligne
          net.ipv4.ip_forward=1