21
enero
2019

ACL: Lista de Control de Accesos

Para la seguridad de las redes de trasmisión de datos TCP/IP de forma general los administradores utilizan firewalls o cortafuegos para protegerlas contra el acceso no permitido por la red, aplicando políticas de seguridad para el filtrado de los paquetes que transitan por los canales de trasmisión de datos. Para ello se utiliza lo que se denomina una Lista de Control de Accesos.

Una Lista de Control de Accesos (ACL: Access Control List) es una serie de instrucciones que controlan que en un router se permita el paso o se bloqueen los paquetes IP de datos, que maneja el equipo según la información que se encuentra en el encabezado de los mismos.

Las ACL configuradas realizan las siguientes tareas:

  • Limitan el tráfico de la red para aumentar su rendimiento. En una entidad, por ejemplo, si su política corporativa no permite el tráfico de video en la red, se pueden configurar y aplicar ACL que lo bloqueen, lo que reduce considerablemente la carga de la red y aumenta su rendimiento.
  • Proporcionan un nivel básico de seguridad para el acceso a la red. Las ACL pueden permitir que un host acceda a una parte de la red y evitar que otro lo haga a esa misma área.
  • Filtran el tráfico según su tipo. Por ejemplo, una ACL puede permitir el tráfico de correo electrónico, pero bloquear todo el tráfico de redes sociales.
  • Filtran a los hosts para permitirles o denegarles el acceso a los servicios de red. Las ACL pueden permitirles o denegarles a los usuarios el acceso a determinados tipos de archivos.

Los routers no tienen configuradas de manera predeterminada las ACL, por lo que no filtran el tráfico por si solos si antes no fueron programados. El tráfico que ingresa al router se encamina solamente en función de la información de la tabla de ruteo; sin embargo, cuando se aplica una ACL a una interfaz de red, se realiza la tarea adicional de evaluar todos los paquetes de la red a medida que pasan a través de la misma, para determinar si se pueden reenviar.

Funcionamiento: Filtrado de Paquetes

Una Lista de Control de Accesos (ACL) es una enumeración secuencial de instrucciones permit (permitir) o deny (denegar), conocidas como “entradas de control de acceso”, o también con frecuencia como “instrucciones ACL”. Cuando el tráfico de la red atraviesa una interfaz de red configurada con una ACL, el router compara la información dentro del paquete IP con cada entrada de la lista en orden secuencial, para determinar si coincide con alguna. Este proceso se denomina filtrado de los paquetes.

El filtrado de los paquetes controla el acceso a una red mediante el análisis de los paquetes entrantes y salientes, y la transferencia o el bloqueo de estos según criterios determinados. Las ACL estándares filtran sólo en la Capa 3, mientras que las ACL extendidas filtran en las capas 3 y 4 del modelo OSI.

El criterio de filtrado establecido en cada entrada de una ACL es la dirección IP de origen. Un router configurado con una ACL estándar toma la dirección IP de origen del encabezado del paquete y comienza a compararla con cada entrada de la ACL de manera secuencial. Cuando encuentra una coincidencia, el router realiza la instrucción correspondiente, que puede ser: permitir o bloquear el paquete, y finaliza la comparación. Si la dirección IP del paquete no coincide con ninguna entrada en la ACL, se bloquea el paquete por definición.

La última instrucción de una ACL es siempre una denegación implícita. Esta sentencia se inserta automáticamente al final de cada ACL, aunque no esté presente físicamente. La denegación implícita bloquea todo el tráfico. Debido a esto, una ACL que no tiene al menos una instrucción permit bloqueará todo el tráfico.

Para la configuración de las Listas de Control de Acceso de los routers, es importante conocer que estas se aplican para el intercambio de paquetes de datos tanto a las interfaces de red de entrada como de salida. En este sentido:

  • Las ACL de entrada: procesan los paquetes entrantes al router antes de dirigirse a la interfaz de salida. Constituyen un elemento de eficacia, porque ahorran la sobrecarga de encaminar búsquedas si el paquete se descarta. Son ideales para filtrar paquetes de datos cuando la red conectada a una interfaz de entrada es el único origen de estos que se deben examinar.
  • Las ACL de salida: los paquetes entrantes se enrutan a la interfaz de salida del router, y después se procesan mediante la ACL de salida. Las ACL de salida son ideales cuando se aplica un mismo filtro a los paquetes que provienen de varias interfaces de entrada antes de salir por la misma interfaz de salida.

Máscaras Wildcard en ACL

Cada entrada de una ACL incluye el uso de una máscara wildcard o “comodín”. Una máscara wildcard es una cadena de 32 dígitos binarios que el router utiliza para determinar qué bits de la dirección del paquete debe examinar para obtener una coincidencia.

Como ocurre con las máscaras de subred, los números 1 y 0 en la máscara wildcard identifican lo que hay que hacer con los bits de dirección IP correspondientes. Sin embargo, en una máscara wildcard, estos bits se utilizan para fines diferentes y siguen diferentes reglas:

  • Bit 0 de la máscara wildcard: se establece la coincidencia con el valor del bit correspondiente en la dirección IP.
  • Bit 1 de la máscara wildcard: se omite el valor del bit correspondiente en la dirección IP.

Mientras que las máscaras de subred utilizan 1 y 0 binarios para identificar la red, la subred y la porción del host de una dirección IP las máscaras wildcard los utilizan para filtrar direcciones IP individuales o grupos de ellas, permitiendo o denegando el acceso a los recursos.

A las máscaras wildcard a menudo se las denomina “máscaras inversas”. La razón es que, a diferencia de una máscara de subred en la que el 1 binario equivale a una coincidencia y el 0 binario no, en las máscaras wildcard es al revés.

Aunque el cálculo de la máscara wildcard puede ser difícil, un método abreviado para determinarla es restar a 255.255.255.255 la máscara de red de la dirección IP.

Para simplificar el trabajo con la márcara wildcard se emplean además las palabras clave host y any, que eliminan la necesidad de introducirlas para identificar un host específico o toda una red, además de facilitar la lectura de la lista de control de accesos, ya que proporcionan pistas visuales en cuanto al origen o el destino de los criterios:

  • La palabra host reemplaza la máscara wildcard 0.0.0.0, la cual indica que todos los bits de la dirección IP deben coincidir para filtrar solo un host.
  • La opción any sustituye la dirección IP y la máscara 255.255.255.255. Esto establece que se omita la dirección IP completa o que se acepte cualquier dirección.

Tipos de ACL:

Al crear una lista de control de acceso un administrador de red tiene varias opciones; en este sentido, la complejidad del diseño de dicha red determina el tipo de ACL necesaria. Por lo general, existen dos tipos clásicos de ACL:

  • ACL estándar: que permiten el filtrado de paquetes de datos únicamente verificando la dirección IP de origen. De esta manera, si un dispositivo es denegado por una ACL estándar, se deniegan todos los servicios provenientes de él. Este tipo de ACL sirve para permitir el acceso de todos los servicios de un usuario específico, o LAN, a través de un router y a la vez, denegar el acceso de otras direcciones IP. Las ACL estándar están identificadas por el número que se les ha asignado. Para las listas de acceso que permiten o deniegan el tráfico IP, el número de identificación puede variar entre 1 y 99 o entre 1300 y 1999.
  • ACL extendidas: filtran no sólo según la dirección IP de origen, sino también según la dirección IP de destino, el protocolo y los números de puertos. Con frecuencia son más empleadas que las ACL estándar, porque son más específicas y ofrecen un mayor control. El rango de números de las ACL extendidas va de 100 a 199 y de 2000 a 2699.

Adicionalmente, tanto a las ACL estándar como extendidas es posible hacerles referencia mediante un nombre descriptivo en lugar de un número, lo que se conoce como ACL nombradas.

Existen además otros tipos de ACL, enfocados en propósitos específicos de configuración y manejo del filtrado de los paquetes de datos, como son las ACL dinámicas, reflexivas, basadas en tiempo, y basadas en el contexto, entre otras.

Pautas para la utilización de las ACL

La configuración de la ACL puede ser una tarea compleja. Para cada interfaz de red de un router, puede haber varias políticas necesarias para administrar el tipo de tráfico que se tiene permitido ingresar o salir de ella. Como buenas prácticas es recomendable configurar ACL independientes tanto para el tráfico entrante como para el saliente.

Las siguientes son algunas pautas para el uso de las ACL:

  • Utilizar la ACL en los routers de firewall ubicados entre la red interna y la externa (como Internet).
  • Emplear la ACL en un router ubicado entre dos partes de la red para controlar el tráfico que entra a una parte específica de la red interna o que sale de esta.
  • Configurar la ACL en los routers de frontera, es decir, los ubicados en los límites de las redes, lo que proporciona una separación básica de la red externa, o entre un área menos controlada y otra más importante de la propia red.
  • Configurar la ACL para cada interfaz de red (de entrada, o de salida), del router de frontera.

El uso de las ACL requiere prestar atención a los detalles y un extremo cuidado. Los errores pueden ser costosos en términos de tiempo de inactividad, esfuerzos de resolución de problemas y servicio de red deficiente. Antes de configurar una ACL, se requiere una planificación básica.

La correcta conformación de la ACL puede contribuir a que la red funcione de forma eficiente. En este sentido, se deben configurar donde tengan mayor impacto. Las reglas básicas a considerar son:

  • Las ACL estándar se colocan cerca del destino del tráfico. Esto se debe a sus limitaciones, pues no se puede distinguir el destino.
  • Las ACL extendidas se colocan cerca del origen del tráfico por eficiencia, para evitar tráfico innecesario en el resto de la red.