Comment créer et configurer une liste de contrôle d'accès
UnListe de contrôle d'accès (ACL)est un outil utilisé pour appliquer les politiques de sécurité informatique. Il spécifie quels utilisateurs ou processus système (sujets) ont accès aux ressources (objets), ainsi que quelles opérations sont autorisées sur des objets donnés.
Toute tentative d'accès d'un sujet à un objet qui n'a pas d'entrée correspondante dans la configuration ACL sera refusée. Cela signifie que la façon dont vous appliquez la liste d’accès détermine ce que fait réellement la liste d’accès.
Il existe de nombreux cas d'utilisation des listes d'accès. Par exemple, si vous appliquez votre liste d’accès à…
- Une interface, puis tout trafic identifié par votre liste d'accès est autorisé via cette interface.
- UN traduction d'adresse réseau (NAT), tout trafic identifié par la liste d'accès est traité via un NAT.
- UN VPN configuration, le trafic que vous identifiez avec votre liste d'accès est ensuite crypté et envoyé via le tunnel VPN.
- Une feuille de route, puis toutes les publicités correspondant à vos listes d'accès sont acceptées par un processus de routage.
- Qualité de service (QoS), quel que soit le trafic correspondant à votre liste d'accès, il sera priorisé ou dépriorisé en conséquence.
Pour les besoins de cet article, nous allons nous concentrer sur la liste d'accès appliquée aux interfaces car il s'agit du cas d'utilisation le plus courant d'une liste d'accès. Par exemple, vous pouvez configurer une liste d'accès sur un pare-feu interface pour autoriser uniquement certains hôtes à accéder aux ressources Web sur Internet tout en en limitant les autres. Avec la bonne combinaison de listes d’accès, les responsables de la sécurité obtiennent le pouvoir dont ils ont besoin pour appliquer efficacement les politiques de sécurité.
Systèmes d'exploitation Les configurations des applications, des pare-feu et des routeurs dépendent des listes de contrôle d'accès pour fonctionner correctement. Lorsque vous créez une liste d'accès sur un routeur, elle est inactive jusqu'à ce que vous disiez à ce routeur quoi en faire et à quelle direction de trafic vous souhaitez que la liste d'accès s'applique : entrante ou sortante.
Lorsqu'une liste d'accès est appliquée à paquets entrants sur une interface, ces paquets sont traités via la liste d'accès avant d'être acheminés vers l'interface sortante. Tous les paquets refusés ne seront pas acheminés car ils sont rejetés avant que le processus de routage ne soit invoqué. Lorsqu'une liste d'accès est appliquée à paquets sortants sur une interface, ces paquets sont acheminés vers l'interface sortante puis traités via la liste d'accès avant d'être mis en file d'attente.
Types de listes d'accès
Il existe deux principaux types de listes d'accès : l'ACL standard et l'ACL étendue.
Liste de contrôle d'accès standard
Les ACL standard constituent le type de liste de contrôle d'accès le plus ancien. Ils sont utilisés pour filtrer le trafic réseau en examinant la source adresse IP dans un paquet. Vous créez une liste d'accès IP standard en utilisant les numéros de liste d'accès compris entre 1 et 99 ou entre 1 300 et 1 999 (plage étendue). En utilisant ces numéros, vous indiquez au routeur que vous souhaitez créer une liste d'accès IP standard. Le routeur attendra donc une syntaxe spécifiant uniquement l'adresse IP source.
Les caractères génériques sont utilisés avec les listes d'accès pour spécifier un hôte individuel, un réseau ou une certaine plage.
de réseaux. Le masque générique indique au routeur quelles parties d'une adresse IP doivent correspondre à la liste d'accès et lesquelles ne doivent pas correspondre. Il accorde ensuite tout ou rien à tout ce qui provient de ce réseau.
Les ACL standard ne se soucient pas de la destination des paquets, mais plutôt de leur provenance. Lorsque vous devez décider en fonction des adresses source et de destination, une liste d’accès standard ne vous permettra pas de le faire puisqu’elle décide uniquement en fonction de l’adresse source. L’incapacité des ACL standard à rechercher une adresse de destination la rend inefficace dans de tels scénarios. C’est là que l’ACL étendue entre en jeu.
Liste de contrôle d'accès étendue
Les ACL étendues étendent les fonctionnalités des ACL standard en examinant non seulement la source mais également la destination. Il permet de préciser l'adresse source et destination ainsi que le protocole et les numéros de port TCP et UDP qui les identifient. En utilisant des listes d'accès étendues, vous pouvez efficacement autoriser les utilisateurs à accéder à un réseau local physique et les empêcher d'accéder à des hôtes spécifiques, voire à des services spécifiques sur ces hôtes.
Dans les moyennes et grandes entreprises, la gestion des listes d'accès peut devenir difficile et compliquée au fil du temps, en particulier à mesure que la quantité d'ACL numérotées augmente. Dans de tels scénarios, les listes d’accès standard et étendues deviennent inappropriées. Cela nous amène au concept de liste d’accès nommée.
Liste de contrôle d'accès nommée
Les listes d'accès nommées ne sont qu'un autre moyen de créer des listes d'accès standard et étendues. Il vous permet d'utiliser des noms pour créer et appliquer des listes d'accès standard ou étendues. Les ACL nommées permettent de donner des noms aux ACL standard et étendues au lieu de numéros. Elles sont plus pratiques que les listes d'accès numérotées car vous pouvez spécifier un nom significatif, plus facile à retenir et à associer à une tâche. Vous pouvez réorganiser les instructions ou ajouter des instructions à une liste d'accès nommée. Le nom peut être significatif et indiquer l’objectif de la liste. Ceci est particulièrement important à des fins de documentation et de maintenance.
Comment fonctionnent les listes de contrôle d'accès
Les instructions de liste d'accès fonctionnent à peu près comme les filtres de paquets utilisés pour comparer les paquets ; ou des instructions conditionnelles telles que les instructions if-then dans la programmation informatique. Si une condition donnée est remplie, alors une action donnée est entreprise. Si la condition spécifique n'est pas remplie, rien ne se passe et l'instruction suivante est évaluée.
Il y a deux points clés sur un routeur pour lesquels une décision de filtrage doit être prise lorsque les paquets transitent par le routeur :
- En paquetarrivedans l'interface du routeur (Entrée)
- En paquetfeuillesl'interface du routeur (Quitter)
Les conditions ACL peuvent être appliquées à ces emplacements. Lorsque les conditions ACL sont appliquées à l'entrée du routeur, cela s'appelle un entrant filtre. Lorsqu'il est appliqué au point de sortie, on parle d'un sortant filtre. Les ACL entrantes filtrent le trafic avant que le routeur ne décide et doivent être placées dans l'interface d'entrée. Les ACL sortantes filtrent le trafic après la décision du routeur et doivent être placées dans l'interface de sortie. Une condition de filtre ACL a deux actions : autoriser et refuser. Nous pouvons autoriser certains types de trafic tout en en bloquant d’autres, ou bloquer certains types de trafic tout en en autorisant d’autres. Une fois appliquée, l'ACL filtrera chaque paquet passant par l'interface. Cela amène le pare-feu ou le routeur à analyser chaque paquet passant par cette interface dans la direction spécifiée et à prendre l'action appropriée.
Il existe quelques règles importantes qu'un paquet suit lorsqu'il est comparé à une liste d'accès :
- Il est toujours comparé à chaque ligne de la liste d'accès dans un ordre séquentiel en commençant par la première ligne de la liste d'accès, jusqu'à la deuxième et la troisième ligne selon le cas.
- Il est comparé aux lignes de la liste d'accès uniquement jusqu'à ce qu'une correspondance soit établie. Une fois que le paquet correspond à la condition sur une ligne de la liste d'accès, le paquet est traité et aucune autre comparaison n'a lieu.
- Il y a un « refus » implicite à la fin de chaque liste d’accès : cela signifie que si un paquet ne correspond à la condition d’aucune des lignes de la liste d’accès, le paquet sera rejeté.
Concepts de base des réseaux : ce que vous devez savoir
Avant de pouvoir maîtriser pleinement l'art de la configuration et de la mise en œuvre contrôle d'accès liste, vous devez comprendre deux concepts de réseau importants : le masque de sous-réseau et le masque générique.
Masque de sous-réseau : Les masques de sous-réseau sont utilisés par un ordinateur pour déterminer si un ordinateur se trouve sur le même réseau donné ou sur un réseau différent. Un masque de sous-réseau IPv4 est une séquence de 32 bits de uns (1) suivie d'un bloc de zéros (0). Les uns désignent le préfixe du réseau, tandis que le bloc de zéros final désigne l'identifiant de l'hôte. Dans un masque de sous-réseau, ce sont les bits du réseau, ceux (les 1) qui nous intéressent le plus. Dans Sous-réseaux VLSM ou notation CIDR , nous utilisons /24, ce qui signifie simplement qu'un masque de sous-réseau a 24 uns et le reste sont des zéros.
adresse IP | 11000000.00000000.00000010.10000010 | /24 | 192.0.2.130 |
Masque de sous-réseau | 11111111.11111111.11111111.00000000 | /24 | 255.255.255.0 |
Tableau 1.0 Adresse IP et masque de sous-réseau au format binaire et décimal
Masque générique : Un masque générique est très similaire à un masque de sous-réseau, sauf que les uns et les zéros sont inversés. C'est tout le contraire d'un masque de sous-réseau. Partout où il y a un (1), vous le remplacez par un zéro (0), et partout où il y a un zéro (0), vous le remplacez par un 1 (un).
Pour calculer votre masque générique à partir du masque de sous-réseau, soustrayez simplement votre masque de sous-réseau de 255.255.255.255. Par exemple, si vous devez soustraire le masque de sous-réseau /24 de l'adresse ci-dessus, c'est-à-dire : 255.255.255.255 – 255.255.255.0 = 0.0.0.255. Comme vous pouvez le voir, vous arriverez à un masque générique de 0.0.0.255. Si vous configurez une liste d'accès avec une adresse IP ayant une notation CIDR, vous devez utiliser un masque générique.
Tableau 2.0 Adresse IP et masque de sous-réseau au format binaire et décimal
Veuillez noter les points suivants lorsque vous utilisez un caractère générique :
- Chaque fois qu'un zéro (0) est présent dans un caractère générique, cela signifie que l'octet de l'adresse doit correspondre exactement. Par exemple, l'utilisation de 172.16.30.0 0.0.0.255 indique au routeur de faire correspondre exactement les trois premiers octets.
- Chaque fois qu'un 255 est présent dans un caractère générique, cela signifie que l'octet de l'adresse peut avoir n'importe quelle valeur. Par exemple, l'utilisation de 172.16.30.0 0.0.0.255 indique au routeur que le quatrième octet peut avoir n'importe quelle valeur.
- Le caractère générique est toujours un nombre inférieur à la taille du bloc. Par exemple, si vous avez utilisé une taille de bloc de 8, le caractère générique serait 7.
Comment créer une liste d'accès standard
Avec ce qui précède, nous allons maintenant vous montrer comment créer une liste d’accès standard. Voici maintenant la syntaxe utilisée pour créer une liste d'accès standard :
|_+_|La répartition des différentes parties de la syntaxe est la suivante :
- <1-99 or 1300-1999>Spécifie la plage de numéros IP ACL standard
- PermisSpécifie le paquet à transférer (vers permis le trafic d'adresse IP source configuré)
- RefuserSpécifie les paquets à rejeter (c'est-à-dire (à refuser le trafic d'adresse IP source configuré)
- Adresse-sourceL'adresse IP source qui doit correspondre
- Caractère générique sourceLe masque générique à appliquer à l’adresse IP précédemment configurée pour indiquer la plage.
adresse IP | 11000000.00000000.00000010.10000010 | /24 | 192.0.2.130 |
Masque de sous-réseau | 11111111.11111111.11111111.00000000 | /24 | 255.255.255.0 |
Masque générique | 00000000.00000000.00000000.11111111 | /24 | 0.0.0.255 |
Tableau 2.0 Adresse IP et masque de sous-réseau au format binaire et décimal
Veuillez noter les points suivants lorsque vous utilisez un caractère générique :
- Chaque fois qu'un zéro (0) est présent dans un caractère générique, cela signifie que l'octet de l'adresse doit correspondre exactement. Par exemple, l'utilisation de 172.16.30.0 0.0.0.255 indique au routeur de faire correspondre exactement les trois premiers octets.
- Chaque fois qu'un 255 est présent dans un caractère générique, cela signifie que l'octet de l'adresse peut avoir n'importe quelle valeur. Par exemple, l'utilisation de 172.16.30.0 0.0.0.255 indique au routeur que le quatrième octet peut avoir n'importe quelle valeur.
- Le caractère générique est toujours un nombre inférieur à la taille du bloc. Par exemple, si vous avez utilisé une taille de bloc de 8, le caractère générique serait 7.
Comment créer une liste d'accès standard
Avec ce qui précède, nous allons maintenant vous montrer comment créer une liste d’accès standard. Voici maintenant la syntaxe utilisée pour créer une liste d'accès standard :
|_+_|La répartition des différentes parties de la syntaxe est la suivante :
- <1-99 or 1300-1999>Spécifie la plage de numéros IP ACL standard
- PermisSpécifie le paquet à transférer (vers permis le trafic d'adresse IP source configuré)
- RefuserSpécifie les paquets à rejeter (c'est-à-dire (à refuser le trafic d'adresse IP source configuré)
- Adresse-sourceL'adresse IP source qui doit correspondre
- Caractère générique sourceLe masque générique à appliquer à l’adresse IP précédemment configurée pour indiquer la plage.
La figure 1.0 ci-dessus montre un interréseau de deux routeurs avec trois LAN dont une connexion WAN série pour une entreprise de logistique. En tant qu'ingénieur réseau de cette entreprise, il vous a été demandé d'utiliser une liste d'accès standard pour empêcher les utilisateurs de l'unité d'administration d'accéder au serveur d'opérations connecté au routeur_distant tout en autorisant tous les autres utilisateurs à y accéder. ET .
Tout d'abord, vous devez déterminer le caractère générique de la liste d'accès (qui est essentiellement l'inverse du masque de sous-réseau) et où placer la liste d'accès. En règle générale, les listes d'accès standard sont placées le plus près de la destination, dans ce cas, l'interface E0 du Remote_Router. Ainsi, afin de réaliser cette implémentation, nous allons configurer une liste de contrôle d'accès et l'appliquer sur l'interface sortante E0 du Remote_Router. Voici les paramètres requis pour cette configuration.
- Identifiant du réseau :192.168.10.128
- Caractère générique :255.255.255.255 – 255.255.255.224 = 0.0.0.31
Le tableau ci-dessous présente une répartition des commandes de liste d'accès à utiliser pour cette tâche.
Remote_Router#config t | Entrez en mode de configuration globale |
Remote_Router(config)#access-list 10 refuser 192.168.10.128 0.0.0.31 | Refuser l'accès LAN administrateur au serveur d'opérations |
Remote_Router(config)#access-list 10 autorise tout | Autoriser tout le monde |
Routeur_distant (config)#interface Ethernet 0 | Entrer en mode de configuration de l'interface |
Remote_Router (config-if) #ip access-group 10 sorties | Appliquer la liste d'accès est sur l'interface en tant que liste sortante |
Confirmer l'entrée dans la liste d'accès | |
Remote_Router#afficher les listes d'accès | Afficher toute la liste d'accès configurée |
Supprimer la liste d'accès | |
Remote_Router (config) # pas de liste d'accès 10 | Supprimer l'intégralité de l'entrée de la liste d'accès |
Routeur_distant(config)#end | Revenir au mode d'exécution précédent |
Listes d'accès Remote_Router#sh | Confirmez si la liste d'accès a été supprimée |
# de routeur_distant | Rien à afficher, la liste d'accès supprimée |
Comment créer une liste d'accès étendue
Nous allons maintenant vous montrer comment créer une liste d'accès étendue. Voici la syntaxe de commande pour configurer une liste de contrôle d’accès numérotée étendue :
|_+_|La répartition des différentes parties de la syntaxe ci-dessus est la suivante :
- <100-199 or 2000-2699>Spécifie la plage de numéros IP ACL standard
- Autoriser ou refuserSpécifie s'il faut autoriser ou refuser le trafic selon les critères suivants
- ProtocoleLe type de protocole, c'est-à-dire IP, TCP, UDP, ICMP ou autre sous-protocole IP
- Adresse-sourceL'adresse IP source qui doit correspondre
- Caractère générique sourceLe masque générique à appliquer à l’adresse IP précédemment configurée pour indiquer la plage.
- Adresse de destinationL'adresse IP de destination qui doit correspondre
- Caractère générique de destinationLe masque générique associé à appliquer.
En tant que gestionnaire de réseau pour le réseau illustré à la figure 1.0 ci-dessus, il vous a été demandé de configurer une liste d'accès qui s'arrêtera FTP et l'accès Telnet au serveur d'opérations tout en autorisant d'autres protocoles.
Cette tâche implique l'utilisation d'une liste d'accès étendue. Afin de réaliser cette implémentation, nous allons configurer une liste de contrôle d'accès à l'aide des numéros de port FTP et telnet et l'appliquer sur l'interface sortante E0 du Remote_Router. Voici les paramètres requis pour cette configuration :
- Identifiant du réseau :192.168.10.192
- Caractère générique :255.255.255.255 – 255.255.255.224 = 0.0.0.31
- Numéro de port FTP :vingt-et-un
- Numéro de port Telnet :23
Le tableau ci-dessous présente la répartition des commandes et configurations de la liste d'accès qui peuvent être utilisées pour implémenter cette tâche :
Remote_Router#config t | Entrez en mode de configuration globale |
Remote_Router (config) #access-list 120 refuser TCP any 192.168.10.192 0.0.0.31 eq 21 | Refuser l'accès FTP au serveur d'opérations sur l'interface E0 |
Remote_Router (config) #access-list 120 refuser TCP tout 192.168.10.192 0.0.0.31 eq 23 | Refuser l'accès telnet au serveur d'opérations sur l'interface E0 |
Remote_Router (config) #access-list 120 autorisation IP n'importe quel | Autoriser tous les autres paquets/protocoles |
Routeur_distant (config)#interface Ethernet 0 | Entrez dans le mode de configuration de l'interface pour E0 |
Remote_Router (config-if) #ip access-group 120 out | Appliquer la liste d'accès sur l'interface E0 en tant que liste sortante |
Conclusion
Les ACL peuvent être un outil efficace pour améliorer la sécurité de votre organisation. Mais rappelez-vous toujours qu'aucune action ne sera entreprise tant que la liste d'accès ne sera pas appliquée sur une interface dans une direction spécifique.
Cependant, si vous n’y prêtez pas suffisamment attention, des erreurs de configuration peuvent survenir. Toute mauvaise configuration des politiques d'accès au réseau sur votre pare-feu ou votre routeur peut entraîner une exposition indésirable du réseau. Cependant, grâce à une planification minutieuse et au respect des meilleures pratiques telles que le principe du moindre privilège et d’autres règles ACL importantes, la plupart de ces problèmes peuvent être évités. Chacune de ces règles a des implications puissantes lors du filtrage des paquets IP avec des listes d'accès. Gardez donc à l’esprit que la création de listes d’accès efficaces demande en réalité un peu de pratique.
FAQ sur la liste de contrôle d'accès
Dans quelle configuration un placement d'ACL sortante serait-il préféré à un placement d'ACL entrante ?
Une ACL sortante doit être utilisée pour une interface sortante. Il filtrera les paquets arrivant de plusieurs interfaces entrantes avant que les paquets ne quittent l'interface.
Dans quel mode de configuration devez-vous être pour créer une nouvelle ACL ?
Vous devez être en mode EXEC privilégié pour créer une nouvelle ACL. Accédez-y en entrant la commande activer .
Quelle commande de configuration de carte de route correspond aux routes identifiées par une ACL ou une liste de préfixes ?
Afin de configurer une feuille de route pour qu'elle corresponde à une liste ACL, vous devez d'abord créer la feuille de route avec la commande :
le plan de route nom { permis | refuser } [ numéro de séquence ]
Ensuite, lancez la commande :
correspondre adresse IP acl_id [ acl_id ] [...] [ liste-préfixes ]
Quelle est la syntaxe de commande pour accéder au mode de configuration IPv6 ACL ?
Vous pouvez utiliser IPv6 dans une liste d'accès et mettre le routeur en mode de configuration de liste d'accès IPv6 avec la commande :
liste d'accès ipv6 nom