ACL

Publié le Auteur manuLaisser un commentaire

Les ACL, acess control list

– securité basique d’un routeur
– permet de filtrer les flux tentant de traverser le routeur (aussi ceux à destination du routeur)

Une ACL est une collection séquentielle d’instructions (ACE: access control entries) vérifiant des valeurs d’en-têtes (ip src, dst, proto, services …) aboutissant à une autorisation où un refus

Les ACL sont crées globalement et sont appliquées à une ou plusieurs interfaces pour un sens de traffic (entrant ou sortant), par protocole routé (ip, ipx, appletalk).
Il ne peut y avoir qu’une seule ACL sur une même interface dans le même sens.

On va du plus précis au plus général.

Il y a trois types d’ACL

ACL standard: avec un numéro entre 1 et 99, permet de vérifier l’IP sources des paquets. Elle doit donc être appliquée au plus proche de la destination

(config)# access-list 1 {permit|deny} ipsource wildcardmask (masque inversé)

ACL etendue: avec un numéro de 100 à 199, permet de vérifier IP source, IP dest, protocole (niveau 3: tcp, udp, icmp, ospf, eigrp, hsrp …), numéro de port (niveau 4). Il faut l’appliquer au plus proche de la source.

(config)# access-list 101 {permit|deny} protocole ipsource wildcardmask ipdest wildcardmask [operator operand] [log]

Operator: eq neq gt lt range
Operande: numéro de port ou type ICMP si le proto est le proto

ACL nommées: définies par un nom plutôt qu’un numéro, peut être standard ou étendue

(config)# ip access-list {standard|extended} nom
(config-stp|xtd)#{permit|deny} protocole ipsource wildcardmask ipdest wildcardmask [operator operand] [log]

Exemple

ip access-list extended MonACL1
permit ip 192.168.1.0 0.0.0.15 192.168.2.0 0.0.0.255
permit tcp 192.168.1.0 0.0.0.15 host 192.168.2.250 eq www
permit tcp 192.168.1.0 0.0.0.15 host 192.168.2.250 eq domain
permit udp 192.168.1.0 0.0.0.15 host 192.168.2.250 eq domain
deny ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
permit ip 192.168.1.0 0.0.0.255 any
end
conf t
int fa0/0
ip access-group MonACL1 in

Le wildcard mask: permet d’indiquer à quelle portion de l’IP on s’intéresse. Les bits à zéro sont vérifiés, pas ceux à 1.
Vérifier le pc 10.14.15.16 donne 10.14.15.16 0.0.0.0 ou host 10.14.15.16
Vérifier toues les ip donne 0.0.0.0 255.255.255.255.255 ou any
Vérifier les IP de 10.10.10.64 à 10.10.10.95: il y a 32 ip, 32 est une puissance de 2 et la permière IP (64) est un multiple de 32 soit 255.255.255.224 donc 0.0.0.31.
Le wildcard est le pas du réseau moins 1 donc ce sera 10.10.10.64 0.0.0.31

Vérifier le réseau de 172.16.0.0/16 à 172.31.0.0/16. On a 16 blocs, puissance de 2, et 16 (le premier réseau) est un multiple de 16, ce qui donne 172.16.0.0 0.15.255.255

Vérifier les IP de 192.168.1.1 à 192.168.1.15 donne 192.168.1.0 0.0.0.15

Appliquer une ACL:

(config-if)# ip access-group {n°|nom} {in|out}

Vérifier une ACL:

# show access-list

On peut appliquer une ACl aux linges vty

(config)# ip access-list standard VTY_ACCESS
permit host 10.0.0.1
deny any log
(config)# line vty 0 4
access-class VTY_ACCESS in

Laisser un commentaire