You are on page 1of 9

24/03/2011

ACL d'un routeur CISCO

Liste de contrle daccs dun routeur Cisco


1. Prsentation
Une technique de base pour limiter ou interdire les accs un systme sont les ACL : Liste de contrle d'Accs (Access Control List). Dfinition : Une liste de contrle daccs est une collection dinstructions permettant dautoriser ou de refuser des paquets en fonction dun certain nombre de critres, tels que : L'adresse d'origine ; L'adresse de destination ; Le numro de port ; Les protocoles de couches suprieures ; Dautres paramtres (horaires par exemple). Elles dfinissent des conditions en entre et en sortie de chaque interface du routeur.

Voici les principales raisons pour lesquelles il est ncessaire de crer des listes de contrle daccs : Limiter le trafic rseau et accrotre les performances. En limitant le trafic vido, par exemple, les listes de contrle daccs permettent de rduire considrablement la charge rseau et donc daugmenter les performances. Contrler le flux de trafic. Les ACL peuvent limiter larrive des mises jour de routage. Si aucune mise jour nest requise en raison des conditions du rseau, la bande passante est prserve. Fournir un niveau de scurit daccs rseau de base. Les listes de contrle daccs permettent un hte daccder une section du rseau tout en empchant un autre hte davoir accs la mme section. Par exemple, lhte A peut accder au rseau rserv aux ressources humaines, tandis que lhte B ne peut pas y accder. Dterminer le type de trafic qui sera achemin ou bloqu au niveau des interfaces de routeur. Il est possible dautoriser lacheminement des messages lectroniques et de bloquer tout le trafic via Telnet. Autoriser un administrateur contrler les zones auxquelles un client peut accder sur un rseau. Filtrer certains htes afin de leur accorder ou de leur refuser laccs une section de rseau. Accorder ou refuser aux utilisateurs la permission daccder certains types de fichiers, tels que FTP ou HTTP.

2. Principe
Pour un paquet donn, lACL prend deux valeurs : deny : le paquet sera rejet permit : le paquet pourra transiter par le routeur On associe chaque interface du routeur une ACL, On peut aussi prciser le sens du trafic, cest--dire in ou out, pour que lACL sapplique aux paquets entrant ou sortant de linterface du routeur.

irisbachelard.free.fr/index.php?idPage

1/9

24/03/2011

ACL d'un routeur CISCO

Lordre des instructions ACL est important. Les rgles sont parcourues squentiellement et le test sarrte lorsque le paquet test vrifie une rgle. En gnral, on essaie de mettre les rgles les plus utilises en dbut de liste. Si aucune rgle nest vrifie, le rsultat sera ngatif (deny) : tout ce qui nest pas autoris est interdit. Il est possible de rsumer le fonctionnement des ACL de la faon suivante : Le paquet est vrifi par rapport au premier critre dfini ; Sil vrifie le critre, laction dfinie est applique ; Sinon, le paquet est compar successivement par rapport aux ACL suivants ; Sil ne satisfait aucun critre, laction deny sera applique. Une liste ACL est donne pour chaque entre ou sortie d'une interface et pour chaque protocole de couche 3. Quand un accs au routeur est effectu, la liste d'entre correspondante l'interface et la couche est analyse si elle existe. Si la liste n'erxiste pas ou si le paquet est accepte par la premire liste, la liste de sortie correspondante l'interface et la couche est galement analyse. Si cette liste existe et si elle accepte le paquet ou si la liste n'existe pas, le paquet est transmis. Bien sr, seuls les paquets concernant le routeur en question sont traits.

Chaque contrle d'accs peut tre de deux types : Acceptation : permit ; Rejet : deny. Quand la ligne est trouve, si le contrle est permit l'accs est autoris. Si le contrle est deny le paquet est rejet.

irisbachelard.free.fr/index.php?idPage

2/9

24/03/2011

ACL d'un routeur CISCO

Il existe deux types de contrle pour le protocole IP : ACL IP standard : Travail sur la source Filtrage sur le masque Un numro unique de liste compris entre 1-99, 1300-1999. Rgle : liste appliquer au plus prs de la destination. ACL IP tendu : Travail sur les adresses IP et le port de la source et de la destination. Filtrage sur la couche 4 (port et adresse IP) Un numro unique de liste compris entre 100-199, 2000-2699. Rgle : liste appliquer au plus prs de la source. Les ACL pour les protocoles IPX et AppleTalk ne sont pas tudies. Il existe un troisime type d'ACL appels ACL nomms. Ces ACL sont de type sandard ou tendus. Leur seule particularit est l'ajhout d'un nom pour une plus grande lisibilit. Le numro unique de liste identifie le type de liste daccs cr et doit tre compris dans la plage de numros valide pour ce type. 2.1. Rgle gnrale La rgle gnrale est de placer les listes de contrle daccs tendu le plus prs possible de la source du trafic refus afin de le dtruire le plus vite possible. Etant donn que les listes de contrle daccs standard ne prcise pas les adresses de destination, on doit les placer le plus prs possible de la destination afin de ne pas de dtruire le paquet trop tt. Il faut placer la rgle le plus spcifique en premier. Il est conseill de crer les ACL laide dun diteur de texte et de faire un copier/coller dans la configuration du routeur. Dsactiver lACL sur interface concerne (no ip access-group) avant de faire le moindre changement sur une ACL.

3. L'dition des ACL


Pour saisir les instructions des ACL, il faut entrer la commande access-list dans le mode de configuration globale. Exemple : Bachelard#configure terminal Bachelard(config)#access-list 101 deny ip any host 172.16.0.1 Le premier paramtre de la commande access-list dfinit le numro de la liste. Il suffit d'entrer dans l'ordre les diffrentes lignes de votre ACL en respectant le format de la commande. Aprs avoir cr votre liste, vous devez indiquer au routeur que cette liste doit tre applique quelle interface et si elle est

irisbachelard.free.fr/index.php?idPage

3/9

24/03/2011

ACL d'un routeur CISCO

en entre (in) ou en sortie (out)par la commande ip access-group <numro> <in ou out>. Bachelard#configure terminal Bachelard(config)#interface serial 0/0/0 Bachelard(config-if)#ip access-group 2 in Bachelard(config-if)#exit Bachelard(config)#exit Si vous voulez visualiser l'ensemble des lignes de votre ACL, il faut utiliser la commande show access-list <numro>. Bachelard#sh access-lists Extended IP access list 101 10 permit ip 192.168.1.32 0.0.0.15 any (55 matches) 20 deny ip any any (505 matches) Extended IP access list 102 10 permit tcp any any established 20 permit icmp any any echo-reply 30 permit icmp any any unreachable 40 deny ip any any Bachelard# Si suite cette visualisation, vous remarquez une ligne manquante ou incorrecte, vous ne pouvez pas modifier votre liste. Vous devez supprimer la liste par la commande no access-list <numro> puis entrer nouveau votre liste. Bachelard#configure terminal Bachelard(config)#no access-list 101 Une solution pour viter de retaper toute la liste est ce crer un fichier contenant cette liste puis d'utiliser le copier-coller pour entrer la liste. Exemple de fichier liste : no access-list 101 access-list 101 permit tcp any host 172.16.0.1 eq www access-list 101 deny ip any host 172.16.0.1 access-list 101 permit ip 172.171.3.192 0.0.0.63 209.0.0.128 0.0.0.127 access-list 101 deny ip any 209.0.0.128 0.0.0.127 access-list 101 permit ip 172.171.3.128 0.0.0.127 209.0.0.0 0.0.0.127 access-list 101 deny ip any 209.0.0.0 0.0.0.127 access-list 101 deny ip any host 198.0.0.1 access-list 101 permit ip any any Vous pouvez galement visualiser les ACL prises en compte sur une interface en utilisant la commande show ip interface . Outgoing access list is not set Inbound access list is 102 Exemple d'affichage de la partie ACL

4. La commande access-list
Les commandes access-list sont diffrentes selon le type de liste (standard ou tendu). Mais il faut d'abord tudier les masques gnriques. 4.1. Les masques gnriques Un masque gnrique est une quantit de 32 bits diviss en quatre octets. Il est associ une adresse IP. Il permet de dterminer quelles sont les adresses IP concernes par le contrle. Les 0 indiquent qu'il faut tester ces bits et les 1 qu'aucun test n'est effectuer.

irisbachelard.free.fr/index.php?idPage

4/9

24/03/2011

ACL d'un routeur CISCO

Attention : le masque est diffrent du masque de sous-rseau. Pour vrifier si une adresse IP appartient une famille dadresse IP analyser : Prendre ladresse IP ; Appliquer le masque, cest--dire mettre 0 dans ladresse IP tous les bits qui sont 1 dans le masque ; Comparer le rsultat obtenu ladresse gnrique de la famille. Voici quelques exemples :

irisbachelard.free.fr/index.php?idPage

5/9

24/03/2011

ACL d'un routeur CISCO

Exemple : contrle concernant les sous-rseaux 172.30.16.0 172.30.31.0 172.30.16.0 en binaire : 1010 1100.0001 1110.0001 0000.0000 0000 172.30.31.0 en binaire : 1010 1100.0001 1110.0001 1111.0000 0000 Les bits diffrents sont mis 1 : 0000 0000.0000 0000.0000 1111.0000 0000 Pour prendre en compte les adresses htes du sous-rseau : il faut remplacer le dernier octet par 1111 1111. On obtient donc : 0000 0000.0000 0000.0000 1111.1111 1111 soit 0.0.15.255. Il existe deux masques particuliers : 255.255.255.255 qui correspond toutes les adresses peut tre remplac par any. 0.0.0.0 qui correspond l'adresse exacte peut tre remplac par host. 4.2. Les ACL standard Les listes daccs standard vrifient ladresse dorigine des paquets IP qui sont routs, pour accepter ou rejeter les paquets. Les commandes pour les ACL standard sont de la forme : access-list <numro d'ACL> {deny | permit} <adresse dorigine> <masque gnrique> deny : rejet du paquet permit : acceptation du paquet adresse dorigine et masque gnrique : dterminent les adresses IP concernes par ce contrle. Exemples : access-list 1 deny 192.168.14.0 0.0.0.255 L'accs au rseau 192.168.14.0 est refus. access-list 1 permit any Tous les autres accs sont permis. 4.3. Les ACL tendues Les listes daccs tendues vrifient les adresses dorigine et de destination du paquet, mais peuvent aussi vrifier les protocoles et les numros de port. Les commandes pour les ACL tendus sont de la forme : access-list <numro d'ACL> {deny | permit} <protocole> <adresse dorigine> <masque gnrique> <adresse destination> <masque gnrique> <oprateur> <oprande> [established] deny : rejet du paquet permit : acceptation du paquet

irisbachelard.free.fr/index.php?idPage

6/9

24/03/2011

ACL d'un routeur CISCO

protocole : dtermine le protocole des paquets (tcp, udp ou ip) adresse dorigine et masque gnrique : dtermine les adresses IP source concernes par ce contrle. adresse destination et masque gnrique : dterminent les adresses IP destination concernes par ce contrle. oprateur et oprande : permettent de filtrer les paquets selon les ports : Les oprandes possibles sont :lt (plus petit que), gt (plus grand que), eq (gal ) et neq (diffrent de). L'oprande est le numro de port Oprande Alias Paramtre Rsultat < lt num_port vrai si le port est infrieur > gt num_port vrai si le port est suprieur = eq num_port vrai si le port est gal != ne num_port vrai si le port nest pas gal <= le num_port vrai si le port est infrieur ou gal => ge num_port vrai si le port est suprieur ou gal established : permet au trafic TCP de passer si les bits ACK sont actives. Exemples : access-list 101 permit tcp any host 172.16.0.1 eq www Tous les paquets destination de l'adresse IP 172.16.0.1 port 80 (www) sont accepts. Il s'agit d'un serveur Web. access-list 101 deny ip any host 172.16.0.1 Tous les autres paquets pour cette mme adresse sont refuss. access-list 101 permit ip 172.171.3.192 0.0.0.63 209.0.0.128 0.0.0.127 Les paquets venant des adresses IP du sous-rseau 172.171.3.192 destination du sous-rseau 209.0.0.128 sont routs et non filtrs. 4.4. Les ACL nommes Les listes de contrle daccs nommes IP ont t introduites dans la plate-forme logicielle Cisco IOS version 11.2, afin dattribuer des noms aux listes daccs standard et tendues la place des numros. Les commandes pour les ACL tendus sont de la forme : access-list {standard | extended} <nom de lACL> <instructions> {standard | extended} : type d'ACL. nom de lACL : nom identifiant l'ACL. instructions : instructions similaires access-list en retirant access-list <numro d'ACL>. Exemple : Bachelard(config)#ip access-list standard no_access Bachelard(config-std-nacl)#deny 192.168.14.0 0.0.0.255 Bachelard(config-std-nacl)#permit any Bachelard(config-std-nacl)#exit Bachelard(config)#int e0 Bachelard(config-if)#ip access-group no_access in Bachelard(config-if)#^Z Bachelard#

5. Etude de cas
Nous allons tudier le rseau suivant et programmer le routeur de Bachelard avec les ACL correspondantes au filtre voulu.

irisbachelard.free.fr/index.php?idPage

7/9

24/03/2011

ACL d'un routeur CISCO

Voici la configuration de notre rseau : L'adresse IP de l'interface S0/1 sur ac-creteil est : 192.168.101.1. L'adresse IP de l'interface S0/0 sur Bachelard est : 192.168.101.2. Le rseau de Bachelard a pour adresse : 172.16.0.128/25. L'adresse IP de l'interface FA0 sur Bachelard est : 172.16.0.254. Les adresses de l'administration de Bachelard sont comprises entre 172.16.0.129 et 172.16.0.191 (172.16.0.128/26). Les adresses de la pdagogie de Bachelard sont comprises entre 172.16.0.192 et 172.16.0.253 (172.16.0.192/26). L'objectif de cette partie est d'laborer le plan des listes d'accs pour prendre en considration les problmes de scurit suivants : L'acadmie dispose d'un hte serveur Web intranet auquel tous les systmes peuvent accder, via le protocole HTTP uniquement, l'adresse IP 172.16.1.1. Aucun autre protocole n'est autoris sur ce site. L'acadmie dispose galement d'un groupe de serveurs sur le rseau 192.168.200.0/24. Les adresses du groupe de serveurs sont rparties en deux sous-groupes. Les serveurs figurant dans la moiti suprieure de la plage d'adresses ne sont joignables que par les htes d'administration, via tous les protocoles IP possibles. Les serveurs figurant dans la moiti suprieure de la plage d'adresses ne sont pas accessibles aux htes de la pdagogie via tout protocole IP. Les serveurs qui figurent dans la moiti infrieure de la plage d'adresses peuvent tre joints par tous les htes LAN, via n'importe quel protocole IP. Aucun autre hte ne doit pouvoir accder aux serveurs. L'acadmie a identifi un serveur Web Internet, l'adresse IP 192.168.150.1, contenant des virus. Aucun hte ne doit pouvoir accder cet site. Nous allons supposer que pour tous les cas, tout ce qui n'est pas interdit est autoris. Nous allons rpondre ces problmes de scurit avec une seule liste d'accs. La liste de contrle est une liste tendue et elle doit tre applique doit l'tre sur l'interface fa0/0 et en entre. En effet, une liste tendue doit tre mise au plus prs de la source et comme le routeur de Bachelard doit tre configur, les sources sont sur le rseau de Bachelard donc en entre du routeur. Le premier problme peut se rsoudre en permettant l'accs au port www(eq www) de l'hte 172.16.1.1 par tous(any) : permit tcp any host 172.16.1.1 eq www Il faut ensuite interdire tous les accs autres sur cet hte : deny ip any host 172.16.1.1 Pour le deuxime problme ncessite d'abord de dterminer les masques gnriques pour les diffrents groupes : Pour les adresses basses du groupe de serveurs : Adresse de sous-rseau : 192.168.200.0 Masque gnrique : 0.0.0.127 Pour les adresses hautes du groupe de serveurs : Adresse de sous-rseau : 192.168.200.128 Masque gnrique : 0.0.0.127 Pour les adresses du rseau Administration de Bachelard : Adresse de sous-rseau : 172.16.0.128 Masque gnrique : 0.0.0.63 Pour les adresses du rseau Bachelard : Adresse de sous-rseau : 172.16.0.128 Masque gnrique : 0.0.0.127

irisbachelard.free.fr/index.php?idPage

8/9

24/03/2011

ACL d'un routeur CISCO

Nous allons d'abord autoriser (permit) aux htes de l'administration l'accs aux adresse suprieures du groupe de serveurs pour tous les protocoles (ip) : permit ip 172.16.0.192 0.0.0.63 192.168.200.128 0.0.0.127 et interdire l'accs ces serveurs par tous les htes autres : deny ip any 192.168.200.128 0.0.0.127 Nous allons autoriser tous les htes du rseau Bachelard l'accs aux adresses infrieures : permit ip 172.16.0.128 0.0.0.127 192.168.200.0 0.0.0.127 Tous les paquets des autres htes (pirates n'ayant pas une adresse de rseau correcte) seront rejets. deny ip any 192.168.200.0 0.0.0.127 Le troisime problme peut tre rsolu par l'interdiction (deny) de tous les accs (ip et any) l'hte (host) 192.168.150.1. deny ip any host 192.168.150.1 Il a t dfini que tout ce qui n'est pas interdit, est autoris, il faut ajouter une permission (permit) pour tous les protocoles (ip) de tous les htes (any) vers tous les htes (any). permit ip any any

irisbachelard.free.fr/index.php?idPage

9/9

You might also like