sábado, 6 de diciembre de 2014

ACL- Hernan Sarlo

ACL (Lista de control de acceso)
By Hernan Sarlo
¿Qué es una ACL?

Una ACL es una colección secuencial de sentencias de permiso o rechazo que se aplican
a direcciones o protocolos de capa superior. Los routers proporcionan capacidades de
filtrado de tráfico a través de las listas de control de acceso (ACL).

 Las ACL son listas de instrucciones que se aplican a una interfaz del router. Estas listas indican al router qué tipos de paquetes se deben aceptar y qué tipos de paquetes se deben denegar. La aceptación y rechazo se pueden basar en ciertas especificaciones, como dirección  origen, dirección destino y número de puerto. Cualquier tráfico que pasa por la interfaz debe cumplir ciertas condiciones que forman parte de la ACL. Las ACL se pueden crear para todos los protocolos enrutados de red, como IP e IPX, para filtrar los paquetes a medida que pasan por un router. Es necesario definir una ACL para cada protocolo habilitado en una interfaz si desea controlar el flujo de tráfico para esa interfaz. Por ejemplo, si su interfaz de router estuviera configurada para IP, AppleTalk e IPX, sería necesario definir por lo menos tres ACL. Cada ACLs sobre cada interfaz, actúa en un sentido, distinguiendo tanto sentido de entrada como de salida. Se puede definir diferentes ACLs y luego instalarlas sobre los interfaces del router según convenga al administrador de la red. 

 


Razones para el uso de ACLs

Hay muchas razones para crear ACLs. Por ejemplo, las ACL se pueden usar para:

• Limitar el tráfico de red y mejorar el rendimiento de la red. Por ejemplo, las
ACL pueden designar ciertos paquetes para que un router los procese antes de
procesar otro tipo de tráfico, según el protocolo. Esto se denomina colocación en
cola, que asegura que los routers no procesarán paquetes que no son necesarios.
Como resultado, la colocación en cola limita el tráfico de red y reduce la
congestión.

• Brindar control de flujo de tráfico. Por ejemplo, las ACL pueden restringir o
reducir el contenido de las actualizaciones de enrutamiento. Estas restricciones
se usan para limitar la propagación de la información acerca de redes específicas
por toda la red.

• Proporcionar un nivel básico de seguridad para el acceso a la red. Por ejemplo,
las ACL pueden permitir que un host acceda a una parte de la red y evitar que
otro acceda a la misma área. Al Host A se le permite el acceso a la red de
Recursos Humanos, y al Host B se le deniega el acceso a dicha red. Si no se
configuran ACL en su router, todos los paquetes que pasan a través del router
supuestamente tendrían acceso permitido a todas las partes de la red. 

• Se debe decidir qué tipos de tráfico se envían o bloquean en las interfaces del
router. Por ejemplo, se puede permitir que se enrute el tráfico de correo
electrónico, pero bloquear al mismo tiempo todo el tráfico de telnet. 


 Funcionamiento de las ACLs

Una ACL es un grupo de sentencias que define cómo los paquetes:

• Entran a las interfaces de entrada
• Se reenvían a través del router
• Salen de las interfaces de salida del router

El principio del proceso de comunicaciones es el mismo, ya sea que las ACL se usen o no. Cuando un paquete entra en una interfaz, el router verifica si un paquete es enrutable o puenteable. Ahora, el router verifica si la interfaz de entrada tiene una ACL. Si existe, ahora se verifica si el paquete cumple o no las condiciones de la lista. Si el paquete es permitido, entonces se compara con las entradas de la tabla de enrutamiento para determinar la interfaz destino. A continuación, el router verifica si la interfaz destino tiene una ACL. Si no la tiene, el paquete puede ser enviado directamente a la interfaz destino. Las sentencias de la ACL operan en orden secuencial lógico. Si se cumple una condición, el paquete se permite o deniega, y el resto de las sentencias de la ACL no se verifican. Si las sentencias de la ACL no se verifican, se impone una sentencia implícita de "denegar cualquiera". Esto significa que, aunque la sentencia "denegar cualquiera" no se vea explícitamente en la última línea de una ACL, está allí. 


 



 Ejemplos de ACL´s


Introducción:

Las listas de acceso (ACLs Access Lists) son filtros que utilizan una numeración
para identificarse:
1-99 son ACLs estándar
100-199 son ACLs extendidas.
Las ACLs estándar tienen la configuración siguiente:
Router(config)# access-list nº permit|deny origen [wild-mask]
y se aplican a los interfaces con:
Router (config-if)# ip access-group nº in|out
siendo in la indicación del tráfico a filtrar que ENTRA por la interfaz del router y out
la indicación para filtrar el tráfico que SALE por la interfaz del router.
Además la wild-mask, indica con 0 el bit a evaluar y con 1 indica que el bit
correspondiente se ignora. Por ejemplo, si quiero indicar un único host 192.13.13.1
especifico: 192.13.13.1 con wild-mask 0.0.0.0 y si quiero especificar toda la red clase
C correspondiente lo indico con 192.13.13.0 y wild-mask 0.0.0.255.
Las ACLs estándar solo pueden filtrar el tráfico por origen nunca por destino.

Las ACLs extendidas tienen la configuración siguiente, donde dependiendo del
protocolo especificado (IP, ICMP, TCP, UDP, ...) tendremos opciones de
configuración diferente, siempre acorde con el protocolo, es decir con TCP podré
utiliza operación de puertos pero con IP no. La sintaxis de las ACLs extendidas es:
Router (config)# access-list nº permit|deny protocolo
origen [wild-mask] [operación] [puerto origen] destino
[wild-mask] [operación] [puerto destino] [established]
La opción de [established] indica que sólo pasarán paquetes TCP con los flags ACK
o RST activados, es decir, que no permite pasar ningún comienzo de conexión con
el flag SYN=1 ACK=0, de inicio de sesión TCP. Podemos forzar así que el
establecimiento de la conexión se realice en el sentido contrario donde está
establecida la lista de acceso. 2
Como operación se suele usar eq que significa igual (equal)
Las ACLs se aplican a los interfaces con la siguiente sintaxis, siendo "out" la opción
por defecto:
Router (config-if)# ip access-group nº in|out
Importante:
• Es conveniente que desactives el cortafuegos de tu ordenador antes de
empezar esta práctica:
service iptables stop
• Recuerda que solo se pueden definir 2 ACLs por cada interfaz. Una de
entrada y otra de salida 

Mascara de Wildcard

Una máscara wildcard es una cantidad de 32 bits que se divide en cuatro octetos, en la
que cada octeto contiene 8 bits. Un bit de máscara wildcard de 0 significa "verificar el
valor de bit correspondiente" y un bit 1 de una máscara wildcard significa "no
verificar (ignorar) el valor de bit correspondiente". Una máscara wildcard se
compara con una dirección IP. Los números uno y cero se usan para identificar cómo
tratar los bits de la dirección IP correspondientes. Las ACL usan máscaras wildcard para
identificar una sola o múltiples direcciones para las pruebas de aprobar o rechazar.
Aunque ambas son cantidades de 32 bits, las máscaras wildcard y las máscaras de
subred IP operan de manera diferente.
Digamos que desea verificar una dirección IP para verificar la existencia de subredes
que se pueden permitir o denegar. Supongamos que la dirección IP es una dirección
Clase B (es decir, que los primeros dos octetos son el número de red) con 8 bits de
división en subredes (el tercer octeto es para las subredes). Es necesario usar bits de
máscara wildcard IP para permitir todos los paquetes desde cualquier host en las
subredes 172.30.16.0 a 172.30.31.0. La figura muestra un ejemplo de cómo usar la
máscara wildcard para hacer esto. Para empezar, la máscara wildcard verifica los
primeros dos octetos (172.30), utilizando los bits de cero correspondientes en la máscara
wildcard. Como no interesan las direcciones de host individuales (un identificador de
host no tiene .00 al final de la dirección), la máscara wildcard ignora el octeto final,
utilizando los bits unos correspondientes en la máscara wildcard. 



 




En el tercer octeto, la máscara wildcard es 15 (00001111), y la dirección IP es 16
(00010000). Los primeros cuatro ceros en la máscara wildcard indican al router que
debe comparar los primeros cuatro bits de la dirección IP (0001). Como los últimos
cuatro bits se ignoran, todos los números dentro del intervalo de 16 (00010000) a 31
(00011111) coinciden porque comienzan con el patrón 0001. Para los cuatro bits finales
(menos significativos) en este octeto, la máscara wildcard ignora el valor porque en
estas posiciones, el valor de la dirección puede ser cero o uno binarios, y los bits
wildcard correspondientes son unos. En este ejemplo, la dirección 172.30.16.0 con la
máscara wildcard 0.0.15.255 coincide con las subredes 172.30.16.0 a 172.30.31.0. La
máscara wildcard no coincide con ninguna otra subred.
Trabajar con representaciones decimales de bits wildcard binarios puede ser una tarea
muy tediosa. Para los usos más comunes de las máscaras wildcard, se pueden usar
abreviaturas. Estas abreviaturas reducen la cantidad de cosas que hay que escribir
cuando se configuran condiciones de prueba de direcciones. Si especificamos que
cualquiera cumple la sentencia pondríamos como dirección IP 0.0.0.0 y de máscara todo
1's para que se ignore (255.255.255.255).


ACL Estándar

Las ACL estándar verifican solo la dirección origen de los paquetes que se deben
enrutar. Se deben usar las ACL estándar cuando se desea bloquear todo el tráfico de una
red, permitir todo el tráfico desde una red específica o denegar conjuntos de protocolo.
El resultado permite o deniega el resultado para todo un conjunto de protocolos, según
las direcciones de red, subred y host. Las ACL estándar, aunque son más fáciles de
crear, proporcionan menor control sobre el tráfico de red. 

ACL Extendida 

Las ACL extendidas verifican las direcciones origen y destino de los paquetes. También
pueden verificar protocolos, números de puerto y otros parámetros específicos. Esto
ofrece mayor flexibilidad para describir las verificaciones que debe realizar la ACL.
Las ACL extendidas se usan con mayor frecuencia para verificar condiciones porque ofrecen una mayor cantidad de opciones de control que las ACL estándar. Se puede usar una ACL extendida cuando se desea permitir el tráfico de la Web pero denegar el Protocolo de transferencia de archivos (FTP) o Telnet desde las redes que no pertenecen a la empresa. Como las ACL extendidas pueden bloquear el tráfico según la dirección destino, se pueden ubicar cerca del origen, lo que ayuda a reducir el tráfico de red. Algunos de los números de puerto más comunes aparecen en la tabla. :


 



No hay comentarios:

Publicar un comentario