Télécharger la présentation
1
Firewalling et NAT sous LINUX
Bouabid Amine Formation TRANSFER SEPT 2002
2
Types de firewall Filtres de paquet: Filtres de contenu:
La décision de filtrage basé uniquement sur les valeurs des champs de l’entête IP (adresse source/destination, port source/destination). Exemple : les filtres de linux. Filtres de contenu: la décision de filtrage est basé sur le contenu des informations reçus (le nom d’un site web, le contenu d’une site web, les commandes smtp etc..). Exemple : ISA server de microsoft Filtre hybride: La décision est basé et sur l’entête du paquet IP ,et sur le contenu. Exemple : CheckPoint, Cisco PIX.
3
Le filtrage des paquets
Le filtrage des paquets consiste à capturer les paquets en entrée, analyser juste l’entête de chaque paquet ensuite décider du sort de se paquet. Le filtre peut décider de: Éliminer le paquet (DROP, REJECT). Remettre le paquet à la machine local (ACCEPT). Router le paquet vers une interface de sortie (FORWARD).
4
Pourquoi Filtrer Contrôle: Sécurité:
Contrôler le trafic en destination ou qui est originaire de certaines parties du réseau. Sécurité: Lorsque la machine est l’interface entre le réseau local et Internet, le filtrage permet de sélectionner le trafic entrant et sortant en se basant sur les services (numéro de port) et l’origine du traffic (adresse IP).
5
Le filtrage sous Linux Le filtrage sous linux est intégré au niveau du noyau sous forme de modules. Les différents programmes de filtrage de linux: IPFWADM: à partir du noyau 1.1.x IPCHAINS: à partir du noyau 2.2.x IPTABLES: à partir du noyau 2.4.x
6
Comment les paquet traversent les filtres
Les paquets traversent 3 point principal qu’on appelle chaîne de filtrage: INPUT (entrée) OUTPUT (sortie) FORWARD (réexpédition). Processus local input output Décision de routage Décision de routage Forward entrée sortie
7
Les chaînes de filtrage
Chaque point dans le schéma correspond à une « chaîne de filtrage » Une chaîne de filtrage est une suite de « règles » de filtrage. Une règle analyse l’entête du paquet et décide s’il doit être remis au processus local, ou s’il doit routé, ou éliminé. Une règle particulière dite règle par défaut, est consulté si aucune règle ne correspond au paquet capturé.
8
Traitement des paquets reçus
Lorsqu’un paquet est reçu, le noyau « regarde » dans l’adresse destination pour déterminer s’il est destinée à la machine local ou une autre machine. Dans le premier cas il sera remis à la chaîne Input. S’il n’est pas filtré les processus l’attendant vont le recevoir. Dans le deuxième cas : si la machine est autorisée à faire du routage il sera remis a la chaîne Forward, sinon le paquet sera éliminé. Au niveau de la chaîne Forward si le paquet est accepté il sera remis a la chaîne output. Enfin un processus local qui veut émettre des paquets, les paquets seront remis a la chaîne output.
9
Format d’une règle iptables -[ADC] Chain rule-specification action [options] Iptables est le nom de la commande. -A : ajouter une règle. -D : enlever une règle. -C : remplacer un règle. Chain = input|output|forward Spécification de la règle: adresse et port source/destination type de protocole (ip, udp, tcp, icmp) et interface. Action = ACCEPT|REJECT|DENY etc..
10
Spécifications du filtrage
Spécification des adresses source et destination: L’adresse source avec l’option: -s adresse/prefix L’adresse destination avec l’option : -d adresse/prefix. Par exemple: iptables -A INPUT -s 0/0 -j DROP 0/0 désigne toutes les adresses. Iptable –A output –s /24 –d /8 –j ACCEPT Accepte le trafic qui provient des adresses / vers les adresses /
11
Spécifications du filtrage
2- spécification du numéro de port: Avec les options –s et –d il est possible de spécifier le numéro de port apres l’adresse et son masque Exemple iptables –A –s /24 0/0 80 –j ACCEPT Accepte toutes les connexions http a partir du réseau /24. 3- Spécification de l’inversion Des options comme –s et –d peuvent avoir leur argument précédé par ! Ce qui signifie prendre l’inverse de la valeur spécifié Exemple Iptables –A –s ! /24 0/0 –j REJECT Toutes les adresses différentes de /24 sont rejetés par le noyau.
12
Spécifications du filtrage
4- Spécification du protocole: L’option –p <protocole> permet de définir le protocole donnée: tcp, udp, ip, ou icmp . Exemple: Iptable –A input –p tcp –s 0/0 -j ACCEPT Iptable –A output –p icmp –s 0/0 –j REJECT 5-Spécification d’une interface: Les options –i ou –o pour interface input ou interface en output. Iptable –A input –o eth0 -s 0/0 –j DENY Iptable –A forward –i ppp0 –d 0/0 –j ACCEPT
13
Le NAT Le NAT pour Network Address Translation.
Permet de faire une correspondance entre une adresse IP publique et une adresse privé et inversement. Deux types NAT : statique et dynamique. Le NAT statique permet de faire correspondre une adresse IP publique à une seule adresse privé. Le NAT dynamique permet de faire correspondre une seule adresse publique à plusieurs adresses privé.
14
Fonctionnement du NAT Le NAT permet de cacher l’existence d’une machine ou d’un ensemble de machines qui ont des adresses privés. Le NAT statique permet d’utiliser une seule adresse publique par adresse privé. Ça sert a protéger un serveur derrière un Firewall. On ne laisse passer que le trafic autorisé. Une requête émise par un serveur NATé passe par le proxy, qui va changer l’adresse source avec l’adresse publique spécifié pour le serveur. Lorsque la réponse arrive de l’extérieur, le proxy effectue le travail inverse et réécrit l’adresse de destination.
15
Le NAT dynamique Le NAT dynamique permet d’utiliser une seule adresse IP publique pour tout le réseau local. Le serveur utilise les numéro de port pour faire la translation Chaque requête est identifié par une adresse IP et un numéro de port.
16
Le NAT dynamique: La table du NAT
Adresse privé Num Port destination Adresse publique source Num port du NAT Adresse destination 80 1012 25 3022 23 20 5005 1234 21 6500 110 5000
17
Iptables et NAT PREROUTING FORWARD POSTROUTING INPUT OUTPUT PROCESSUS
LOCAL
18
Iptables et NAT Le Masquerading est un cas particulier du NAT.
Le changement des adresses se fait a la sortie de la machine local, d’ou l’utilisation de la chaîne POSTROUTING. Syntaxe : iptables -t nat -A POSTROUTING -o <interface> -j MASQUERADE. Exemple : iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.