Editar ACLs en Cisco
Muchas de las veces que tenemos que editar una ACL para insertar una IP o borrar otra lo que hacemos es borrar la ACL por completo y metemos la ACL completa rectificad de nuevo, pero podemos hacerlo mucho más simple insertando y borrando reglas de una en una.
El método clásico sería copiar la ACL, borrarla y volver a crearla modificada (el primer paso es crear el ACL aunque se supone que ya está creada):
router#configure terminal router(config)#access-list 121 deny icmp any any router(config)#access-list 121 permit ip any any
router#show access-list Extended IP access list 121 deny icmp any any permit ip any any
router#configure terminal router(config)#no access-list 101 deny icmp any anyNOTA: Si intentamos borrar una SOLA línea también borrará la ACL por completo.
router#show access-list router#
Si intentamos añadir una línea lo hará al final que seguramente no sea lo que queramos especialmente si poner al final algún tipo de DENY, los líneas añadidas estarán por debajo del DENY y por lo tanto serán ignoradas.
Para insertar podemos hacer lo siguiente:
router#show access-list 121 Extended IP access list 121 10 deny icmp any any 20 permit ip any any
router#configure terminal router(config)#ip access-list extended 121 router(config-ext-nacl)#6 permit icmp 10.0.0.0 0.0.0.255 any
router#show access-list 121 Extended IP access list 121 6 permit icmp 10.0.0.0 0.0.0.255 any 10 deny icmp any any 20 permit ip any any
Lo mismo para borrar una línea concreta que se puede hacer de dos formas:
router#show access-list 121 Extended IP access list 121 10 deny icmp any any 20 permit ip any any
router#configure terminal router(config)#ip access-list extended 121
router#no 1
router#no deny icmp any any
router#show access-list 121 Extended IP access list 121 6 permit icmp 10.0.0.0 0.0.0.255 any 20 permit ip any any
Podemos encontrarnos el caso de que queramos insertar una ACL y no podamos por no tener un hueco donde queremos insertar la ACL como por ejemplo:
router#show access-list 121 Extended IP access list 121 1 permit icmp 10.0.1.0 0.0.0.255 any 2 permit icmp 10.0.2.0 0.0.0.255 any 3 permit ip any any
Si queremos negar el ping a la IP 10.0.2.23 deberíamos añadir la ACL antes de la línea 2 para que surta efecto pero no podemos porque no hay un número donde podamos insertar con lo cual debemos renumerar la ACL de la siguiente forma:
router(config)#ip access-list resequence 121 100 20 router(config)#exit router#show access-list 121 Extended IP access list 121 100 permit icmp 10.0.1.0 0.0.0.255 any 120 permit icmp 10.0.2.0 0.0.0.255 any 140 permit ip any any
Ahora ya podemos insertar la ACL que necesitabamos.
El formato del comando es: ip access-list resequence ACL inicio intervalo.
Para una completa compresión de las ACL podemos ir a la web de Cisco que explica detalladamente las ACLs: Configuring IP Access Lists.