Iptables. Table of Contents



Documents pareils
Formation Iptables : Correction TP

Iptables. Table of Contents

Sécurité des réseaux Firewalls

Administration réseau Firewall

FILTRAGE de PAQUETS NetFilter

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

Sécurité GNU/Linux. Iptables : passerelle

Exemples de commandes avec iptables.

Administration Réseaux

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

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

TP 3 Réseaux : Subnetting IP et Firewall

Le filtrage de niveau IP

Université Pierre Mendès France U.F.R. Sciences de l Homme et de la Société Master IC²A. TP réseau 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

avec Netfilter et GNU/Linux

ATELIER NETFILTER : LE FIREWALL LINUX EN ACTION

TP4 : Firewall IPTABLES

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

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

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

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

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

Linux Firewalling - IPTABLES

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

Proxy et reverse proxy. Serveurs mandataires et relais inverses

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

TP SECU NAT ARS IRT ( CORRECTION )

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

CONFIGURATION FIREWALL

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

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

Sécurité et Firewall

Architectures sécurisées

Conférence Starinux Introduction à IPTABLES

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

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

Les firewalls libres : netfilter, IP Filter et Packet Filter

Architecture réseau et filtrage des flux

MISE EN PLACE DU FIREWALL SHOREWALL

Internet - Outils. Nicolas Delestre. À partir des cours Outils réseaux de Paul Tavernier et Nicolas Prunier

acpro SEN TR firewall IPTABLES

Linux sécurité des réseaux

TCP/IP, NAT/PAT et Firewall

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

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

SQUID Configuration et administration d un proxy

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

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

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

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

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

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

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

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.

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

Mise en œuvre d une Gateway HTTP/HTTPS avec un serveur de Présentation en DMZ

Polux Développement d'une maquette pour implémenter des tests de sécurité

LAB : Schéma. Compagnie C / /24 NETASQ

Installation et Configuration de Squid et SquidGuard sous Debian 7

Environnements informatiques

Cours de sécurité. Pare-feux ( Firewalls ) Gérard Florin -CNAM - - Laboratoire CEDRIC -

Le routeur de la Freebox explications et configuration

Sécurité des réseaux Les attaques

Firewall IDS Architecture. Assurer le contrôle des connexions au. Sécurité 1

Date : NOM Prénom : TP n /5 ET ADMINISTRATION D'UN

Configurez votre Neufbox Evolution

Les systèmes pare-feu (firewall)

A5.2.3, Repérage des compléments de formation ou d'autoformation

MAUREY SIMON PICARD FABIEN LP SARI

M2-RADIS Rezo TP13 : VPN

Administration de Réseaux d Entreprises

II/ Le modèle OSI II.1/ Présentation du modèle OSI(Open Systems Interconnection)

LINUX - Sécurité. Déroulé de l'action. - 3 jours - Contenu de formation

Nmap (Network Mapper) Outil d exploration réseau et scanneur de ports/sécurité

Security and privacy in network - TP

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

TP c Fonctions des listes de contrôle d'accès multiples (TP avancé)

Configuration d un firewall pour sécuriser un serveur WEB

TAGREROUT Seyf Allah TMRIM

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

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

TP réseaux Translation d adresse, firewalls, zonage

VoIP et "NAT" VoIP et "NAT" 1/ La Traduction d'adresse réseau. 1/ La traduction d'adresse réseau. 1/ La traduction d'adresse réseau

Introduction. Adresses

Documentation technique OpenVPN

Compte-rendu du TP n o 2

Sécurité des réseaux. 1. Introduction Tendances. Stéphane Lohier

ACTION PROFESSIONNELLE N 4. Fabien SALAMONE BTS INFORMATIQUE DE GESTION. Option Administrateur de Réseaux. Session Sécurité du réseau

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

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

1/ Introduction. 2/ Schéma du réseau

Ubuntu Linux Création, configuration et gestion d'un réseau local d'entreprise (3ième édition)

Rapport du projet Qualité de Service

Live box et Nas Synology

Les réseaux des EPLEFPA. Guide «PfSense»

Serveur FTP. 20 décembre. Windows Server 2008R2

Transcription:

Iptables Stéphane Salès s.sales@tuxz.org Table of Contents 1.TP IPTABLES 2 1.1.Opérations sur une seule chaîne et sur la table filter: 2 1.1.1.paramètre protocole 2 1.1.2.paramètre source 2 1.1.3.chaîne OUTPUT paramètre destination 2 1.1.4.paramètre inversion 2 1.1.5.paramètre interface d'entrée 2 1.1.6.paramètre interface de sortie 2 1.1.7.paramètre destination port 2 1.1.8.paramètre source port 2 1.1.9.paramètre flag TCP 3 1.1.10.paramètre flag icmp 3 1.1.11.paramètre extension: 3 1.1.11.1.extension mac 3 1.1.11.2.extension limit 3 1.1.12.le suivi de connexion(ip_conntrack) 3 1.2.Opérations sur plusieurs chaînes et sur la table filter: 4 1.3.Opérations sur plusieurs chaires et sur plusieurs tables : 4 2.SCRIPT 4 2.1.partie 1 5 2.2.Partie 2 5 Page 1sur 5

1. TP IPTABLES (A RENDRE LE 10/03/2003) Monday 31 March 2003 Stéphane Salès 10/02/2003 1.1. Opérations sur une seule chaîne et sur la table filter: Créer les règles suivantes : (vous noterez sur cette feuille chacune des règles demandées, ainsi que le test de la règle, à savoir un copié/collé du term, et/ou du résultat d'un sniff( ethereal,ngrep etc) interdire tout paquet entrant iptables -A INPUT -j DROP iptables -D INPUT 1 1.1.1. paramètre protocole interdire le protocole icmp iptables -A INPUT -p icmp -j DROP 1.1.2. paramètre source interdire le protocole icmp provenant de localhost iptables -A INPUT -p icmp -s localhost -j DROP 1.1.3. chaîne OUTPUT paramètre destination interdire tout paquet à destination de localhost iptables -A OUTPUT -d localhost -j DROP 1.1.4. paramètre inversion interdire un paquet s'il ne provient pas de localhost iptables -A INPUT -s! localhost -j DROP 1.1.5. paramètre interface d'entrée interdire tout paquet entrant par eth0 iptables -A INPUT -i eth0 -j DROP interdire un paquet s'il provient de lo (à ne surtout jamais faire sur une machine si l'on ne sait pas EXACTEMENT ce que l'on fait) iptables -A INPUT -i lo -j DROP 1.1.6. paramètre interface de sortie interdire tout paquet sortant par eth0 iptables -A OUTPUT -o eth0 -j DROP 1.1.7. paramètre destination port interdire tout paquet à destination du port ftp iptables -A INPUT -p tcp --dport 21 -j DROP Page 2sur 5

1.1.8. paramètre source port interdire tout paquet sortant par eth0 dont le numéro de port source 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 tester une connexion ftp et retester une connexion ftp 1.1.9. 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 1.1.10. paramètre flag icmp interdire tout paquet entrant correspondant à un ping iptables -A INPUT -p icmp --icmp-type echo-request -j DROP interdire toute réponse à un ping iptables -A OUTPUT -p icmp --icmp-type echo-reply -j DROP 1.1.11. paramètre extension: 1.1.11.1. extension mac (attention on ne peut utiliser l'extension mac que sur les tables INPUT et PREROUTING) 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 1.1.11.2. extension limit positionner la police par défaut à DROP pour la chaîne INPUT écrire une règle qui laisse passer 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(sans tentative de connexion ou d'echo-request)faudra t'il pour qu'on puisse à nouveau avoir 5 des ces paquets qui puissent passer à la suite? 5 minutes Voyons maintenant une des fonctionnalités de netfilter la plus pratique : 1.1.12. le suivi de connexion(ip_conntrack) positionnez les règles par défaut à DROP pour les chaînes INPUT, OUTPUT, FORWARD 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 Page 3sur 5

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 1.2. 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 1.3. Opérations sur plusieurs chaires et sur plusieurs tables : [Pour cette partie nous travaillerons sur des machines ayant au minimum 2 interfaces réseau] modification de champ IP/TCP chaîne PREROUTING,POSTROUTING cible SNAT, DNAT, MASQUERADE positionnez les règles par défaut à DROP pour les chaînes INPUT, OUTPUT, FORWARD iptables -P OUTPUT DROP iptables -P FORWARD DROP créer une règle qui modifie tout paquet qui arrive via l'interface eth1 à destination du port 2222 afin que ce paquet ai dans son champ IP DST l'adresse 192.168.0.1 et dans son champ TCP DPORT 22 iptables -t nat -A PREROUTING -p tcp --dport 2222 -j DNAT --to-destination 192.168.0.1:22 que se passe t il si on tente une connexion sur eth1 sur le port 2222? Rien car les paquets sont dropés sans la chaine FORWARD que faut il faire pour que la translation fonctionne effectivement? (dans un sens comme dans l'autre) iptables -A FORWARD -s 192.168.0.1 -j ACCEPT iptables -A FORWARD -d 192.168.0.1 -j ACCEPT pour vous aider mettez ces règles dans un script se terminant par une règle qui log et drop tout et ensuite regarder attentivement les logs effacer ces règles(sauf les polices par défaut) créer une règle qui altère le champ IP SRC de tout paquet sortant via l'interface eth1, en remplaçant la valeur de ce champ par l'adresse IP de cette interface(eth1) iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 62.212.36.222 iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE autoriser tout trafic provenant de eth0 à être forwardé par notre machine iptables -A FORWARD -i eth0 -j ACCEPT autoriser tout trafic de statuts ESTABLISHED,RELATED à être forwardé par notre machine iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT 2. SCRIPT Page 4sur 5

Le but sera ici de se placer dans un cas concret, et de répondre au mieux aux besoins de filtrage, d'accès aux services et de qualité de service. Le cas concret : 2.1. partie 1 Nous considérerons qu' iptables est installé sur la machine servant de routeur/firewall et nous allons donc nous attacher à écrire le script pour cette machine. Les machines, le routeur et le serveur placé dans la DMZ, doivent être protégées au mieux. Le routeur a 3 interfaces réseau : eth0(192.168.0.254) relié à la DMZ eth1(192.168.1.254) relié au LAN ppp0(62.212.36.222) relié à internet La machine doit pouvoir être joignable via SSH depuis le LAN, et depuis Internet. Les machines du LAN doivent pouvoir aller sur Internet(HTTP et FTP). Les machines du LAN doivent pouvoir pinger une machine sur Internet. Sur la DMZ, la machine 192.168.0.1 héberge le site web de l'entreprise, un relay mail et un serveur imap-ssl qui doivent être joignable, depuis le LAN, et depuis Internet. Cette machine doit aussi être joignable par SSH depuis le LAN et depuis Internet. La machine est une debian et est maintenu à jour via apt, aussi la machine devra pour pouvoir aller télécharger via FTP et HTTP les mises à jours sur par exemple ftp.fr.debian.org. (voir script) 2.2. Partie 2 On veut mettre en place un proxy transparent sur un serveur dédié (192.168.0.2) situé dans la DMZ, que faudrait il changer dans notre script? (voir script) Page 5sur 5