1. RedesChile.NET 2010
Access List (ACL)
Una Lista de Control de Acceso o ACL (del inglés, Access Control List) es un concepto de
seguridad informática usado para fomentar la separación de privilegios. Es una forma de
determinar los permisos de acceso apropiados a un determinado objeto, dependiendo de ciertos
aspectos del proceso que hace el pedido.
Las ACLs permiten controlar el flujo del tráfico en equipos de redes, tales como routers y
switches. Su principal objetivo es filtrar tráfico, permitiendo o denegando el tráfico de red de
acuerdo a alguna condición. Sin embargo, también tienen usos adicionales, como por ejemplo,
distinguir "tráfico interesante" (tráfico suficientemente importante como para activar o mantener
una conexión) en VPN.
Cisco define 5 tipos ACL siendo las dos más importantes la estándar y la extendida.
La ACL estándar debe estar ubicada los más cerca del destino de la transmisión de los
datos.
Por su parte la ACL extendida debe estar ubicada lo más cerca del origen de la transmisión
de datos.
Las ACL estándar se utilizan para filtrar todo tipo de tráfico. Esto en contraposición de las
ACL extendidas cuya función es filtrar un protocolo en especial.
Finalmente es importante recordar que las ACL se identifican con un número. Las estándar
van en el rango 1-99 y las extendidas en el rango 100-199.
Rafael Medina Mardones Página 1
2. RedesChile.NET 2010
Dicho esto nos centraremos en lo más complicado a la hora de generar una ACL…. Las
wildcards.
Construcción de ACL
Las wildcards en una ACL nos indicaran hasta donde o mejor dicho hasta que host estamos
realizando una determinada operación. Es decir nos permiten seleccionar un rango de host, donde
el inicio es la dirección IP de la ACL y el termino de rango es la wildcard.
Por otro lado es muy importante recordar que en una wildcard solo se permiten los siguientes
números: 0, 1, 3, 7, 15, 31, 63, 127 y 255.
Vamos a los ejemplos:
Ejemplo 1
Construya una ACL que deniegue todo el trafico de la red 192.168.0.0/24 hacia la red
10.0.0.0/24
Rafael Medina Mardones Página 2
3. RedesChile.NET 2010
LO PRIMERO QUE DEBEMOS DETERMINAR ES QUE TIPO DE ACL ES EL INDICADO…… EN ESTE
EJEMPLO ES UNA ACL ESTANDAR YA QUE SE PIDE DENEGAR TODO EL TRAFICO.
LUEGO DEBEMOS SABER EN QUE ROUTER IRA LA ACL…………. EN ESTE CASO EN R2, YA QUE ES EL
ROUTER MAS CERCANO AL DESTINO.
FINALMENTE DEBEMOS RECONOCER EN QUE INTERFAZ APLICAR LA ACL………… EN ESTE CASO LA
F0/0 YA QUE ES LA INTERFAZ MAS CERCANA AL DESTINO.
OK ahora que ya sabemos lo esencial construyamos la ACL.
R2(config)#access-list 1 deny 192.168.0.0 0.0.0.255
R2(config)#access-list 1 permit any
R2(config)#interface fastEthernet 0/0
R2(config-if)#ip access-group 1 out
Rafael Medina Mardones Página 3
4. RedesChile.NET 2010
OK fíjate en la primera línea. El inicio del rango de aplicación de la ACL es la ip 192.168.0.0 y
termina en exactamente 0.0.0.255 host mas……. Este valor 0.0.0.255 es la wildcard.
Pero ¿como podemos revisar manualmente hasta donde avanza la IP con la wildcard que
utilizamos? La respuesta es simple…..
CONVIERTE A BINARIO Y APLICA LO SIGUIENTE: LOS 0 EN LA WILDCARD OBLIGAN Y LOS 1 OMITEN
Que quiero decir con esto…………. Si tienes un 0 en la WC entonces estas obligado a recibir el
mismo bit de la IP. Pero si tienes un 1 en la WC marca una X por que da lo mismo, es decir omite
IP 0 0 0 0 0 0 0 0
WILDCARD 1 1 1 1 1 1 1 1
x x x x x x x x
Finalmente reemplaza todas las X por un 1 para posteriormente convertir a decimal (en el caso del
ejemplo 11111111 es decir 255).
Entonces llegamos a 255 y por lo tanto abarcamos toda la red.
Ejemplo 2
Rafael Medina Mardones Página 4
5. RedesChile.NET 2010
Construya una ACL que deniegue todo el trafico de los host 100 al 200 de la red
192.168.0.0/24 hacia la red 10.0.0.0/24
LOS PRINCIPIOS BASICOS DE ESTE PROBLEMA SON LOS MISMOS DEL ANTERIOR EJEMPLO….
ESTAMOS FRENTE A UNA ACL ESTANDAR PARA SER CONFIGURADA EN R2 EN SU INTERFAZ F0/0.
LO QUE CAMBIA ES LA APLICACIÓN DE LAS WILDCARD, YA QUE CUANDO TRABAJAS CON RANGOS
ESPECIFICOS ES UN POCO MAS DIFICIL.
Veamos como quedan los cálculos:
Rafael Medina Mardones Página 5
6. RedesChile.NET 2010
WILDCARD
128 64 32 16 8 4 2 1 MAXIMO WILDCARD A UTILIZAR
IP (100) 0 1 1 0 0 1 0 0 0.0.0.3 0.0.0.3
IP (104) 0 1 1 0 1 0 0 0 0.0.0.7 0.0.0.7
IP (112) 0 1 1 1 0 0 0 0 0.0.0.15 0.0.0.15
IP (128) 1 0 0 0 0 0 0 0 0.0.0.127 0.0.0.63
IP (192) 1 1 0 0 0 0 0 0 0.0.0.63 0.0.0.7
IP (200) 1 1 0 0 1 0 0 0 0.0.0.7 0.0.0.0
Si no entendiste nada……… PON ATENCIÓN A ESTO:
PASO 1:
Transformar a binario la IP de inicio (en este caso la 100)
PASO 2:
Sumar todos los 0 que se ubiquen al final del binario y que estén de forma continua (en la
primera línea son los últimos 2 dígitos, en la segunda línea los últimos 3 dígitos, en la cuarta línea
los últimos 7 dígitos, etc, etc, etc).
Esta suma te dará como resultado la wildcard mas grande que puedes utilizar. NADA más
grande que eso, podrías utilizar una wildcard menor, pero jamás una mayor.
PASO 3:
Suma la IP + la wildcard (en el caso de la primera línea 100 + 3 = 103), esto dará como
resultado hasta que IP avanzo la wildcard (en este caso la 103, por lo tanto la próxima línea de la
ACL comenzara en la IP 104).
PASO 4:
Vuelve al paso 1 y repite hasta llegar al final del rango solicitado
AHORA VAMOS A OBSERVAR LA LINEA CORRESPONDIENTE A LA IP 128. ESTO POR QUE LA
WILDCARD MAS GRANDE QUE PODEMOS UTILIZAR ES LA 127, PERO CON ESTO QUEDAMOS SOBRE
Rafael Medina Mardones Página 6
7. RedesChile.NET 2010
EL RANGO SOLCITADO……….. ENTONCES UTILIZAREMOS UNA WILDCARD MAS PEQUEÑA, PERO
QUE SE NOS ACERQUE LO MAS POSIBLE A NUESTRO DESTINO (EN ESTE CASO 200) POR LO TANTO
UTILIZAREMOS LA 63.
FINALMENTE QUIERO EXPLICAR LA ULTIMA LINEA LA IP 200…. AQUÍ HEMOS UTILIZADO LA
WILDCARD 0 TAMBIEN CONOCIDA COMO DE HOST YA QUE ESTA SIMPLEMENTE ABARCA UNA IP
(EN ESTE CASO LA 200…………. PARA SER MAS CLAROS 200 + 0 = 200).
ENTONCES LA ACL QUEDA ASI:
R2(config)#access-list 1 deny 192.168.0.100 0.0.0.3
R2(config)#access-list 1 deny 192.168.0.104 0.0.0.7
R2(config)#access-list 1 deny 192.168.0.112 0.0.0.15
R2(config)#access-list 1 deny 192.168.0.128 0.0.0.63
R2(config)#access-list 1 deny 192.168.0.192 0.0.0.7
R2(config)#access-list 1 deny 192.168.0.200 0.0.0.0
R2(config)#access-list 1 permit any
R2(config)#int f0/0
R2(config-if)#ip access-group 1 out
Rafael Medina Mardones Página 7