Access-lists

19 09 2008

Una ACL es una lista de condiciones que categoriza paquetes. Cuando llega un paquete y se compara con una ACL sigue los siguientes pasos:

  • Se compara siempre con cada línea de la lista en orden secuencial, del inicio al fin.
  • Se compara hasta que se produce un match.
  • Existe un deny implícito al final de la lista, es decir si no hace match con ninguna de las líneas, el paquete se descarta.

Tipos

  • Standard ACLs: usan sólo la ip de origen del paquete para la condición. No distinguen entre el tipo de tráfico.
  • Extended ACLs: evaluan muchos de los otros campos en la capa 3 y 4 de la cabecera ip. Evaluan origen, destino, protocolo, puerto etc,

Las access-list han de ser aplicadas a una interfaz, y puede referirse al tráfico de entrada o salida:

  • Inbound access lists: los paquetes son procesados por la ACL antes de que se enruten a la interfaz de salida. Los paquetes descartados no seran enrutados.
  • Outbound access lists: los paquetes son enrutados a la interfaz de salida, y entonces procesados por la ACL antes de ponerse en la cola.

Es recomendable cuando tratamos de proteger una red de Internet aplicar estas reglas:

  • Negar cualquier dirección de la red interna.
  • Negar cualquier dirección local host (127.0.0.0/8)
  • Negar cualquier dirección reservada privada.
  • Negar cualquier dirección del rango multicast (224.0.0.0/4).

Wilcard masking

Las wilcards se usan en las access lists para especificar un host, una red o un cierto rango de red o redes. Un 0 en la wildcard indica que ha de coincidir exactamente con la red y un 1 que no importa. Ex: 1.0.0.0 0.255.255.255 nos da el rango: 1.0.0.0-1.255.255.255.

Truco: para saber la wildcard correspondiente a una red, basta con mirar la máscara de subred, calcular el tamaño del bloque y restar uno. Ex: 192.168.10.64/28 es un tamaño de bloque de 2^4=16. Wilcard= 0.0.0.15

Acess lists avanzadas

  • Named  ACLs: permiten usar nombres para identificar las ACLs estándar y extendidas.
  • Switch port ACLs: se pueden aplicar a las interfaces de nivel2 de los switches. Sólo se pueden usar como tráfico inbound y en named ACLs. Soporta además de listas estándar y extendidas, MAC extended ACLs que usan direcciones físicas como origen y destino. Permiten controlar el tráfico en vlans (configurando la lista en la interfaz trunk).
  • Dynamic ACLs: combina acceso remoto o local mediante telnet, con ACLs extendidas.
  • Reflexive ACLs: con los paquetes salientes se crean reglas de filtrado para aceptar el tráfico de respuesta a una conexión TCP o UDP iniciada desde nuestra red.
  • Time-based ACLs: permite activar o desactivar ACLs según el día y la hora.
  • Remarks: permite incluir comentarios en las entradas de las ACLs estándar y extendidas. Se pueden poner antes o después de un permit o deny.
  • Context-based access control (Cisco IOS Firewall): CBAC examina el tráfico del firewall para controlar la información del estado de las sesiones TCP y UDP. Es decir, a diferencia de las ACLs convencionales no sólo examina el nivel de red y transporte, sino que también examina la capa de aplicación. Esta información se usa para permitir tráfico de retorno, y conexiones  adicionales de datos, para sesiones originadas desde la red interna.
  • Authentication Proxy: para poder activarlo en un router, es necesario tener  el Cisco IOS Firewall activo. Los usuarios entrantes o salientes bloqueados por una ACL, pueden autenticarse mediante un navegador en el servidor TACACS+ o RADIUS de la red, y se añaden entradas temporales para dar acceso.