Post on 12-Sep-2018
1
TR2 : Technologies de l'Internet
Chapitre VIIIListe de Contrôle d’Accès (ACL)ACL Standard et étenduesMasque génériqueACL nommées
2
Listes de contrôle d’accès (ACL)
Importance croissante de la sécurité informatique
L’accroissement d’Internet a introduit des vulnérabilités au sein des réseaux.
Anciennement les entreprises n’étaient pas connectées ce qui les isolait des attaques externes
Les routeurs Cisco peuvent être utilisés dans le cadre d’une stratégie de sécurité des réseaux.
Listes de contrôle d’accès (ACL)
Définissent des règles qui permettent d’empêcher certains paquets de circuler sur le réseau.
Cela peut aller de l’interdiction d’un membre de la société d’accéder à une machine particulière jusqu’à éviter que des pirates immobilisent votre serveur web, ftp ou e-commerce.
3
ACL : Principe du filtrage
Les ACLs pour IP permettent à un routeur de « filtrer » certains paquets en fonction de critères définis par l’administrateur du réseau.
protéger le réseau de tout trafic indésirable, qu’il provienne de l’extérieur (pirates) ou de l’intérieur
Il est ainsi possible de filtrer les paquets IP en entrée ou/et en sortie d'une interface d’un routeur en fonction
de l'IP source, du port source
de l'IP destination, du port destination
du protocole, ...
Il existe 2 types d'ACL
Standard : uniquement sur les IP sources
Etendue : sur quasiment tous les champs des en- têtes IP, TCP et UDP…
4
ACL : Fonctionnement
Une ACL : liste ordonnée de règles d’interdictions ou d’autorisations sur différents critères
Chaque règle précise un rejet (deny) ou une autorisation (permit) de passage du paquet
Les règles sont passées en revue séquentiellement dans l’ordre jusqu’à que l’une d’elle soit vérifiée
L’action associée à la régle est alors effectuée
Si le paquet ne satisfait aucune règle, l'action deny est automatiquement appliquée
On peut préciser sur quelle interface du routeur sont appliqués les règles de filtrage
On peut préciser si les règles sont appliqués pour les paquets entrant sur l’interface ou sortant de l’interface (avant ou après la décision de routage)
5
ACL : Fonctionnement
Traitement d’une ACL en deux étapes :
Matching : recherche d’une règle de filtrage qui corresponde au paquet traité par l’ACL
Action : application de la règle (Permit ou Deny)
Arrivée d’un paquet sur sur interface d’entrée :
ACL sur interface
In ?
ACL sur interface
out ?
règle corresp.
?
règle corresp.
?
deny(defaut)
règle permit
?
règle permit
?
(deny) (deny)
deny(defaut)
Applique Routage
Envoi
6
ACL : Exemple
« Bob ne doit pas pouvoir accéder au Serveur 1 »
Quel est le routeur le plus approprié ? R3 ou R1
Sur quelle interface ? E0 sur R3 ou E0 sur R1
7
ACL : Exemple (suite)
Rechercher les paquets dont l’IP source est celle de BOB et l’IP destination est celle de Serveur 1 et les supprimer
Transmettre tous les autres paquets
8
Le matching : masque générique
Pour spécifier quelle partie de l’adresse IP est à examiner lors de la recherche de correspondance, CISCO utilise le masque générique (wildcard mask)
Ressemble à un masque de réseau mais n’a pas la même fonction ni le même comportement
Les bits à 0 : le routeur doit comparer ces bits
Les bits à 1 : le routeur ne doit pas tenir compte de ces bits (don’t care bits)
Exemples:
0.0.0.0 : tous les bits doivent être examinés
0.0.0.255 : seuls les 3 premiers octets sont examinés
255.255.255.255 : l’adresse n’a pas besoin d’être examinée : désigne tout le monde
0.0.15.255 : les 20 premiers bits sont examinés
12
Configuration des ACLs standard pour IP
Définition d'une règle d’ACL standard pour IP
access-list number [deny|permit] source [source-wildcard]
number compris entre 1 et 99 ou 1300 et 1999
Associer une description à une ACL
access-list number remark description
Activation d'une ACL sur une interface
ip access-group [ number | name [ in | out ] ]
Visualiser les règles d’une ACL
show access-lists [ number | name ]
toutes les règles de l’ACL quelque soit l'interface
show ip access-lists [ number | name ]
les règles de l’ACL liées au protocole IP
13
ACLs standard pour IP : Exemples
access-list 1 deny 172.16.3.10 0.0.0.0
Refuse les paquets d'IP source 172.16.3.10
Le masque générique 0.0.0.0 signifie ici que tous les bits de l'adresse IP sont significatifs
access-list 1 permit 0.0.0.0 255.255.255.255
Tous les paquets IP sont autorisés
Le masque générique 255.255.255.255 signifie qu'aucun bit n'est significatif
14
ACLs standard pour IP : Exemples
Terme host : correspondance parfaite sur l’hôte
host @ip équivaut à @ip 0.0.0.0
masque générique
Terme any : aucune correspondance sur rien
any équivaut à 0.0.0.0 255.255.255.255
toutes adresses masque générique
16
ACLs standard pour IP : Bob
ACL std sur R1 empêchant Bob d’atteindre Serveur1 (E0)
access-list 1 deny host 172.16.3.10 host 172.16.1.100 interface E0 ip adress-group 1 out
17
ACLs étendues pour IP
Les ACLS étendues peuvent filtrer les paquets en fonction
de l'adresse IP de destination
du type de protocole (TCP, UDP, ICMP, IGRP, IGMP, ...)
du port source, du port destination, …
Les ACLS étendues peuvent demander au routeur d’examiner plusieurs champs d’en tête IP à la fois
18
Configuration des ACLs étendues pour IP
Numéro d’ACL entre 100 et 199 ou entre 2000 et 2699
Définition d'une règle d’ACL étendue pour IP
access-list number {deny|permit} protocole source source-wildcard dest. dest.-wildcard [log]
Variante de règle d’ACL étendue pour IP, protocole TCP
access-list number {deny|permit} tcp source source-wildcard [opérateur [port]] destination dest.-wildcard [opérateur [port]] [etablished] [log]
Associer une description à une ACL
access-list number remark description
Activation d'une ACL sur une interface
ip access-group [ number | name [ in | out ] ]
19
ACLs étendues pour IP : Exemples
access-list 101 deny ip any host 10.1.1.1
Refus des paquets IP à destination de la machine 10.1.1.1 et provenant de n'importe quelle source
On doit préciser le protocole (IP)
access-list 101 deny tcp any gt 1023 host 10.1.1.1 eq 23
Refus de paquet TCP d'un port source > 1023 et à destination du port 23 de la machine d'IP 10.1.1.1
Opérateurs de comparaison sur les ports : lg (<), gt (>), eq (=), ne (), le (), ge (), range
access-list 101 deny tcp any host 10.1.1.1 eq http
Refus des paquets TCP à destination du port 80 de la machine d'IP 10.1.1.1
Utilisation de mots clés pour les ports « well-known » http ou www (80) , ftp (21), pop (110), smtp (25) …
20
ACLs étendues pour IP : Bob et Larry
Refuser à Bob l’accès à tous les serveurs ftp joignable via l’interface Ethernet de R1 et Larry n’a pas le droit de se connecter au serveur web du serveur 1. Reste autorisé
21
ACLs nommées
Une ACL numérotée peut se composer de plusieurs règles
La seule façon de la modifier est de la supprimer avec no access-list number puis de la redéfinir
Impossible de modifier/supprimer une seule règle
Les ACLs nommées identifient les ACLs pour IP standards et étendues par des noms plutôt que des numéros
Elles sont utiles dans les situations suivantes :
Identifier plus intuitivement une ACL
Configurer plusieurs ACL standard et plusieurs ACL étendues dans un routeur pour un protocole donné
Supprimer des règles (instructions) individuelles au lieu de toute l'ACL
Définition d’une ACL nommée
ip access-list {standard | extended} name
22
ACLs nommées : Exemple
Exemple : Router(config)# ip access-list extended bart Router(config-ext-nacl)# deny tcp host 10.1.1.2 eq www any Router(config-ext-nacl)# deny ip 10.1.1.0 0.0.0.255 any Router(config-ext-nacl)# permit ip any any
Pour supprimer une des règles, il suffit de faire
ip access-list {standard | extended} name
no règle-à-supprimer
Exemple : Router(config)# ip access-list extended bart Router(config-ext-nacl)# no permit ip any any
23
Accès au Telnet avec une ACL
Pour restreindre les connexions entrantes ou sortantes entre un vty particulier et les adresses d’une access list, on utilise la commande
access-class number { in | out }
Exemple : utiliser une ACL dans le but de contrôler l'accès au Telnet (donc au vty):
24
Quelques conseils sur les ACLs
La création, la mise à jour, le débogage nécessitent beaucoup de temps et de rigueur dans la syntaxe
Il est conseillé de :
créer les ACL à l'aide d'un éditeur de texte et de faire un copier/coller dans la configuration du routeur
placer les ACL étendues au plus près de la source du paquet pour le détruire le plus vite possible
placer les ACL standard au plus près de la destination sinon, vous risquez de détruire un paquet trop tôt (les ACL standard ne regardent que l'IP source)
placer la règle la plus spécifique en premier
désactiver une ACL sur l'interface concernée avant de faire le moindre changement : no ip access-group