Académique Documents
Professionnel Documents
Culture Documents
ACL
Objectifs du chapitre
Introduction
Il est possible de configurer un pare-feu simple, qui assure les fonctions de base de filtrage du trafic
entrant et sortant laide de listes de contrle daccs (ACL).
Il est possible de configurer de ACL pour contrler le trafic en fonction du port TCP utilis.
Utiliser
Il est aussi possible de filtrer le trafic non IP (IPX, AppleTalk par ex.) mais cela sort du cadre de ce cours.
Rappel : TCP
Exemple de filtrage
Sil sagit du paquet TCP SYN sur A avec port 80, son passage est autoris.
Tout autre accs est refus ces utilisateurs.
Sil sagit du paquet TCP SYN sur B avec port 80, son passage est bloqu.
Tout autre accs est autoris.
Quest ce quune ACL?
Les ACL sont les objets les plus couramment utiliss dans Cisco IOS.
Une ACL est un ensemble squentiel dinstructions dautorisation ou de refus qui sappliquent
aux adresses IP, aux n de ports ou aux protocoles de couche suprieure.
chaque fois quun paquet traverse une interface avec une ACL, cette ACL est vrifie de haut
en bas, ligne par ligne, la recherche dune correspondance de paquet entrant.
Suite
Utiliser des ACL sur les routeurs pare-feu entre le rseau interne et un rseau externe.
Utiliser des ACL sur un routeur situ entre deux sections du rseau pour contrler le trafic entrant ou sortant.
Utiliser des ACL sur les routeurs priphriques situs la frontire du rseaux.
Configurer des ACL sur une interface pour filtrer les trafics entrant, sortant ou les deux.
Rge des 3 P
Les trois P sont une rgle gnrale pour appliquer des ACL sur un routeur.
Crer 2 ACL : la premire pour contrler le trafic entrant et la seconde pour contrler le trafic sortant.
Une ACL Par interface : Les ACL contrlent le trafic pour une interface, telle que FastEthernet 0/0.
OUT
IN
F0/0
F0/1
IN
OUT
(6 par direction).
Si la stratgie de lentreprise interdit le trafic vido, configurer des ACL pour bloquer ce trafic.
Elles contrlent le flux de trafic. Les ACL peuvent limiter larrive des mises jour de routage.
Si aucune mise jour nest requise vu les conditions du rseau, la bande passante est prserve.
Les ACL permettent un hte daccder une section du rseau tout en empchant un autre hte dy avoir accs.
Elles dterminent le type de trafic acheminer ou bloquer sur les interfaces de routeur.
Une ACL peut autoriser le trafic de messagerie mais bloquer tout trafic Telnet.
Elles filtrent les htes pour autoriser ou refuser laccs aux services sur le rseau.
Les ACL peuvent autoriser ou refuser un utilisateur laccs certains types de fichier, tels que FTP ou HTTP.
Elles fonctionnent comme des pare-feu pour filtrer les paquets et liminer tout trafic indsirable.
ACL entrante
ACL Entrante
Routage
Explication diapo suivante
Remarque importante
!
Le systme ne vrifie plus les conditions aprs la premire correspondance
lordre des conditions dans une ACL est primordial.
ACL sortante
ACL Sortante
Refus implicite
Le refus implicite
Couche 3
Routage
Couche 2+1
permit/deny
Action de lACL
Adresse IP source
ACL 1 :
ACL 2 :
N de lACL
Tout trafic provenant dailleurs est refus compte tenu du deny any implicite.
Tout trafic provenant dailleurs est refus compte tenu du deny any implicite.
On y reviendra!
Types dACL : standard et tendue
Types dACL
standard et tendue
ACL standard
Permettent dautoriser et de refuser le trafic en provenance dadresses IP source.
La destination du paquet et les ports concerns nont aucune incidence.
ACL tendues
Filtrent les paquets IP en fonction de plusieurs attributs :
- le type de protocole,
- ladresse IP source, ladresse IP de destination,
- les ports TCP ou UDP source, les ports TCP ou UDP de destination,
- informations facultatives sur le type de protocole pour une meilleure prcision du contrle.
any eq 80 :
Nimporte quelle
destination sur le port 80
Ici, LACL 103 autorise tout le trafic provenant dune adresse sur le rseau
192.168.30.0/24 vers tout port hte de destination 80 (HTTP) (dtails de la syntaxe plus loin).
Les ACL standards et tendues sont cres en mode de configuration globale.
Les ACL numrotes et nommes
Les numros 200 1299 sont ignors pour les ACL numrotes car ils sont utiliss par dautres protocoles.
Par exemple, les numros 600 699 sont utiliss par AppleTalk, alors que les numros 800 899 le sont par IPX.
Suite
Exemple
Chaque ACL doit tre place l o elle aura le plus grand impact sur les performances.
Les rgles de base sont les suivantes :
tant donn que les ACL standard ne prcisent pas les adresses de destination, placez-les le plus prs possible
de la destination.
Placez les ACL tendues le plus prs possible de la source du trafic refus. Ainsi, le trafic indsirable est filtr sans
traverser linfrastructure rseau.
Explications
Une ACL tendue sur R3 pourrait bloquer Telnet et FTP sur le rseau 11.
Malheureusement, ladministrateur ne contrle pas R3.
Cette ACL autorise le trafic indsirable pour le bloquer quune fois arriv destination.
Cette situation affecte les performances rseau globales.
Linconvnient est que le trafic du rseau 10 (et dautres plus tard) sera galement trait
par lACL, bien que le trafic Telnet et FTP soit autoris (refus implicite deny any).
Exercices - 5.1.9.2
Rpondre des questions diverses
Configurer
LES ACL STANDARDS
ACL standard numrotes, crer lACL standard puis lactiver sur une interface.
La commande de configuration globale access-list dfinit une ACL standard avec un nombre entre 1 et 99.
Cisco IOS 12.0.1 a tendu cette plage de 1300 1999 afin de prendre en charge un maximum de 798 ACL standard.
Ces numros supplmentaires sont appels des ACL IP largies.
(2 match(es))
Le mot cl remark est utilis pour documenter les ACL ce qui facilite leur comprhension.
Chaque remarque comporte 100 caractres au maximum.
Remarques affiches
avec show run pas avec
show access-list
Suite
Si on place certaines remarques avant les permit ou deny associes et dautres aprs, on risque de sy perdre.
Supprimer un commentaire
no access-list 1 remark Do not allow Smith through
Ne supprime pas la remarque mais toute lACL!
no access-list 1 remark (rien aprs)
Efface la remarque mais laisse le mot cl dans le running-config
Cela ne fonctionne pas sur Packet-Tracer
Pour supprimer la remarque, supprimer puis remettez lACL (avec un diteur de texte)
On peut supprimer une remarque avec no remark dans lautre mode de configuration quon verra plus loin.
Exemple
Exemple 2
0.0.15.255
00000000.00000000.11111110.11111111
Exemple 3
Exemple 1 :
Autoriser laccs tous les utilisateurs sur le rseau 192.168.3.0.
Masque gnrique 0.0.0.255.
Exemple 2 :
Autoriser laccs rseau 14 utilisateurs dans le sous-rseau 192.168.3.32 /28.
Masque gnrique 0.0.0.15.
Exemple 3 :
Autoriser laccs aux rseaux 192.168.10.0 et 192.168.11.0.
Masque gnrique 0.0.3.255.
R1(config)# access-list 10 permit 192.168.10.0
R1(config)# access-list 10 permit 192.168.11.0
ou
R1(config)# access-list 10 permit 192.168.10.0 0.0.3.255
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
access-list
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
10
permit
permit
permit
permit
permit
permit
permit
permit
permit
permit
permit
permit
permit
permit
permit
permit
192.168.16.0
192.168.17.0
192.168.18.0
192.168.19.0
192.168.20.0
192.168.21.0
192.168.22.0
192.168.23.0
192.168.24.0
192.168.25.0
192.168.26.0
192.168.27.0
192.168.28.0
192.168.29.0
192.168.30.0
192.168.31.0
host remplace le masque 0.0.0.0. Tous les bits de l@ IP doivent correspondre ou quun seul hte est conforme.
any remplace ladresse IP et le masque 255.255.255.255. Aucun bit de l@ IP ne doit correspondre ou daccepter
nimporte quelle adresse.
Autorise le trafic provenant du rseau 192.168.10.0 quitter R1 par S0/0/0 (out). Le trafic provenant
dautres rseaux est bloqu notamment de 192.168.11.0/24.
Supprime la version prcdente de lACL 1. Cette ACL refuse au PC1 192.168.10.10 de quitter R1. Les
autres htes du rseau 192.168.10.0 /24 sont autoriss. Linstruction de refus implicite empche tous
les autres rseaux (192.168.11.0/24 notamment) quitter R1.
Supprime la version prcdente de lACL 1. Cette ACL refuse au PC1 192.168.10.10 de quitter R1. Les
htes du rseau 192.168.0.0/16 sont autoriss : y compris les autres htes de 192.168.10.0/24 et tout le
rseau 192.168.11.0/24. Tous les autres rseaux ne sont pas autoriss quitter R1.
Source : Curriculum Cisco CCNA4 4.0
Et la console et AUX?
Access-class sapplique une ligne VTY. R1 protg avec access-class empchera un hte de sy connecter
mais ne lempchera pas de se connecter un routeur R2 connect R1.
Il faut utiliser access-group pour que R2 soit protg en mme temps que R1. (voir pkt ACL_AccessClass et ceci)
Attention ce qui est crit dans le curriculum.
* Si jaccde mon routeur avec la console et que jessaie de me connecter via Telnet un autre routeur, cest ma console que jutilise pour accder au
VTY du routeur distant. Mais si jaccde mon routeur par VTY (Telnet) et que jessaie de me connecter au routeur voisin sur son VTY, cest mon VTY que
jutilise :-) voir
Prcaution lors de la configuration des ACL sur VTY
Par dfaut, lors de la configuration dune ACL, les instructions sont ajoutes dans leur ordre de saisie la fin de lACL.
Plus loin, nous verrons comment manipuler lordre des instructions saisies.
Il est recommand dutiliser un diteur de texte pour la cration ou la modification dune ACL.
Adresse
errone
R1
Copier
Bloc-notes
R1
R1 nest pas protg par lACL
pendant sa correction!
Coller
Avec une ACL nomme, il est plus facile den comprendre la fonction.
Par exemple, vous pouvez utiliser NO_FTP pour appeler une ACL refusant le trafic FTP.
Lorsquune ACL est identifie par un nom plutt quun numro, le mode de configuration et la syntaxe
de commande sont lgrement diffrents.
Les ACL numrote bnficient maintenant de ce mode de configuration (plus loin) (dans le curriculum 4.0, il est dit que non : erreur).
Exemple
Majuscule
recommande
sont configures de la mme manire avec les ACL nommes quavec les ACL numrotes.
Router(config)# ip access-list standard NO_WEB
Router(config-std-nacl)# permit 192.168.30.0 0.0.0.15
Router(config-std-nacl)# deny host 192.168.10.10
Router(config-std-nacl)# permit any
Router# sh access-lists
Standard IP access list NO_WEB
10 permit 192.168.30.0 0.0.0.15
20 deny host 192.168.10.10
30 permit any
Router(config-std-nacl)# int fa0/0
Router(config-if)# ip access-group NO_WEB out
Router(config-if)# line vty 0 4
Router(config-line)# access-class NO_WEB in
Router(config-line)# end
Commentaires des ACL nommes
Ayant vrifi que les ACL ont t configures comme convenu, il faut ensuite confirmer quelles
fonctionnent comme prvu.
La confirmation du bon fonctionnement des ACL peut tre une tche complexe et longue.
Les ACL IP nommes permettent de SUPPRIMER des entres dans une ACL depuis la version 12.3 de Cisco IOS.
Des numros de squence sont utiliss pour INSRER des instructions nimporte o dans lACL nomme.
Avec une version antrieure dIOS, il est possible dajouter des instructions uniquement en bas de lACL nomme.
Grce la suppression numrote, on peut MODIFIER lACL sans la supprimer ni la reconfigurer dans son intgralit.
10
10
R1#sh access-lists
Standard IP access list TEST1
10 permit 192.168.10.0 0.0.0.255
20 permit 10.0.0.0 0.255.255.255
R1#conf t
R1#sh access-lists
Standard IP access list TEST1
10 permit 192.168.10.0 0.0.0.255
R1#conf t
R1(config)#ip access-list standard TEST1
R1(config-std-nacl)#no 10
R1(config-std-nacl)#end
R1#
R1#sh access-lists
Standard IP access list TEST1
Mme les ACL numrotes peuvent faire a maintenant!
Dsormais, mme les ACL numrotes peuvent tre gres comme les ACL nommes!
Dans le curriculum, il est dit que non!
Router(config-std-nacl)#end
Router# sh access-lists
Standard IP access list 10
5 permit 172.16.0.0 0.0.0.255
10 permit 192.168.10.0 0.0.0.255
40 permit any
REMARQUE :
La fonction de hachage est applique
uniquement aux instructions d'hte dans les
ACL IPv4 standard.
L'algorithme n'est pas utilis pour les ACL
tendues IPv4 ni pour les ACL IPv6.
Les dtails de la fonction de hachage sortent
du cadre de ce cours.
Exercice 5.2.8.2
Configurer des ACL standards
Exercices divers CCNA2 5.2
9.1.5.4, 9.2.1.9
Configurer
LES ACL TENDUES
Les ACL tendues sont plus utilises que les standards car elles garantissent un meilleur contrle et
renforcent la scurit.
Les ACL tendues VRIFIENT ladresse de paquet source, ladresse de destination, le protocole et les
numros de port (ou services).
Par exemple, une ACL tendue peut autoriser le trafic mail dun rseau vers une destination spcifique tout en refusant les transferts
de fichiers et la navigation sur le Web.
ESTABLISHED
Solution :
LE MOT CL ESTABLISHED.
sur Fa0/0
en sortie.
Il sagit dautoriser le trafic en provenance de toute adresse sur 192.168.10.0 accder nimporte quelle destination, condition que ce soit
un trafic WEB : 80 (HTTP) et 443 (HTTPS).
Established nautorise le trafic Web que si le bit ACK=1 ou RST=1 ce qui indique que le paquet appartient une connexion existante.
Sans established dans linstruction de lACL, les clients peuvent envoyer le trafic vers un serveur Web mais ils ne peuvent pas le recevoir.
LACL 104 sera applique sur Fa0/0 en sortie.
Appliquer les ACL tendues aux interfaces
Source : Curriculum
Cisco CCNA2 5.2
Exemple
21 ou ftp
20 ou ftp-data
Exemple 2
Fa0/1
in
Exemple 3
Les ACL sappliquent aux paquets traversant un routeur. Elles ne sont pas destines bloquer les paquets crs sur
le routeur.
Une ACL tendue filtrant Telnet en sortie nempche pas le routeur de lancer des sessions Telnet. Il faut utiliser
access-class dans ce cas (sur VTY si on est sur le routeur grce VTY ou la console si on y est grce la console*).
Ne marche pas sur PT (test sur GNS3)
Access-class sapplique une ligne VTY. R1 protg avec access-class empchera un hte de sy connecter
mais ne lempchera pas de se connecter un routeur R2 connect R1.
Il faut utiliser access-group pour que R2 soit protg en mme temps que R1. (voir pkt ACL_AccessClass et ceci)
Attention ce qui est crit dans le curriculum.
* Si jaccde mon routeur avec la console et que jessaie de me connecter via Telnet un autre routeur, cest ma console que jutilise pour accder au
VTY du routeur distant. Mais si jaccde mon routeur par VTY (Telnet) et que jessaie de me connecter au routeur voisin sur son VTY, cest mon VTY que
jutilise :) voir
Fonctionnement
dune ACL tendue
Rappel :
Un Non ne signifie pas un refus. Il signifie que le processus
passera lentre suivante et ainsi de suite.
gal : eq
non gal : neq
suprieur : gt
infrieur : lt
!
Configurer les ACL sur un rseau de test,
puis de les mettre en uvre sur le rseau de production.
Exercice 5.3.4.2
Configurer des ACL tendues
Exercices divers CCNA2 5.2
9.3.2.7 - 9
Exemple 1
Exemple : Erreur 1
Solution
SOLUTION
Exemple 2
Exemple : Erreur 2
0.0.0.255
Solution
SOLUTION
Le rseau 192.168.10.0 /24 ne peut pas utiliser TFTP pour se connecter au rseau 192.168.30.0 /24 car TFTP utilise le
protocole de transport UDP.
Linstruction 30 dans lACL 120 autorise tout autre trafic TCP.
Sachant que TFTP utilise UDP, il est refus implicitement. Linstruction 30 doit tre ip any any.
Exemple 3
Exemple : Erreur 3
Solution
SOLUTION
192.168.10.0 /24 peut utiliser Telnet vers 192.168.30.0 /24 car le numro du port Telnet dans linstruction 10 de
lACL 130 est mal plac.
Linstruction 10 refuse actuellement toute source avec un numro de port gal Telnet qui essaie dtablir une
connexion.
Pour refuser le trafic Telnet entrant sur F0/0, refusez le numro de port de destination quivalent Telnet :
deny tcp any any eq telnet.
Exemple 4
Exemple : Erreur 4
F0/0 :
192.168.10.1
Solution
SOLUTION
Lhte 192.168.10.10 peut utiliser Telnet pour se connecter au rseau 192.168.30.12 car aucune rgle ne refuse
lhte 192.168.10.10 ou son rseau en tant que source.
Linstruction 10 de lACL 140 refuse linterface du routeur Fa0/0 do partirait le trafic.
Ces paquets partent du PC1, leur adresse source est 192.168.10.10 et non celle de linterface du routeur.
Comme pour la solution de lerreur 2, cette ACL doit sappliquer linterface Fa0/0 de R1 dans le sens entrant.
Exemple 5
Exemple : Erreur 5
En entre de s0/0/1 de R3
Solution
SOLUTION
Lhte 192.168.30.12 peut utiliser Telnet vers 192.168.10.10 du fait de la direction dans laquelle est applique
lACL150 linterface S0/0/1 de R3.
Linstruction 10 refuse ladresse source 192.168.30.12.
Ceci dit, cette adresse est la source uniquement si le trafic est sortant (et non entrant) sur S0/0/1 de R3.
Exercices finaux
Exercice 5.4.5.2
Rpondre des questions diverses
Exercice PT - 9.4.2.6 CCNA2 5.2
Dpannage
Exercice PT - 5.5.1.2
Configuration de base
Exercice PT - 5.6.1.3
OSPF, PAP/CHAP, ACL
ACL complexes?
Comment a marche
Comment a marche?
S0/0/1
PC1
192.168.30.0/24
R3
Suite
Comment a marche?
tout le trafic IP en fait (ACL 101)
Temps absolu
Temps dinactivit
Schma explicatif
Comment a marche
Lorsque le routeur dtecte une nouvelle connexion, il ajoute une entre une ACL rflexive pour autoriser les
rponses mais pas les connexions inities de lextrieur : REFLECT.
Cette entre est supprime automatiquement la clture dune session.
REFLECT indique au routeur quil devra crer lACL rflexive ACL-REF correspondant
au trajet inverse. Elle apparaitra dans le show access-list (en bas) quand il y aura un trafic sortant.
Trafic ENTRANT :
Lorsque le routeur dtecte le trafic entrant, il utilise lACL ACL-REF pour
empcher le trafic sil est initi de lextrieur : EVALUATE.
R2(config)# ip access-list extended INTBOUND
R2(config-ext-nacl)# evaluate ACL-REF
R2(config-ext-nacl)# int s0/1/0
R2(config-if)# ip access-group OUTBOUND in
!
Les ACL rflexives permettent au routeur de grer le trafic de session de manire dynamique.
Les ACL rflexives comprennent uniquement des entres provisoires.
Les ACL rflexives ne sont dfinies quavec des ACL IP tendues nommes.
Les ACL rflexives ne sappliquent pas directement une interface.
Les ACL rflexives sont imbriques dans une ACL tendue nomme.
Les ACL rflexives ne fonctionnent pas avec les applications qui changent le numro de port
en cours de session.
FTP actif par exemple. Idem avec la fonction established de lACL tendue.
Exemple
Exemple
ACL rflexive autorise le trafic
ICMP entrant et sortant, autorise
uniquement le trafic TCP initi
lintrieur du rseau.
Tout autre trafic est refus.
LACL rflexive est applique
linterface de sortie de R2.
Suite de lexemple
Schma
Exemple
Exemple
Dans cet exemple, une connexion Telnet est autorise depuis le
rseau intrieur au rseau extrieur les lundis, mercredis et vendredis
pendant les heures ouvrables.
S0/0/0
TP - 5.5.2.1
FIN
FIN