I. Préliminaires. Étude d'un pare-feu. But du TP. 1. Câblage et définition du réseau

Documents pareils
Mise en place d'un Réseau Privé Virtuel

Formation Iptables : Correction TP

TP Linux : Firewall. Conditions de réalisation : travail en binôme. Fonctionnement du parefeu Netfilter. I Qu est ce qu'un firewall?

FILTRAGE de PAQUETS NetFilter

Sécurité des réseaux Firewalls

Sécurité GNU/Linux. Iptables : passerelle

Administration Réseaux

Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A. TP réseau firewall

Licence 3 Systèmes et Réseaux II. Chapitre V : Filtrage

TP SECU NAT ARS IRT ( CORRECTION )

TP 3 Réseaux : Subnetting IP et Firewall

pare - feu généralités et iptables

Iptables. Table of Contents

Linux Firewalling - IPTABLES

Administration réseau Firewall

Sécurité et Firewall

Netfilter & Iptables. Théorie Firewall. Autoriser le trafic entrant d'une connexion déjà établie. Permettre le trafic entrant sur un port spécifique

EPREUVE PRATIQUE DES TECHNIQUES INFORMATIQUES ACTIVITE N 1. Thème de l activité : Configuration d un firewall

TP4 : Firewall IPTABLES

Alexis Lechervy Université de Caen. M1 Informatique. Réseaux. Filtrage. Bureau S3-203

Les firewalls libres : netfilter, IP Filter et Packet Filter

avec Netfilter et GNU/Linux

Ingénieurs 2000 Informatique et Réseaux 3ème année. Les Firewalls. Masquelier Mottier Pronzato 1/23 Nouvelles Technologies Réseaux

Master 1 ère année. UE Réseaux Avancés I. Corrections décembre Durée : 2h Documents autorisés

Exemples de commandes avec iptables.

Réseaux. Moyens de sécurisation. Plan. Evolutions topologiques des réseaux locaux

ATELIER NETFILTER : LE FIREWALL LINUX EN ACTION

ASR4 Réseaux Département Informatique, IUT Bordeaux 1. DHCP Prénom : Nom : Groupe :

Architecture réseau et filtrage des flux

Architectures sécurisées

MISE EN PLACE DU FIREWALL SHOREWALL

Configuration réseau Basique

INSTALLATION DEBIAN 7 (NETINSTALL) SUR VM

2. MAQUETTAGE DES SOLUTIONS CONSTRUCTIVES. 2.2 Architecture fonctionnelle d un système communicant.

Environnements informatiques

Réalisation d un portail captif d accès authentifié à Internet

laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007

Le filtrage de niveau IP

Conférence Starinux Introduction à IPTABLES

Procédure d utilisation et de paramétrage (filtrage) avec IPFIRE

SQUID Configuration et administration d un proxy

Sécuriser son réseau. Sécuriser son réseau Philippe Weill (IPSL/LATMOS) Frédéric Bongat (SSI/GOUV/FR)

I. Adresse IP et nom DNS

acpro SEN TR firewall IPTABLES

Serveur DHCP et Relais DHCP (sous Linux)

Fonctionnement de Iptables. Exercices sécurité. Exercice 1

Figure 1a. Réseau intranet avec pare feu et NAT.

TER Réseau : Routeur Linux 2 Responsable : Anthony Busson

But de cette présentation. Proxy filtrant avec Squid et SquidGuard. Serveur proxy. Serveur proxy. Hainaut P

Introduction. Conclusion. Sommaire. 1. Installation de votre routeur Coyote Linux Configuration requise et installation du matériel.

IP & Co. 1. Service DHCP. L'objectif de ce TP est de voir l'ensemble des services élémentaires mis en oeuvre dans les réseaux IP.

Réseau : Interconnexion de réseaux, routage et application de règles de filtrage.

Réseau - VirtualBox. Sommaire

Proxy et reverse proxy. Serveurs mandataires et relais inverses

ROUTAGE. Répondez aux questions suivantes : (A chaque fois pour XP et pour Debian)

LABO GNU LINUX: Auteur : Magali CALO, Julien LEBRUN, Kenneth BAAMI, Farid LOUBANN, Jabran ABOUMEROUANE, SALANDRE Grady

Les systèmes pare-feu (firewall)

CONFIGURATION FIREWALL

Master d'informatique 1ère année. Réseaux et protocoles. Architecture : les bases

CASE-LINUX CRÉATION DMZ

TCP/IP, NAT/PAT et Firewall

MEMO-LINUX.COM BLOG SUR GNU/LINUX, LE LIBRE ET L'OPEN-SOURCE.

Administration de Parc Informatique TP02 : Utilisation du logiciel Marionnet

Présentation du modèle OSI(Open Systems Interconnection)

1. Warm up Activity: Single Node

Documentation technique OpenVPN

Devoir Surveillé de Sécurité des Réseaux

Filtrage IP MacOS X, Windows NT/2000/XP et Unix

Firewall d'infrastructure centralisé. et load-balancing. Adrien Urban Responsable R&D

Intérêt du NAT (Network Address Translation) Administration Réseau Niveau routage. Exemple d Intranet. Principe NAT

Travaux pratiques Configuration d un pare-feu sous Windows XP

Sécurité d IPv6. Sécurité d IPv6. Stéphane Bortzmeyer AFNIC bortzmeyer@nic.fr. Stéphane Bortzmeyer AFNIC bortzmeyer@nic.fr

DHCPD v3 Installation et configuration

Debian Lenny - Virtualisation avec Libvirt/KVM Debian GNU/Linux

Rappel: Le routage dans Internet. Contraintes. Environnement et contraintes. La décision dans IP du routage: - Table de routage:

TR2 : Technologies de l'internet. Chapitre VI. NAT statique et dynamique Overloading (PAT) Overlapping, port Forwarding Serveur Proxy, DMZ

MI03 TP. Objectifs du TP 1ère séance. 2ème séance. Construction d'un système linux embarqué complet

Surveillance et corrélation de flux réseaux via sondes applicatives embarquées

Annexes. OpenVPN. Installation

Capture, Filtrage et Analyse de trames ETHERNET avec le logiciel Wireshark. Etape 1 : Lancement des machines virtuelles VMWARE et de Wireshark

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau.

Redondance de service

PROXY SQUID-SQARD. procédure

PRODUCTION ASSOCIEE. Le réseau de la M2L est organisé VLANs et comporte des commutateurs de niveau 2 et des routeurs.

NuFW Howto. Eric Leblond Vincent Deffontaines Jean Baptiste Favre

TP2 - Conguration réseau et commandes utiles. 1 Généralités. 2 Conguration de la machine. 2.1 Commande hostname

FACILITER LES COMMUNICATIONS. Le gestionnaire de réseau VPN global de Saima Sistemas

Tour d'horizon Bureau client Daemon's Aller plus loin

SYSTEME DE GESTION DES ENERGIES EWTS EMBEDDED WIRELESS TELEMETRY SYSTEM

Table des matières Table des matières... 1 Introduction... 2 I La virtualisation... 3 II Etudes... 14

Routage Statique. Protocoles de Routage et Concepts. Version Cisco Systems, Inc. All rights reserved. Cisco Public 1

PRODUCTION ASSOCIEE. Le réseau de la M2L est organisé VLANs et comporte des commutateurs de niveau 2 et des routeurs.

TAGREROUT Seyf Allah TMRIM

TP DHCP et DNS. Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A

Internet Protocol. «La couche IP du réseau Internet»

Mise en place des TPs Réseau en machines virtuelles. Utilisation de VmPlayer

M2-RADIS Rezo TP13 : VPN

Transcription:

Concepteur original : P. Mathieu But du TP Vous disposez pour cette manipulation de 4 ordinateurs. Les passerelles auront le rôle de parefeu par rapport à l'extérieur. Les clients représentent le réseau intérieur à protéger. Client gauche Passerelle gauche 1 Passerelle droite 2 Client droit Illustration 1 Plan de la maquette On a donc 2 étapes principales dans le TP : mise en place du logiciel de pare-feu, puis mise en place des règles d'accès. I. Préliminaires 1. Câblage et définition du réseau On va utiliser des machines virtuelles manipulations. Reproduire le schéma ci-dessous. Debian car il faut être super utilisateur pour faire ces Sur les passerelles, vous devez créer une deuxième interface réseau en utilisant la seconde carte physique dans Virtualbox. Pour voir si la carte est bien câblée, il faut faire un tail -f /var/log/syslog sur la machine physique. Il faut relier les machines des bords aux passerelles avec des câbles croisés. Pour la liaison passerelle-passerelle, utilisez le switch de la salle, c'est-àdire la prise IUT. Adressage : pour éviter des problèmes, stoppez le démon network-manager qui risque de changer vos configurations : /etc/init.d/network-manager stop Il est possible que cela "efface vos interfaces". Dans ce cas, faites un ip link set eth0 up réapparaitre. et ip link set eth1 up pour les faire Utiliser des adresses en 192.168.*.* pour les réseaux d'extrémité. Respectez le choix des adresses ci-dessous!!! Rappel : pour assigner une adresse

ip addr add 192.168.0.4/24 dev eth0 (.1) [192.168.1] (.254) (.1xy) [10.4.110.] (.1uv) (.254) [192.168.2] (.1) eth1 net1 eth0 ➀ eth1 netc eth1 ➁ eth0 net2 eth1 Important : adapter avec des adresses en 105 au lieu de 110 si vous êtes en salles 405! Afin que les passerelles puissent transmettre les paquets de chaque côté, il faut autoriser la recopie sur les interfaces en passant la commande : echo 1 > /proc/sys/net/ipv4/ip_forward Sur les clients il faut définir une route par défaut et sur les passerelles, une route vers le réseau distant. On pourrait le faire en ligne de commmande via : - sur le client ip route add default via 192.168.x.254 - Sur la passerelle de gauche ➀ ip route add 192.168.2.0/24 via 10.4.110.1uv - Sur la passerelle de droite ➁ ip route add 192.168.1.0/24 via 10.4.110.1uv Important : si on veut retirer une route, c'est la même commmande, mais avec del au lieu de add!! Nous allons faire une configuration permanente en modifiant le fichier /etc/network/interfaces en les préfixant par up. Un exemple pour un client : auto eth1 iface eth0 inet static address 192.168.1.1 netmask 255.255.255.0 gateway 192.168.1.254 Un exemple pour une passerelle : auto eth1 iface eth1 inet dhcp up ip route add 192.168.2.0/24 via 10.4.110.1uv down ip route del 192.168.2.0/24 via 10.4.110.1uv Page 2 / 7

Pour appliquer la configuration, faites un ifdown puis ifup qui sont des scripts qui lisent le fichier /etc/network/interfaces Afin d'éviter que le noyau refuse les relations avec des machines qui n'ont pas d'entrées DNS, appliquer la commande : echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter Tester la communication entre les différentes machines avec la méthode suivante : (i) lancez un ping sur une des machines client vers l'autre client (ii) faites des tcpdump sur les interfaces successives, de proche en proche entre la source et la destination. Ex : tcpdump -i eth0 -n 'icmp' (-n pour éviter les résolutions DNS). II. Mise en place du pare-feu La mise en œuvre du pare-feu va être progressive mais est souvent difficile à tester car en cas d'erreur, «ça ne passe plus» et il est difficile de voir pourquoi. Pour pouvoir passer facilement de l'état protégé au mode tout ouvert, nous allons utiliser des scripts qui mémoriseront toutes les commandes. Tout se passe ici sur les passerelles. 1. Organisation des opérations Tout d'abord récupérer depuis la page Web du cours : http://iutsa.unice.fr/~urvoy/ext/cours/m3104/index.html les 2 scripts «metfw.sh» et l'autre «otefw.sh» Vérifiez que les interfaces intérieure/extérieure soient correctes et modififer si nécessaire. Nous allons ajouter des commandes dans le fichier «metfw.sh» pour construire notre parefeu. Attention l'ordre des commandes iptables a son importance. 2. Présentation rapide de netfilter On paramètre le noyau au moyen de la commande iptables qui utilise pour cela des critères (matching), des règles (suite de paramètres), des chaînes (ensemble de règles) des cibles (le détail dans man iptables), le tout dans plusieurs tables. Chaque table regroupe plusieurs fonctionnalités : filter : filtre les paquets entrants, sortants ou transmis nat : avant ou après les étapes de routage modifie les adresses et les ports d'origine ou de destination mangle : à tous les niveaux, modifie n importe quel champ des en-têtes IP. Dessin 1 : Architecture Netfilter Travaux pratiques - TRC8 - DUT R&T - Info-Réseaux Page 3 / 7

Prerouting Décision routage Forward Décision routage Postrouting Input Application Locale Output En pratique, cela veut dire que chacune de ces tables contient des chaînes prédéfinies : filter : Input, Output et Forward nat : Prerouting, Postrouting et Output mangle : toutes les chaînes. Input, Output, Forward, Prerouting, Postrouting Important : Input est la chaine qui traite les données destinées aux services qui tournent sur la machine Output est la chaine qui traite les données générées par les services qui tournent sur la machine Forward est la chaine qui traite les données qui transitent sur la machine lorqu'elle joue le rôle du routeur. La commande iptables ajoute donc des règles à une chaîne prédéfinie (ou définie par l'utilisateur). Ces règles sont constituées de critères de sélection, suivis d'un «-j cible» où cible est une action à effectuer : DROP pour jeter le paquet, REJECT pour le rejeter en prévenant la machine d'origine (RST), ACCEPT pour continuer le processus tout en finissant la scrutation de la chaîne, LOG pour conserver une trace (n'est pas final, la chaîne continue d'être scrutée), SNAT nat sur la source, DNAT nat sur la destination, MASQUARADE nat avec suivi de connexion, MARK marque sur le paquet 3. Filtrage élémentaire a) Filtrage local Appliquer le fichier de commande «metfw.sh»./metfw.sh Tout le réseau doit être verrouillé. ping 127.0.0.1 ne devrait pas fonctionner. ssh root@localhost non plus, pas plus que ssh votrenom@134.59.136.6 On va libérer les accès locaux : ajoutez dans metfw.sh les commandes suivantes au bon endroit dnas le fichier (là où il y a écrit "# Il faut remplir ici ") et on exécute le fichier. $ipt -A INPUT -i lo -j ACCEPT $ipt -A OUTPUT -o lo -j ACCEPT Page 4 / 7

Pour comprendre par quelle chaine les paquets entrants/sortant ou en transit son traitées, il suffit de demander à iptables qui fournit des statistiques en temps réel avec la commande iptables -L -v. Pour suivre en continue, on combine avec watch : watch iptables -L -v Faites tourner ce watch dans un autre terminal pendant que vous vérifiez si tout fonctionne. b) Filtrage intérieur On note $intif l'interface intérieure et $extif l'extérieure. On autorise le réseau interne à se connecter à la passerelle $ipt -A INPUT -i $intif -j ACCEPT $ipt -A OUTPUT -o $intif -j ACCEPT Est-ce une bonne idée? Doit-on le faire en dehors des tests? Pourquoi? On pourra commenter ces 2 lignes pour ne plus pouvoir accéder à la passerelle mais uniquement la traverser. C'est bien la chaîne FORWARD qui nous intéresse. Sur la passerelle, peut-on contacter kheops ou l'autre passerelle? (attention de bien fonctionner en même temps dans la partie droite et gauche du réseau). Pour être sûr que ce sont bien nos nouvelles règles qui ont modifié le fonctionnement, refaire les tests après avoir appliqué otefw.sh. c) Filtrage extérieur On doit cependant pouvoir accéder au réseau extérieur malgré ou plutôt grâce à la passerelle. Il faut autoriser la traversée de la passerelle mais sous conditions. Actuellement la passerelle ne peut accéder à l'extérieur et en supposant qu'elle ait des réponses celles-ci ne peuvent rentrer. Il existe dans le noyau une notion de connexion et donc de nouvelle connexion (NEW), de connexion établie (ESTABLISHED) ou associée (RELATED). Cela permet par exemple de laisser entrer un paquet correspondant à une connexion déjà établie par le client local (c'est ce que fait tout firewall ou votre box à la maison). Nous allons donc autoriser les paquets à sortir mais la réponse ne pourra rentrer que si elle est établie ou associée. Les nouvelles connexions ne pourront pas être ouvertes à partir de l'extérieur. L'état de la connexion est testé par -m state --state $ipt -A FORWARD -i $intif -o $extif -j ACCEPT Et l'on autorise le paquet en réponse à rentrer $ipt -A FORWARD -i $extif -o $intif -m state --state ESTABLISHED,RELATED -j ACCEPT L'état des connexions peut être visualisé dans pseudo système de fichier /proc/net/ip_conntrack Travaux pratiques - TRC8 - DUT R&T - Info-Réseaux Page 5 / 7

d) Filtrage ICMP Dans le fichier metfw.sh il y a un certain nombre de valeurs positionnées dans /proc. Certaines concernent ICMP, et empêchent le système de répondre. C'est la meilleure méthode car la passerelle n'est pas sensée avoir d'existence visible par rapport à l'extérieur et doit-être transparente pour l'intérieur. Pour des raisons de test il peut être utile de laisser la passerelle répondre à certaines requêtes ICMP en particulier pour l'intérieur. Attention cela peut-être une source d'information sur le système et de deni de service. On autorise l'icmp uniquement pour indiquer que la passerelle est active, et on en limite le nombre de requêtes par seconde de l'extérieur. echo "0" > /proc/sys/net/ipv4/icmp_echo_ignore_all $ipt -A INPUT -i $extif -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT $ipt -A INPUT -p icmp --icmp-type echo-request -j DROP $ipt -A OUTPUT -o $extif -m state --state RELATED,ESTABLISHED -j ACCEPT Il n'y a donc pas de limite sur l'interface intérieure Tester la nouvelle possibilité du ping de l'intérieur et de l'extérieur en mode «flood» de l'extérieur ping -f 10.4.110.1uv de l'intérieur ping -f 192.168.z.254 III. Network Address Translation (NAT) 1. Un peu de mascarade Actuellement si vous avez appliqué metfw.sh modifié, on peut accéder à l'autre passerelle à partir du client mais par contre on ne peut accéder à kheops. En effet, même si les paquets sortent sur le réseau 10.4.110, il n'y a pas de réponse du fait que le pare-feu de l'iut les jettent catégoriquement puisqu'ils viennent d'une adresse privée (192.168). Une solution est de masquer l'adresse privée du client en lui substituant l'adresse de la passerelle (10.4.110.?). Il peut s'agir de NAT ou de Mascarade. a) Carnaval Le plus simple est la mascarade : tout le trafic sortant est modifié, aux adresses d'origines sont substituées l'adresse de la passerelle. Aucune configuration individuelle des machines du réseau interne n'est nécessaire. On masque toutes les adresses du sous-réseau qui sortent sur l'interface extérieure. Page 6 / 7

$ipt -t nat -A POSTROUTING -s 192.168.z.0/255.255.255.0 -o $extif -j MASQUERADE La connexion à kheops devrait maintenant fonctionner à partir du client. b) Redirection de port On veut autoriser l'accès de l'extérieur, vers le client mais uniquement pour ssh. D'autre part, je rappelle que du fait de la mascarade le numéro IP du client vu de l'extérieur est le numéro de la passerelle. Nous allons donc contacter la passerelle en ssh et c'est le client qui doit répondre. Dans la réalité c'est une machine bastion qui est dédiée à ce genre de service. On redirige le ssh de l'entrée vers la machine cliente sur le même port $ipt -t nat -A PREROUTING -p tcp -dport 22 -d $FW_ext_IP -j DNAT -to-destination $Client_IP:22 On autorise le nouveau FORWARD $ipt -A FORWARD -p tcp --dport 22 -d $Client_IP -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT Les tests originaires de l'extérieur peuvent être exécutés d'une machine quelconque de la salle. Afin d'augmenter la sécurité du réseau intérieur, ajouter ce qu'il faut pour que l'adresse MAC du bastion soit vérifiée. imprimé le 12 janv. 2016 Travaux pratiques - TRC8 - DUT R&T - Info-Réseaux Page 7 / 7