1 / 30

Firewall sous Linux

Firewall sous Linux. Netfilter / iptables. Introduction. Le sous système de traitement de paquets réseau linux s’appelle Netfilter La commande employée pour le configurer est Iptables. Intérêts. Filtrage de paquets Traduction,Translation d’adresse réseau Modification de paquets

andren
Télécharger la présentation

Firewall sous Linux

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Firewall sous Linux Netfilter / iptables

  2. Introduction • Le sous système de traitement de paquets réseau linux s’appelle Netfilter • La commande employée pour le configurer est Iptables

  3. Intérêts • Filtrage de paquets • Traduction,Translation d’adresse réseau • Modification de paquets • Les commandes iptables opèrent au niveau de la couche osi 3 (couche réseau)

  4. Exemple de commande • #iptables –t filter –A INPUT –i eth1 -j DROP • -t filter = table filter • -A INPUT = ajoute au « point d’entrée »Input • -i eth1 = interface (carte réseau)eth1 • -j DROP = -j (jump) que fait-on du paquet DROP (elimine) En clair : on interdit tout entrée sur eth1

  5. Les points d’entrées • Pré-routage PREROUTING • Entrée INPUT • Transfert FORWARD • Post-routage POSTROUTING • Sortie OUTPUT

  6. Flux des paquets • Points d’entrées du NAT

  7. Flux des paquets • Points d’entrées pour le filtrage

  8. Flux des paquets • Points d’entrées pour l’amputation (mangle)

  9. Les points d’entrées • FORWARD (transfert) • Permet le traitement des paquets qui arrivent vers une passerelle, arrivant vers l’une des interfaces et ressortant immédiatement par une autre.

  10. Les points d’entrées • INPUT (entrée) • Permet le traitement des paquets immédiatement avant qu’ils ne soient délivrés au processus local.

  11. Les points d’entrées • OUPUT (sortie) • Permet le traitement des paquets immédiatement après leur génération par un processus local.

  12. Les points d’entrées • Postrouting (post-routage) • Permet le traitement des paquets immédiatement juste avant qu’ils ne quittent l’interface réseau.

  13. Les points d’entrées • Prerouting (pré-routage) • Permet le traitement des paquets immédiatement après leur traitement par l’interface réseau.(vérification de leur somme de contrôle et suppression des paquets non autorisés en raison de l’activation du mode promiscuous de l’interface réseau)

  14. Les Tables • Iptables intègre trois tables par défaut • NATUtilisée en conjonction avec le suivi de connexion pour rediriger les connexions pour la traduction d’adresses réseau. Utilise les points d’entrée(chaînes) Output, Postrouting et prerouting

  15. Les Tables • FilterUtilisée pour configurer les politiques de sécurité relatives au trafic autorisé à entrer, sortir ou transiter par le PC • Iptables utilisera cette table par défaut si aucune autre n’est explicitement désignée. Utilise les points d’entrée(chaînes) Forward, Input et Output.

  16. Les Tables • mangleUtilisée pour modifier les paquets comme la suppression de certaines option IP. Utilise les points d’entrée(chaînes) Forward,Input,Output, Postrouting et prerouting

  17. Actions possibles sur les paquets • Ces actions également appelés cibles • ACCEPT Autoriser le paquet à passer à l’étape suivante du traitement.

  18. Actions possibles sur les paquets • Ces actions également appelés cibles • DROP Arrêter complètement le traitement du paquet. Ne pas appliquer les autres règles, chaînes ou tables.

  19. Actions possibles sur les paquets • Ces actions également appelés cibles • DROP Arrêter complètement le traitement du paquet. Ne pas appliquer les autres règles, chaînes ou tables. Reject (rejeter) fournira un retour à l’émetteur

  20. Flux des paquets • Ordre suivant lequel les paquets sont présentés aux tables Lors du forwarding Nat Prerouting Filter Forward Nat Postrouting Le paquet que vous voulez filtrer en « forward » n’at-il pas était modifié en NAT lors de son entrée (prerouting) ?

  21. Flux des paquets • Ordre suivant lequel les paquets sont présentés aux tables Lors d’une entréevers un processus localInput Nat Prerouting Filter input

  22. Flux des paquets • Ordre suivant lequel les paquets sont présentés aux tables Lors d’une sortie du processus localOuput Nat Output Filter Output Nat Postrouting

  23. Flux des paquets • Ordre suivant lequel les paquets sont présentés aux tables Lors d’un transit d’un processus local vers un autre processus local Nat Output Filter Output Filter Input

  24. Source nat et Masquerade • Le SNAT est utilisé pour partager une connection Internet entre plusieurs ordinateurs. • Le poste disposant de la connection va modifier l’adresse source des paquets sortant en la remplaçant par l’IP publique fixe de la passerelle. • Lorsque le serveur répond il envoie ses paquets à la passerelle. Celle-ci va modifier l’adresse de destination pour mettre celle de la machine du LAN

  25. Source nat et Masquerade • Le SNAT implique la modification des adresses et/ou des ports source des paquets juste avant qu’ils ne quittent le noyau. • Cette modification doit être effectuée dans la chaîne Postrouting de la table nat

  26. Source nat et Masquerade : 2 solutions • Si vous avez une IP publique fixe #iptables –t nat –A Posrouting –o eth0 –j SNAT • Si vous avez une IP publique dynamique #iptables –t nat –A Posrouting –o eth0 –j masquerade L’option masquerade gère les changement d’adresse et les coupures de connexion

  27. Destination NAT • Vous héberger un serveur web dans une DMZ. • Vous souhaitez que le public y accède. • L’adresse public de votre passerelle sera demandée par les clients du net. • Le serveur de votre DMZ à l’adresse 192.168.2.1 et il écoute sur le port 8080 • #iptables –t nat –A Prerouting –i eth0 –p tcp –dport 80 –j DNAT –to-destination 192.168.2.1:8080

  28. #iptables –t nat –A Prerouting –i eth0 –p tcp –dport 80 –j DNAT –to-destination 192.168.2.1:8080 • -t nat  table Nat • -A Preroutingon ajoute une règle en (entrée d’interface) • -i etho  on précise le sens (–i=input) et la carte réseau • -p TCP  on indique le protocole TCP • --dport 80  le port de destination prévu à l’origine. • -J  jump, quel action on va faire subir au paquet. • DNAT  modification de la destination • -to—destination 192.168.2.1:80  on précise la nouvelle destination

  29. La syntaxe d’Iptables • #iptable –t filter -A input –p TCP –S192.168.3.1 –j drop Table Nat Filter Mangle Chaîne Prerouting Postrouting Input Outpout forward Sélection -p protocole -S source Action -j Drop paquet rejeté Accept paquet accepté

  30. La syntaxe d’Iptables • Lister les règles -L • Retirer les règles -F • Ajouter une règle –A • Inserer une nouvelle règle –I • Remplacer une règle –R

More Related