logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 13-06-2007 16:30:43

Dolmen
Membre
Lieu : Loin, très loin vers l'Ouest
Distrib. : Lenny Desktop / Laptop
Noyau : 2.6.25-2
(G)UI : Gnome 2.22.3
Inscription : 09-06-2007

Firewall et règles iptables

Bonjour à Tous,

J'ai commencé ce sujet sur le Chan, mais je pense que pour des question de compréhension et de partage, je continue sur le forum.
Voilà donc mes règles iptables qui gèrent mon firewall:

#! /bin/sh

# mise a zero iptables
iptables -F
iptables -A INPUT -i lo -j ACCEPT
iptables -t nat -F

# ROUTAGES
# Active la redirection d'IP! Important... Permet de rediriger tout paquet sur le LAN
echo 1 > /proc/sys/net/ipv4/ip_forward

# REGLES INPUT/OUTPUT/FORWARD
# Les connexions entrantes sont bloquées par défaut
iptables -P INPUT DROP
# Le protocole ICMP (i.e. le "ping") est accepté
iptables -A INPUT -p icmp -j ACCEPT
# Les connexions sortantes sont bloquées par défaut
iptables -P OUTPUT DROP
# Les connexions de redirection sont bloquées par défaut
iptables -P FORWARD DROP
# Pas de filtrage sur l'interface de "loopback"
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
# Les packets entrants relatifs à des connexions déjà établies ou pré-établies sont acceptés
iptables -A INPUT -i ppp0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Les connexions sortantes relatifs à des connexions vers Internet (ppp0) sont acceptées
iptables -A OUTPUT -o ppp0 -j ACCEPT

# MASQUERADE
#  dans la table du NAT (-t nat) on ajoute une règle (-A) après le routage (POSTROUTING)
#  pour tous les paquets qui sortent par eth0 (-o ppp0) qui stipule de
#  camoufler la connexion (-j MASQUERADE)
iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE


Mes questions sont :
1. Suis-je bien protégé en sachant que j'ouvre au fur et à mesure ce dont j'ai besoin.
2. Comment expliquer qu'avec ces règles mon DHCP affecte des IP à mes postes clients...sachant que par défault tout est bloqué.
3. Si vous pensez à des améliotations, je suis preneur smile

Merci.
@++

Hors ligne

#2 15-06-2007 11:30:16

Melodie
Modérateur
Lieu : Pyrénées
Distrib. : Bento Openbox
(G)UI : Openbox
Inscription : 28-05-2007
Site Web

Re : Firewall et règles iptables

Regarde les indications de Skunnyk dans ce fil, ça me semble bien.

le blog d'une newbie :: Linuxvillage :: Bentovillage


À propos de l'OS dominant ::> “Il est plus facile de berner les gens que de leur faire admettre qu'ils ont été bernés” (trad d'une citation approximative de Mark Twain)

Hors ligne

#3 16-08-2007 13:34:53

bloodi
Membre
Lieu : Tours
Inscription : 16-08-2007
Site Web

Re : Firewall et règles iptables

cobex4 a écrit :

Salut,

mais on sait bloquer le ping via quelque règle, de plus on sais restreindre et bloquer certain type de scan de nmap.


T'aurai un peu plus d'infos a ce sujet ?

Hors ligne

#4 11-11-2007 19:21:04

danichco
Membre
Inscription : 02-11-2007

Re : Firewall et règles iptables

Si ça intéresse quelqu'un, voici un essai que j'avais tenté en local sur un serveur et qui a fonctionné :

#!/bin/sh -norc

LAN_INTERFACE=eth0;
WAN_INTERFACE=eth0;

LAN_IP=`/sbin/ifconfig | grep $LAN_INTERFACE -A 1 | tail -1 | sed "s/^[: a-z]*\([.0-9]*\).*/\1/g"`; #Retourne l'IP de l'interface
LAN_NETWORK=`echo $LAN_IP | sed -r -e 's/([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)[0-9]{1,3}/\10\/24/'`;
LAN_BROADCAST=`echo $LAN_IP | sed -r -e 's/([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)[0-9]{1,3}/\1255/'`;

WAN_IP=`/sbin/ifconfig | grep $WAN_INTERFACE -A 1 | tail -1 | sed "s/^[: a-z]*\([.0-9]*\).*/\1/g"`; #Retourne l'IP de l'interface
WAN_NETWORK=0.0.0.0/0;

echo "+ Desactivation du NAT"
echo 0 > /proc/sys/net/ipv4/ip_forward

echo "+ Nettoyage des regles"
iptables -t filter -F
iptables -t filter -X

iptables -t nat -F
iptables -t nat -X

iptables -t mangle -F
iptables -t mangle -X

echo "+ Fermeture du parefeu"
iptables -t filter -P INPUT DROP
iptables -t filter -P FORWARD DROP
iptables -t filter -P OUTPUT DROP

echo "+ Initialisation de la NAT"
iptables -t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT

echo "+ Initialisation de mangle"
iptables -t mangle -P PREROUTING ACCEPT
iptables -t mangle -P POSTROUTING ACCEPT
iptables -t mangle -P OUTPUT ACCEPT
iptables -t mangle -P INPUT ACCEPT
iptables -t mangle -P FORWARD ACCEPT

echo "+ Regles du localhost"
iptables -t filter -A OUTPUT -o lo -p all -j ACCEPT
iptables -t filter -A INPUT -i lo -p all -j ACCEPT

echo "+ Regles du LAN"
iptables -t filter -A OUTPUT -o $LAN_INTERFACE -s $LAN_IP -d $LAN_NETWORK -p all -j ACCEPT
iptables -t filter -A INPUT  -i $LAN_INTERFACE -s $LAN_NETWORK -d $LAN_IP -p all -j ACCEPT

# Connexions firewall <-> broadcast réseau
iptables -t filter -A OUTPUT -o $LAN_INTERFACE -s $LAN_IP -d $LAN_BROADCAST -p all -j ACCEPT
iptables -t filter -A INPUT  -i $LAN_INTERFACE -s $LAN_BROADCAST -d $LAN_IP -p all -j ACCEPT

# Chargement des modules de suivi de connexion
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_conntrack_irc

echo "+ Regles du WAN"
iptables -t filter -A OUTPUT -o $WAN_INTERFACE -s $WAN_IP -d $WAN_NETWORK -p all -m state --state ! INVALID -j ACCEPT
iptables -t filter -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -p all -m state --state RELATED,ESTABLISHED -j ACCEPT

echo "|- Ouverture SSH"
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 22 -j ACCEPT

echo "|- Ouverture DNS"
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 53 -j ACCEPT
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 53 -j ACCEPT

echo "|- Ouverture FTP"
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 20 -j ACCEPT
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 20 -j ACCEPT

echo "|- Ouverture FTP"
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 21 -j ACCEPT
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 21 -j ACCEPT

echo "|- Ouverture HTTPS"
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 443 -j ACCEPT
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 443 -j ACCEPT

echo "|- Ouverture MySQL"
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 3306 -j ACCEPT
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 3306 -j ACCEPT

echo "|- Ouverture Ping"
iptables -A INPUT -i $WAN_INTERFACE -d $WAN_IP -p icmp --icmp-type echo-request -m limit --limit 4/s -j ACCEPT
iptables -A OUTPUT -o $WAN_INTERFACE -s $WAN_IP -p icmp --icmp-type echo-reply -m limit --limit 4/s -j ACCEPT

#echo "|- Ouverture SMTP"
#iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 25 -j ACCEPT
#iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 25 -j ACCEPT

#echo "|- Ouverture POP3"
#iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 110 -j ACCEPT
#iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 110 -j ACCEPT

#echo "|- Ouverture IMAP"
#iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 143 -j ACCEPT
#iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 143 -j ACCEPT

#echo "|- Ouverture IMAPS"
#iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 993 -j ACCEPT
#iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 993 -j ACCEPT

echo "|- Ouverture HTTP"
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p TCP --dport 80 -j ACCEPT
iptables -A INPUT -i $WAN_INTERFACE -s $WAN_NETWORK -d $WAN_IP -m state --state NEW -p UDP --dport 80 -j ACCEPT

# Chargement des modules de NAT
modprobe iptable_nat
modprobe ip_nat_ftp
modprobe ip_nat_irc

echo "+ Autorise l'IP masquerading de $LAN_NETWORK -> $WAN_NETWORK"
iptables -t filter -A FORWARD -i $LAN_INTERFACE -o $WAN_INTERFACE -s $LAN_NETWORK -d $WAN_NETWORK -p all -m state --state ! INVALID -j ACCEPT
iptables -t filter -A FORWARD -i $WAN_INTERFACE -o $LAN_INTERFACE -s $WAN_NETWORK -d $LAN_NETWORK -p all -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -t nat -A POSTROUTING -o $WAN_INTERFACE -s $LAN_NETWORK -d $WAN_NETWORK -p all -j MASQUERADE

echo 1 > /proc/sys/net/ipv4/ip_forward

Hors ligne

Pied de page des forums