Table des matières

ACL Cisco

Cisco offre sur ses matériels de niveau 3 la possibilité de réaliser du filtrage du trafic : on parle d'ACL (Access Control List) qui s'appliquent sur les interfaces du matériel, soit en entrée (IN) ou en sortie (OUT).

Principes

Définition et affectation aux interfaces

Les ACL se configurent de la manière suivante :

On ne peut affecter qu'une ACL sur une interface dans chaque sens (1 en out/ 1 en in)

Ressources

Analyse du trafic et application des règles

Lors de l'analyse du trafic, le principe général du filtrage s'applique :

Les ACL

Cisco offre deux types d'ACL :

Syntaxe ACL Standard

Les ACL standard effectuent un filtrage sur l'adressage IP source. Elles peuvent donc servir à :

Syntaxe

access-list <numero1à99> <action> <ipsource> <masqueInversé>

Le masque inversé s'écrit à l'opposé du masque de réseau : on place un 0 là ou on veut étudier l'information, et un 1 si on veut l'ignorer. Par exemple :

  • Masque inversé pour la classe C : 0.0.0.255
  • Masque inversé pour une adresse exacte : 0.0.0.0
  • Masque 255.255.192.0 inversé : 0.0.63.255

Exemple

access-list 1 permit 192.168.1.254 0.0.0.0 
access-list 1 deny 192.168.1 0.0.0.255

On peut voir la définition de l'ACL avec la commande show access-list :

Standard IP access list 1
    10 permit host 192.168.1.254
    20 deny 192.168.1.0 0.0.0.255

Syntaxe ACL étendues

Les ACL étendues correspondent à des règles de filtrage complètes. Elles peuvent porter sur :

Syntaxe

access-list <numero> <action> <protocole> <adresseSource> [<service>] <adresseDestination> [<service>]

La structure de la syntaxe dépendra du protocole choisi, certains éléments pouvant ne pas apparaître (les s<ervice> si on choisit IP comme protocole par exemple)

Information Détail
numero numéro compris entre 100 et 199 ou 2000 et 2699
action comportement de la règle :
* permit (autorise)
* deny (interdit)
protocole protocole de bas niveau (3 ou 4 du modèle OSI) utilisé
* icmp
* ip
* tcp
* udp
* protocoles de gestion de réseau (RIP, OSPF, GRE, BGP, etc)
adresseSource
ou
adresseDestination
* any : tout adressage
* host <ipMachine> : une machine précise
* <ipReseau> <masqueInversé> : un réseau ou sous-réseau IP
service Définit le ou les ports (source ou destination) à étudier
* eq :Match only packets on a given port number
* gt : Match only packets with a greater port number
* lt : Match only packets with a lower port number
* neq : Match only packets not on a given port number
* range :Match only packets in the range of port numbers

Exemples

access-list 101 permit tcp any host 192.168.1.254  eq www
access-list 102 permit udp 192.168.1.0 0.0.0.255 any eq domain
access-list 103 permit tcp host 192.168.1.30 host 172.20.2.2 eq 3306

ACL nommées et multi-règles

On peut choisir de nommer les ACL plutôt que de les gérer uniquement par des numéros.

On remplacera la syntaxe

access-list

par la version

ip access-list {extended|standard} <nom> 

suivi des règles à appliquer.

Exemples

Exemple 1 Définit les échanges du réseau depuis le LAN vers un serveur Web, tout serveur DNS et un échange précis entre une machine et un serveur Mysql. sera affectée sur l'interface LAN en in

ip access-list extended LAN
 permit tcp any host 172.20.1.254  eq www
 permit udp 192.168.1.0 0.0.0.255 any eq domain
 permit tcp host 192.168.1.30 host 172.20.2.2 eq 3306

Exemple 2 Définit les possibilités d'échange depuis les réseaux du LAN. Sera appliqué sur l'interface DMZ en out

ip access-list standard DMZ
 permit 192.168.1.0 0.0.0.255
 permit 192.168.20.0 0.0.0.255
 permit 10.20.0.0 0.0.255.255

Visualisation La commande show access-list affichera :

Extended IP access list LAN
    10 permit tcp any host 172.20.1.254 eq www
    20 permit udp 192.168.1.0 0.0.0.255 any eq domain
    30 permit tcp host 192.168.1.30 host 172.20.2.2 eq 3306
Standard IP access list DMZ
    10 permit 192.168.1.0 0.0.0.255
    20 permit 192.168.20.0 0.0.0.255
    30 permit 10.20.0.0 0.0.255.255

Affectation aux interfaces

Principes

Une fois les ACL définies, on doit les appliquer aux interfaces.

Sur une interface, on applique les règles en :

Sur une interface donnée et dans un sens (in/out), il ne peut y avoir qu'une ACL.

Syntaxe

On doit d'abord choisir l'interface, puis lui affecter l'ACL dans le sens désiré.

interface fa0/0 
ip access-group LAN in
exit
interface fa0/1
ip access-group DMZ out