Pages

cours réseaux informatique

touts sur les réseaux informatique.

Cours JAVA

les cours de java exemples exercices

RSS comment ça marche

RSS comment fonctionne

Affichage des articles dont le libellé est TP Iptables :. Afficher tous les articles
Affichage des articles dont le libellé est TP Iptables :. Afficher tous les articles

samedi 14 janvier 2012

TP:Iptables






Iptables :

Dans ce TP , nous allons utiliser IpTables, une solution complète de firewall sous linux (à partir du noyau 2.4).
1 - Lancement d’Iptables
Dans le cas ou les options iptables du kernel ont étés compilées en modules, il est nécessaire de charger ces modules avant de pouvoir utiliser iptables :
# modprobe ip_tables

      Opérations sur une seule chaîne et sur la table filtrer:

1.1.1.        Première règle :

·         Interdire tout paquet entrant :
#iptables -A INPUT -j DROP
·         Effacer la règle :
iptables -D INPUT 1

1.1.2.        Paramètre protocole :

·         Interdire le protocole ICMP :
iptables -A INPUT -p icmp -j DROP
·         Effacer la règle :
iptables -D INPUT 1

1.1.3.        Paramètre source :

·         Interdire le protocole ICMP provenant de localhost :
iptables -A INPUT -p icmp -s localhost -j DROP
·         Effacer la règle :
iptables -D INPUT 1

1.1.4.        chaîne OUTPUT paramètre destination :
·         Interdire tout paquet à destination de localhost :
iptables -A OUTPUT -d localhost -j DROP
·         Effacer la règle :
iptables -D OUTPUT 1

1.1.5.        paramètre inversion :

·         Interdire un paquet s' il ne provient pas de localhost :
iptables -A INPUT -s ! localhost -j DROP
·         Effacer la règle :
iptables -D INPUT 1

1.1.6.        paramètre interface d'entrée :

·         Interdire un paquet s' il provient de lo :
iptables -A INPUT -i lo -j DROP
·         Effacer la règle :
iptables -D INPUT 1

1.1.7.        paramètre interface de sortie :

·         Interdire tout paquet sortant par eth0 :
iptables -A OUTPUT -o eth0 -j DROP
·         Effacer la règle :
iptables -D OUTPUT 1


1.1.8.        paramètre destination port :

·         Interdire tout paquet à destination du port ftp :
iptables -A INPUT -p tcp --dport 21 -j DROP
·         Effacer la règle :
iptables -D INPUT 1

1.1.9.        paramètre source port :

·         Interdire tout paquet sortant par eth0 dont le numéro de port destination est inférieur à 1024 :
iptables -A OUTPUT -o eth0 -p tcp --sport :1023 -j DROP
iptables -A OUTPUT -o eth0 -p udp --sport :1023 -j DROP
·         Effacer la règle :
iptables -D OUTPUT 1

1.1.10.    paramètre flag TCP :

·         Interdire toute tentative d' initialisation de connexion TCP provenant de eth0 :
iptables -A INPUT -i eth0 -p tcp --syn --sport :1023 -j DROP
·         Effacer la règle :
iptables -D INPUT 1

1.1.11.    paramètre flag icmp :

·         Interdire tout paquet entrant correspondant à un ping :
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
·         Effacer la règle :
iptables -D INPUT 1

·         Interdire toute réponse à un ping :
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j DROP
·         Effacer la règle :
iptables -D OUTPUT 1

1.1.12.    paramètre extension:
                     2.1.12.1. extension mac :

·         Interdire tout paquet entrant par eth0 dont l' adresse mac n' est pas celle du voisin :
iptables -A INPUT -i eth0 -m mac --mac-source ! 00:50:FC:23:2D:D7 -j DROP
·         Effacer la règle :
iptables -D INPUT 1

                     2.1.12.2. extension limit :

·         Positionner la police par défaut à DROP pour la chaîne INPUT :
iptables -P INPUT DROP
·         Ecrire une règle qui laisse entrer 5 tentatives de connexion TCP puis qui n' en laisse passer plus que 2 par minute :

iptables -A INPUT -p tcp --syn -m limit --limit 2/minute --limit-burst 5 -j ACCEPT
·         Faire de même avec les pings :
iptables -A INPUT -p icmp --icmp-type ping -m limit --limit 2/minute --limit-burst 5 -j ACCEPT
·         combien de temps faudra t' il pour qu' on puisse à nouveau avoir 5 des ces paquets qui puissent passer à la suite ?
5 minutes

·         Effacer la règle :
iptables -D INPUT 1

1.1.13.    le suivi de connexion(ip_conntrack) :

·         Positionnez les règles par défaut à DROP pour les chaînes INPUT, OUTPUT, FORWARD :
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
·         Autoriser tout paquet relatif à une connexion déjà établi ou en rapport avec une connexion déjà établi en entrée

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

·         Interdire tout paquet relatif à une connexion de type INVALID :

iptables -A INPUT -m state --state INVALID -j DROP
·         Autoriser tout paquet créant une nouvelle connexion en sortie à destination du port 80 :
iptables -A OUTPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
·         Que faut il modifier ici pour que l' on puisse naviguer sur le net ?
iptables -A OUTPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -p udp --dport 53 -m state --state NEW -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT



         Opérations sur plusieurs chaînes et sur la table filter:

ü  création d'un nouvelle chaîne :

·         créer une nouvelle chaîne qui log le paquet en ajoutant le préfixe [INPUT DROP] et qui le drop renvoyer sur cette nouvelle chaîne tout paquet engendrant une nouvelle connexion en entrée :

iptables -N LOG_DROP
iptables -A LOG_DROP -j LOG --log-prefix «[INPUT DROP]»
iptables -A LOG_DROP -j DROP

Partager

Twitter Delicious Facebook Digg Stumbleupon Favorites More