[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Cherche aide sur Firewall Linux Iptable



J'essaie de configurer mon firewall sur une machine Linux (debian 3.0.30).
J'essaie donc de faire un script, avec iptables.
Voici les config de mon ordi:
Modem sur ppp0
Partage du connection sur eth0, j'aimerais faire du nat, l'adresse reseau
est 192.168.112.1.
Les autres ordi qui iront sur internet, via le réseau, sont 192.168.112.111
à 192.168.112.115.

Des fois, j'arrive à surfer sur la machine qui a la connec, mais des que
j'active le nat, je n'y ai plus acces.
De plus, je ne vois pas ce que je loggue. C'est bien dans /var/log/syslog ?

Voici le script que j'ai fait, si vous avez le temps d'y jeter un coup
d'oeil merci





#!/bin/sh

# Activation du forwarding
# C'est pas pour faire joli, on aura des règles
# de forward et il faut bien que les paquets
# traversent la machine, donc on met ce fichier à 1
echo 1 > /proc/sys/net/ipv4/ip_forward


# Nous vidons les chaînes :
iptables -F
# Nous supprimons d'éventuelles chaînes personnelles :
iptables -X

# Nous les faisons pointer par défaut sur DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP


# Nous faisons de même avec toutes les autres tables,
# à savoir "nat" et "mangle", mais en les faisant pointer
# par défaut sur ACCEPT. Ca ne pose pas de problèmes
# puisque tout est bloqué au niveau "filter"
#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
#iptables -t mangle -F
#iptables -t mangle -X
#iptables -t mangle -P PREROUTING ACCEPT
#iptables -t mangle -P INPUT ACCEPT
#iptables -t mangle -P FORWARD ACCEPT
#iptables -t mangle -P POSTROUTING ACCEPT


# Nous considérons que la machine elle même est sûre
# et que les processus locaux peuvent communiquer entre eux
# via l'interface locale :
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

# Nous considérons que notre réseau local est
# également sûr (ce qui n'est pas forcément vrai, d'ailleurs).
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A OUTPUT -o eth0 -j ACCEPT

#Pour accepter le traffic web (on veut surfer!)  et mail:
iptables -A INPUT -i ppp0 --protocol tcp --source-port 80 #-m state --state
ESTABLISHED
iptables -A OUTPUT -o ppp0 --protocol tcp --destination-port 80 #-m
state --state NEW,ESTABLISHED
iptables -A INPUT -i ppp0 -p tcp --sport 80 -m state --state ESTABLISHED -j
ACCEPT
iptables -A INPUT -i ppp0 -p tcp --sport 25 -m state --state ESTABLISHED -j
ACCEPT
iptables -A INPUT -i ppp0 -p tcp --sport 110 -m state --state ESTABLISHED -j
ACCEPT
iptables -A OUTPUT -o ppp0 -p tcp --dport 80 -m state --state
NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o ppp0 -p tcp --dport 25 -m state --state
NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o ppp0 -p tcp --dport 110 -m state --state
NEW,ESTABLISHED -j ACCEPT

# Translation d'adresses pour tout ce qui traverse la passerelle
# en sortant par ppp0
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE

#Nous pourrions ici restreindre le NAT à une plage d'IPs du réseau local :
#iptables -t nat -A POSTROUTING -s 192.168.112.0/255.255.255.0 -o ppp0 -j
MASQUERADE

# Toutes les connexions qui sortent du LAN vers le Net
# sont acceptées
iptables -A FORWARD -i eth0 -o ppp0 -m state --state
NEW,ESTABLISHED,RELATED -j ACCEPT
# Nous autions aussi bien pu écrire :
# iptables -A FORWARD -i eth0 -o ppp0 -m state --state ! INVALID -j ACCEPT

# Seules les connexions déjà établies ou en relation avec
# des connexions établies sont acceptées venant du Net vers le LAN
iptables -A FORWARD -i ppp0 -o eth0 -m state --state ESTABLISHED,RELATED -j
ACCEPT



# Je veux pas de spoofing
# This is the best method: turn on Source Address Verification and get
# spoof protection on all current and future interfaces.
#if [ -e /proc/sys/net/ipv4/conf/all/rp_filter ]; then

#  echo -n "Setting up IP spoofing protection..."
#  for f in /proc/sys/net/ipv4/conf/*/rp_filter; do

#      echo 1 > $f

#  done
#  echo "done."
#else
#  echo PROBLEMS SETTING UP IP SPOOFING PROTECTION.  BE WORRIED.

#  echo "CONTROL-D will exit from this shell and continue system startup."

#  echo

# Start a single user shell on the console
#  /sbin/sulogin $CONSOLE
#fi

# pas de icmp
#echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all
#echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts


# fichier log
#Log de tous ce qui est dropper par les regles
iptables -N LOG_ACCEPT_IN
iptables -A LOG_ACCEPT_IN -j LOG --log-prefix 'Fw OK_IN : '
iptables -N LOG_ACCEPT_OUT
iptables -A LOG_ACCEPT_OUT -j LOG --log-prefix 'Fw OK_OUT : '

#Log de tous ce qui est dropper par les regles par defaut
iptables -N LOG_DROP_IN
iptables -A LOG_DROP_IN -j LOG --log-prefix 'Fw DROP_IN : '
iptables -N LOG_DROP_OUT
iptables -A LOG_DROP_OUT -j LOG --log-prefix 'Fw DROP_OUT : '

# Message de fin
echo " [termine]"



Reply to: