ACL : Le manuel ultime pour la liste de contrôle d’accès (ACL)

La création d’une liste de contrôle d’accès (ACL) peut être compliquée, en particulier pour les personnes novices dans le monde des réseaux informatiques et de la sécurité informatique. Ce guide vous aidera à comprendre le fonctionnement des ACL et à mettre en évidence quelques exemples. Nous allons même vous apprendre à créer une liste de contrôle d’accès.

Qu’est-ce qu’une liste de contrôle d’accès (ACL) de toute façon?

Une liste de contrôle d’accès (ACL) définit les droits d’accès aux environnements numériques. Les ACL sont basées sur des règles permettant d’accorder ou de refuser l’accès lorsqu’un utilisateur tente d’accéder à des réseaux, des fichiers ou des répertoires au sein d’un système.

D’une manière générale, il existe deux segments principaux des listes de contrôle d’accès:

  • ACL de mise en réseau – Les ACL de mise en réseau filtrent l’accès à un réseau sécurisé. La liste contient des règles pour le type de trafic et d’activité autorisé sur le réseau. Les ACL de mise en réseau sont appliquées aux routeurs et aux commutateurs.
  • ACL du système de fichiers – Les ACL du système de fichiers sont appliquées aux systèmes d’exploitation. La liste indique au système d’exploitation à quoi les utilisateurs accèdent dans le système et quelles autorisations chaque utilisateur a une fois accordé l’accès.

Historiquement, les listes de contrôle d’accès étaient le seul moyen d’implémenter la protection par pare-feu sur un réseau. Même s’il existe aujourd’hui d’autres moyens d’obtenir une protection par pare-feu, de nombreuses entreprises utilisent encore des ACL combinées à des VPN (réseaux privés virtuels) pour définir le trafic à chiffrer sur le réseau.

Alors que les ACL sont le plus souvent associées aux réseaux et aux pare-feu, les organisations peuvent utiliser la méthode de sécurité pour protéger n’importe quel appareil du réseau.

Fonctionnement des listes de contrôle d’accès

ACL

Les ACL sont une table qui définit les privilèges d’un système d’exploitation ou d’un réseau.

Pour une liste de contrôle d’accès réseau, la liste contient les règles permettant de déterminer les mises à jour ou paquets de routage auxquels l’accès sera autorisé ou refusé à partir du réseau. L’ACL agit comme un filtre sur les routeurs et les commutateurs. Les critères de filtrage sont basés sur des éléments tels que la source de l’adresse IP, la destination de l’adresse IP, la procédure de paquet, le port source et le port de destination.

Les ACL des systèmes de fichiers fonctionnent un peu différemment, bien que le même concept de filtrage reste le même. Chaque objet système, comme les fichiers ou répertoires, est connecté à la liste de contrôle d’accès. La liste définit les utilisateurs qui ont accès à ces objets dans le système.

Les privilèges dans une ACL de système de fichiers vont au-delà du simple accès ou refus. Il est courant que les listes contiennent des autorisations étendues pour des choses comme la lecture d’un fichier, l’exécution d’un fichier ou l’écriture dans le fichier.

Lorsqu’un utilisateur de votre réseau demande une base de données particulière, le système d’exploitation se réfère à la liste de contrôle d’accès pour déterminer si l’action est autorisée.

En termes de contrôle d’accès à un niveau granulaire, de nombreuses organisations ont tendance à utiliser des listes de contrôle d’accès basé sur les rôles (RBAC) pour déterminer si une action est autorisée ou non. Par exemple, plutôt que de donner l’autorisation à Jesse, le développeur Web basé à Los Angeles, RBAC accorderait l’accès à tous les développeurs Web basés aux États-Unis. Jesse n’est que l’un des nombreux utilisateurs ayant le même rôle et les mêmes autorisations.

Les ACL sont meilleures pour appliquer la sécurité du réseau et du système au niveau individuel, et RBAC est meilleure pour les contrôles à l’échelle de l’organisation. Alors qu’une ACL peut définir l’accès en écriture pour des fichiers spécifiques, ces listes ne spécifient pas comment les utilisateurs peuvent modifier le fichier – RBAC le peut.

Les listes de contrôle d’accès sont idéales pour contrôler le flux de trafic réseau, restreindre le trafic réseau pour des performances optimales et ajouter une couche de sécurité à vos serveurs, réseaux et systèmes.

Voici les composants d’une liste de contrôle d’accès généralement requis pour les nouvelles entrées ACL:

  • Numéro de séquence – Un moyen d’identifier la nouvelle entrée avec un numéro.
  • Nom ACL – Au lieu d’utiliser des séquences de numéros, certains routeurs vous permettent de créer une entrée à l’aide d’un nom. Certains permettent une combinaison de lettres et de chiffres.
  • Remarque – Un commentaire qui peut vous aider à ajouter des descriptions dans l’ACL.
  • Déclaration – L’instruction indique à l’appareil s’il doit autoriser ou refuser la source.
  • Protocole réseau – Spécifie d’autoriser ou de refuser IP, IPX, TCP, ICMP, NetBIOS, UDP, etc.
  • Source ou destination – Définit si la source ou la destination est une plage d’adresses, toutes les adresses ou une seule adresse IP.
  • Enregistrer – Certains systèmes conservent un enregistrement de toutes les correspondances et activités de la liste de contrôle d’accès.

Certaines ACL avancées vous permettront de contrôler le trafic via des critères tels que la priorité DSCP, ToS et la priorité IP.

Examinons de plus près les principales catégories de listes de contrôle d’accès.

ACL standard

Les listes de contrôle d’accès standard sécurisent le réseau uniquement en utilisant l’adresse IP source.

La liste accordera ou refusera l’accès à l’ensemble de la suite de protocoles IP. Il n’y a pas de différenciation entre les types de trafic tels que TCP, HTTPS ou UDP. Les ACL standard utilisent strictement les numéros 1-99 ou 1300-1999 afin que les routeurs puissent identifier la source de l’adresse IP.

Les ACL standard sont basiques et faciles à déployer. Mais ils n’offrent pas la sécurité la plus robuste en raison de leurs limitations.

ACL étendus

Les listes de contrôle d’accès étendues peuvent différencier le trafic IP.

Vous pouvez donc filtrer le trafic en fonction de protocoles tels que TCP, IP, ICMP ou UDP. Les listes de contrôle d’accès étendues vous permettent également de bloquer la source et la destination pour des réseaux complets ou des hôtes uniques. Ces ACL utilisent les numéros 100-199 et 2000-2699.

ACL dynamiques

Les listes de contrôle d’accès dynamique sont également appelées configurations «verrouillage et clé».

Ces listes reposent sur des listes de contrôle d’accès étendues pour les protocoles et l’authentification telnet. La nature dynamique ici vous permet de définir des règles pour des délais spécifiques. Les utilisateurs peuvent accéder à une destination ou à une source uniquement s’ils ont été authentifiés via telnet.

ACL réflexives

Les listes de contrôle d’accès réflexives sont également appelées ACL de «session IP».

Ces listes filtrent le trafic réseau en fonction de la couche supérieure des informations de session. Pour les sessions provenant du routeur, les ACL réflexives décident de restreindre le trafic entrant ou d’autoriser le trafic sortant.

Le routeur reconnaît si le trafic est sortant et crée une nouvelle entrée de liste pour le trafic entrant. Une fois la session terminée, l’entrée est supprimée de l’ACL.

ACL Windows et Linux

Le système d’exploitation que vous utilisez aura un impact sur la liste de contrôle d’accès que vous créez.

Windows ne vous permet pas d’apporter des modifications au noyau – Linux le fait. Mais même avec la possibilité de modifier les noyaux dans votre système d’exploitation Linux, vous aurez probablement besoin d’un expert possédant la bonne expérience pour maintenir l’environnement.

De manière générale, Windows est plus facile et plus stable que Linux. Vous pouvez configurer des systèmes de contrôle d’accès directement dans une boîte Windows sans avoir besoin de matériel supplémentaire. Mais Linux est plus flexible que Windows.

Microsoft est la seule source dont vous disposez pour émettre des correctifs avec Windows. Linux autorise les correctifs open-source et les versions de correctifs des fournisseurs de systèmes d’exploitation commerciaux.

Exemple n ° 1: accès au service

Des départements spécifiques au sein d’une entreprise peuvent contenir des informations plus sensibles que d’autres. Par exemple, le service des ressources humaines disposera de fichiers d’employés contenant des données personnelles et des informations sur la paie.

Il n’y a aucune raison pour que l’équipe marketing, le service d’ingénierie, l’équipe de vente ou d’autres services accèdent à ces informations.

Pour sécuriser ces données, vous pouvez mettre en place une liste de contrôle d’accès qui autorise uniquement le service RH à accéder aux fichiers de paie.

Exemple n ° 2: blocage des activités IP suspectes

Disons que le service de sécurité informatique a remarqué des attaques malveillantes provenant d’une adresse IP spécifique.

Pour protéger le réseau contre les pirates et toute personne menant une activité malveillante à partir de cette adresse IP, ils peuvent créer une liste de contrôle d’accès qui bloque définitivement l’adresse IP du réseau de l’entreprise. Désormais, toutes les données de l’organisation sont protégées contre les activités IP suspectes.

Exemple n ° 3: contrôler le flux de trafic

Un autre cas d’utilisation potentiel des ACL est la possibilité de contrôler la quantité de trafic entrant sur votre réseau et la provenance de ce trafic.

Par exemple, disons que votre organisation dispose de plusieurs réseaux. Vous souhaitez limiter le trafic vers votre réseau financier pour optimiser les performances.

Vous refusez donc l’accès à certains hôtes sur un autre réseau, mais pas à d’autres. Tout dépend des paquets définis dans votre ACL.

Vous décidez peut-être d’autoriser le trafic réseau interne de votre serveur d’ingénierie sur un hôte mais pas sur l’autre. Par souci de simplicité, nous dirons que l’hôte A sur le réseau d’ingénierie se voit refuser l’accès au réseau financier et que l’hôte B est autorisé à accéder. Cela permet une certaine circulation, mais pas la totalité.

Comment démarrer avec les listes de contrôle d’accès (ACL)

Maintenant que vous avez une compréhension de base de ce que sont les ACL et comment elles peuvent être appliquées, il est temps de créer votre propre liste de contrôle d’accès. Voici les étapes tactiques nécessaires pour démarrer avec les ACL:

Étape 1: créer une liste de protocoles à filtrer

La première chose que vous devez faire est de déterminer ce que vous voulez spécifiquement filtrer avec une ACL. Si vous appliquez l’ACL à un réseau, la liste des protocoles peut ressembler à ceci:

Vous devez définir de manière unique chaque liste d’accès dans un protocole. Pour ce faire, attribuez un nom ou un numéro. Un nom ou un numéro peut définir certains protocoles, mais d’autres doivent être définis plus spécifiquement par l’un ou l’autre.

Si vous utilisez un nombre pour définir quelque chose dans la liste de contrôle d’accès, il doit se trouver dans une plage spécifique valide pour le protocole.

Par exemple, une plage d’adresses IP peut être 1-99 et 1300-1999.

Étape 2: définir les critères pour les paquets

Ensuite, vous devez définir les critères pour tous les paquets traités par le périphérique. Cela déterminera si les paquets seront transférés ou bloqués en fonction de la façon dont le paquet est défini sur la liste.

Il est courant que les listes d’accès contiennent des informations telles que l’adresse de destination des paquets, l’adresse source des paquets et le protocole de paquets de couche supérieure. Mais chacun aura son propre ensemble de règles que vous pourrez définir.

Pour les ACL uniques, vous aurez la possibilité de nommer plusieurs critères dans des instructions distinctes. Mais chaque instruction doit être liée au même numéro ou identifiant de nom de l’étape précédente.

Il n’y a pas de limite au nombre d’énoncés de critères. Vous n’êtes lié que par la mémoire de votre appareil. Mais il convient de noter que plus il y a d’instructions dans une ACL, plus il sera difficile de comprendre et de gérer la liste.

Une instruction implicite «refuser tout le trafic» est incluse à la fin de la liste de contrôle d’accès avec des périphériques de routage spécifiques. Si un paquet ne correspond pas aux critères définis, il sera automatiquement bloqué.

Si vous définissez les critères du filtrage entrant, assurez-vous d’inclure des instructions de critères explicites qui permettent le routage des mises à jour. Sinon, vous risquez de perdre la communication de l’interface si les mises à jour de routage sont bloquées par l’instruction de trafic deny-all.

L’ordre des instructions dans une liste de contrôle d’accès est crucial. Lorsqu’un périphérique tente de déterminer s’il doit autoriser ou bloquer ou envoyer des paquets, l’ACL sera vérifiée dans l’ordre dans lequel les instructions sont répertoriées.

Par exemple, si vous appliquez une instruction de critères qui autorise tout le trafic en haut de la liste, toutes les instructions ajoutées en dessous de cette ligne ne seront pas vérifiées.

Étape 3: appliquer les meilleures pratiques aux listes de contrôle d’accès

Les ACL sont compliquées. La différence entre la création d’une ACL réseau et une ACL de système de fichiers aura un impact sur les exigences techniques exactes que vous devez suivre.

La liste variera également en fonction d’éléments tels que votre système d’exploitation et les appareils que vous utilisez pour appliquer le contrôle d’accès. Comme mentionné ci-dessus, certains périphériques de routage ont un refus implicite de toutes les déclarations de trafic incluses dans la liste. Donc, votre routeur Cisco peut avoir cela, mais d’autres non.

Pour garantir le succès, appliquez les meilleures pratiques ACL suivantes à votre processus:

  • Mettez les entrées les plus spécifiques en haut de votre liste et les plus génériques en bas.
  • Profitez des remarques pour comprendre ce que fait l’entrée et pourquoi vous la mettez là.
  • Appliquez toujours les ACL aussi près que possible des sources de trafic.
  • Il est plus efficace d’appliquer l’ACL en entrée plutôt qu’en sortie car les paquets ont déjà été traités.
  • Assurez-vous que les ingénieurs font des commentaires sur les modifications afin de réduire le temps nécessaire pour rechercher la liste.
  • Utilisez un système qui dispose d’une piste d’audit pour tous les changements techniques et l’historique de l’ACL.
  • Configurez des notifications pour tout changement d’ACL en temps réel sur les périphériques réseau.