ACL con nombre

Configuración de ACL con nombre en el router Cisco R1 usando el comando ip access-list standard ALLOW_LEGAL_DENY_HR

1. Qué es la ACL con nombre

La configuración de ACL con nombre es esencial cuando se desea un mayor control sobre el tráfico de red utilizando listas de acceso legibles y organizadas en los routers Cisco.

Cuando estás mirando la configuración de un router y ves algo como:

access-list 101 permit tcp 192.168.1.0 0.0.0.255 192.168.3.0 0.0.0.255 eq 443

…es difícil saber para qué sirve esa regla.

Ese es el problema de las ACL numeradas.

En una red real, podrías tener docenas de listas de acceso. Y cuando todas están identificadas por números, resulta difícil saber qué regla hace qué cosa, especialmente cuando estás solucionando problemas o revisando la configuración de otra persona.

Al utilizar un nombre en lugar de un número, das un contexto inmediato a tu configuración.

Por ejemplo:

ip access-list extended ALLOW_HTTPS_TRAFFIC

Sólo con leer el nombre, sabrá inmediatamente que esta ACL está diseñada para permitir el acceso HTTPS al Servidor Legal incluso antes de comprobar la regla en sí.

Volver a lo básico

Para entender cómo funcionan las ACL con nombre, primero hay que entender cómo se estructuran las ACL.

Existen dos tipos de ACL:

  • ACL Estándar: que filtran el tráfico basándose únicamente en la dirección IP de origen.
  • ACL Extendida: que pueden filtrar en función del origen, el destino, el protocolo y el puerto.
Diagrama que muestra los tipos de configuración de ACL nombradas y numeradas para ACL estándar y ACL ampliadas

Cada tipo puede configurarse de dos maneras distintas:

  • Utilizando un número: como access-list 10
  • Usando un nombre: como ip access-list standard BLOCK_HR_ACCESS

En esta lección, nos centraremos en cómo crear listas de acceso utilizando nombres en lugar de números.

Empecemos por el primer caso: la ACL estándar con nombre.

2. Crear ACL estándar con nombre

Veamos ahora cómo crear una ACL estándar, pero esta vez utilizando un nombre en lugar de un número.

Scenario

Tiene dos departamentos en su red:

  • El Departamento Jurídico utiliza la red 192.168.1.0/24
  • El departamento de RRHH utiliza la red 192.168.2.0/24
  • Un servidor Legal se encuentra en 192.168.3.0/24
Diagrama de red que muestra los departamentos Jurídico y de Recursos Humanos conectados al enrutador R1, con el Departamento Jurídico autorizado a acceder al Servidor Jurídico y el Departamento de Recursos Humanos denegado el acceso.

El objetivo es sencillo:
Permitir que el departamento Jurídico acceda al servidor y denegar el acceso al departamento de RRHH.

Esta vez, en lugar de usar algo como access-list 10, crearemos una ACL estándar con nombre llamada ALLOW_LEGAL_DENY_HR para que su propósito quede claro inmediatamente.

Paso 1 – Acceder al modo de configuración global

Comience por crear una ACL estándar con nombre en el modo de configuración:

R1(config)# ip access-list standard ALLOW_LEGAL_DENY_HR

Este comando crea una ACL en modo estándar con nombre. Ahora podemos definir las reglas en su interior.

Paso 2 – Definir las normas

Permitir al departamento Jurídico y denegar al departamento de RRHH:

R1(config-std-nacl)# permit 192.168.1.0 0.0.0.255
R1(config-std-nacl)# deny 192.168.2.0 0.0.0.255

Esta ACL con nombre hace lo mismo que una ACL numerada tradicional, pero su nombre muestra claramente la intención.
La regla permit permite el acceso a Legal, mientras que la regla deny bloquea HR.

3. Aplicar ACL estándar con nombre

Al igual que las ACL numeradas, una ACL con nombre no tendrá ningún efecto a menos que se aplique a una interfaz.

Las ACL estándar deben colocarse lo más cerca posible del destino, ya que sólo filtran la dirección IP de origen. Colocarlas demasiado cerca del origen podría bloquear involuntariamente el tráfico hacia múltiples destinos.

Visual que muestra una ACL estándar aplicada en la interfaz G0/0 del router R1 para controlar el acceso desde las redes Legal y HR al Servidor Legal.

En nuestro ejemplo, el tráfico de los departamentos Jurídico y RRHH pasa por la interfaz G0/0 antes de llegar al servidor.

Paso 1 – Acceder al modo de configuración de interfaz

Empezamos por seleccionar la interfaz correcta:

R1(config)# interface G0/0

Paso 2 – Aplicar la ACL en la dirección de salida

Ahora aplicamos la ACL utilizando el nombre que definimos anteriormente:

R1(config-if)# ip access-group ALLOW_LEGAL_DENY_HR out

Aquí utilizamos salida porque el tráfico sale del router hacia el servidor.

Esa es la mejor práctica para las ACL estándar, que sólo filtran por IP de origen.

Esto garantiza que la ACL filtre los paquetes justo antes de que lleguen a su destino, como se recomienda para la colocación estándar de ACL.

4. Verificar ACL estándar con nombre

Una vez establecida la configuración de ACL con nombre, es importante asegurarse de que todo funciona como se espera.

Paso 1 – Compruebe el contenido de la ACL

Para ver las reglas que ha definido, utilice el comando show access-lists seguido del nombre de su ACL:

R1# show access-lists ALLOW_LEGAL_DENY_HR
Standard IP access list ALLOW_LEGAL_DENY_HR
    10 permit 192.168.1.0, wildcard bits 0.0.0.255
    20 deny 192.168.2.0, wildcard bits 0.0.0.255

Esto confirma que la ACL se ha creado correctamente.
La regla de permiso permite el tráfico del departamento Jurídico, y la regla de denegación bloquea el tráfico de RRHH.

Paso 2 – Confirmar que se aplica en la interfaz

Puede verificar que la ACL está activa en la interfaz correcta ejecutando:

R1# show ip interface g0/0
GigabitEthernet0/0 is up, line protocol is up
  Internet address is 192.168.3.254/24
  Broadcast address is 255.255.255.255
  Address determined by setup command
  MTU is 1500 bytes
  Helper address is not set
  Directed broadcast forwarding is disabled
  Inbound  access list is not set
  Outgoing access list is ALLOW_LEGAL_DENY_HR
  Proxy ARP is enabled
  Security level is default
// OUTPUT OMITTED FOR BREVITY

Esto confirma que la ACL se aplica a la interfaz G0/0 en la dirección de salida, justo antes de que los paquetes lleguen al destino.

5. Crear ACL Extendida con nombre

Vamos a utilizar el mismo escenario que antes, pero esta vez queremos más precisión.
Antes, filtrábamos el tráfico basándonos únicamente en la dirección IP de origen. Esta vez, filtraremos en función de la fuente, el destino, el protocolo y el número de puerto.

Esto es exactamente para lo que están diseñadas las ACL Extendida.

Scenario

Aquí está la configuración de la red de nuevo:

Diagrama que muestra una ACL extendida en el router R1 que permite al PC Legal acceder al Servidor Legal mientras que bloquea el acceso al Servidor HR.

El objetivo:

Permitir sólo tráfico HTTPS desde el PC Legal al Servidor Legal,
y bloquear todo acceso desde el PC Legal al Servidor de RRHH.

Para que quede claro, llamaremos a la ACL LEGAL_POLICY.

Paso 1 – Definir la ACL Extendida Nombrada

Comienza en el modo de configuración global:

R1(config)# ip access-list extended LEGAL_POLICY

A continuación, defina las normas:

R1(config-ext-nacl)# permit tcp host 192.168.1.1 host 192.168.2.1 eq 443
R1(config-ext-nacl)# deny ip host 192.168.1.1 host 192.168.3.1

La primera línea permite el tráfico HTTPS al Servidor Legal.
La segunda línea bloquea todo el tráfico IP al Servidor de RRHH.
Cualquier otra cosa será descartada por la denegación implícita al final de la ACL.

6. Aplicar ACL ampliada con nombre

Al igual que las ACL estándar, una ACL extendida con nombre no tendrá ningún efecto a menos que se aplique a una interfaz.

Las ACL extendidas deben colocarse lo más cerca posible del origen, ya que filtran el tráfico utilizando múltiples criterios (origen, destino, protocolo y puerto). Esto minimiza el tráfico innecesario que entra en la red.

Diagrama que muestra una ACL extendida aplicada de entrada en la interfaz G0/0 del router R1 para filtrar el tráfico desde el PC Legal a los servidores Legal y HR.

En nuestro ejemplo, el tráfico procedente del PC Legal entra en el router a través de la interfaz G0/0. Ahí es donde aplicaremos la ACL.

Paso 1 – Acceder al modo de configuración de interfaz

Empezamos por seleccionar la interfaz correcta:

R1(config)# interface G0/0

Paso 2 – Aplicar la ACL en la dirección de entrada

Ahora aplicamos la ACL utilizando el nombre que definimos anteriormente:

R1(config-if)# ip access-group LEGAL_POLICY in

Aquí utilizamos «entrante» porque el tráfico entra en el router desde el PC legal.
Esto asegura que la ACL filtra los paquetes tan pronto como llegan, que es la colocación recomendada para ACLs extendidas.

7. Verificación de ACL extendidas con nombre

Una vez que haya creado y aplicado su ACL extendida con nombre, debe verificar que funciona como se espera.

Paso 1 – Compruebe el contenido de la ACL

Para ver las reglas configuradas, utilice el comando show access-lists seguido del nombre de la ACL:

R1# show access-lists LEGAL_POLICY
Extended IP access list LEGAL_POLICY
    10 permit tcp host 192.168.1.1 host 192.168.2.1 eq 443
    20 deny ip host 192.168.1.1 host 192.168.3.1

Esto confirma que la ACL se ha creado correctamente.
La primera regla permite el tráfico HTTPS desde el PC legal al servidor legal.
La segunda regla bloquea todo el tráfico IP desde el PC Legal al Servidor HR.

Paso 2 – Confirmar que se aplica en la interfaz

Puede confirmar que la ACL está activa en la interfaz correcta utilizando el siguiente comando:

R1# show ip interface g0/0
GigabitEthernet0/0 is up, line protocol is up
  Internet address is 192.168.1.254/24
  Broadcast address is 255.255.255.255
  Address determined by setup command
  MTU is 1500 bytes
  Helper address is not set
  Directed broadcast forwarding is disabled
  Multicast reserved groups joined: 224.0.0.10
  Inbound  access list is LEGAL_POLICY  
  Outgoing access list is not set
  Proxy ARP is enabled
  Security level is default
// OUTPUT OMITTED FOR BREVITY

Esto confirma que la ACL se aplica a la interfaz G0/0 en la dirección de entrada, que es la ubicación recomendada para ACL extendidas cerca del origen.

8. Conclusión

Vamos a resumir rápidamente lo que hemos aprendido a lo largo de esta guía de configuración de ACL con nombre:

TipoPropósitoEjemplo
ACL EstándarFiltra sólo por IP de origenaccess-list 10 permit 192.168.1.0 0.0.0.255
ACL ExtendidaFiltros por origen, destino, protocolo y puertoaccess-list 101 permit tcp 192.168.1.0 0.0.0.255 192.168.2.1 0.0.0.0 eq 443
ACL numeradoUtiliza un número para identificar la ACLaccess-list 101 deny ip any any
ACL con nombreUtiliza un nombre para dar contexto a la ACLip access-list extended BLOCK_HR_ACCESS

El uso de ACL con nombre ayuda a clarificar la configuración, especialmente en redes grandes con muchas reglas ACL.

Es más fácil solucionar problemas, documentar y mantener cuando cada ACL tiene un nombre significativo.

Una configuración de ACL con nombre bien estructurada hace que sus políticas de red sean más fáciles de gestionar, auditar y escalar a medida que crece su entorno.