Introducción
 
  Este documento describe configuraciones de ejemplo para las listas de control de acceso (ACL) IP de uso común, que filtran paquetes IP.
 
  Prerequisites
 
   
  Requirements
 
  Asegúrese de cumplir este requisito antes de intentar esta configuración:
 
   
  Consulte Direccionamiento IP y Conexión en Subredes para Usuarios Nuevos para obtener información adicional.
 
  Componentes Utilizados
 
  Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.
 
  La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
 
  Antecedentes
 
  Si bien este documento describe algunas ACL estándar y extendidas de uso común, para obtener información más detallada sobre los diferentes tipos de ACL soportados por el software Cisco IOS, así como sobre cómo configurar y editar las ACL, consulte Configuración de Listas de Acceso IP.
 
  Las Listas de control de acceso IP filtran paquetes basados en:
 
   
   - Dirección de origen
- Dirección de destino
- Tipo de paquete
- Cualquier combinación de estos elementos
Para filtrar el tráfico de la red, las ACL controlan si los paquetes ruteados se reenvían o bloquean en la interfaz del router. El router examina cada paquete para determinar si desea desviar o colocar el paquete según los criterios especificados en la ACL. Los criterios de ACL incluyen:
 
   
   - Dirección de origen del tráfico
- Dirección de destino del tráfico
- Protocolo de capa superior
Realice estos pasos para construir una ACL conforme a los ejemplos de la presentación de este documento:
 
   
   - Cree una ACL.
- Aplique la ACL a una interfaz.
La ACL IP es una recopilación secuencial de condiciones permit (permitir) o deny (denegar) que se aplican a los paquetes IP. El router prueba los paquetes en relación con las condiciones en la ACL, uno por vez.
 
  La primera coincidencia determina si el Cisco IOS® Software acepta o rechaza el paquete. Dado que el software del IOS de Cisco detiene la prueba de condiciones después de la primera coincidencia, el orden de las condiciones es crítico. Si no coincide ninguna condición, el router rechaza el paquete debido a una cláusula total de negación implícita.
 
  Estos son ejemplos de las ACL IP que se pueden configurar en el Cisco IOS Software:
 
   
   - ACL Estándar
- ACL Extendidas
- ACL dinámicas (cerradura y llave)
- ACL con nombre IP
- ACL Reflexivas
- ACL basadas en tiempo que utilizan intervalos de tiempo
- Entradas de ACL IP Comentadas
- ACL basadas en contexto
- Proxy de Autenticación
- Turbo ACL
- ACL basadas en el tiempo distribuidas
El formato de sintaxis del comando de una ACL estándar es access-list access-list-number {permit|deny} {host|source source-wildcard|any}.
 
  Las ACL estándar comparan la dirección de origen de los paquetes IP con las direcciones configuradas en la ACL para controlar el tráfico.
 
  Las ACL extendidas comparan las direcciones de origen y destino de los paquetes IP con las direcciones configuradas en la ACL para controlar el tráfico. Usted también puede hacer que las ACL extendidas sean más granulares y se configuren para filtrar el tráfico por criterios, como:
 
   
   - Protocolo
- Números de puerto
- Valor de punto de código de servicios diferenciados (DSCP)
- Valor de precedencia
- Estado del bit de número de secuencia de sincronización (SYN)
Los formatos de sintaxis del comando de las ACL extendidas son:
 
  IP 
 
  access-list access-list-number [dynamic dynamic-name [timeout minutes]]
{deny | permit} protocol source source-wildcard destination destination-wildcard
 [precedence precedence] [tos tos] [log | log-input]
 [time-range time-range-name][fragments] 
  Internet Control Message Protocol (ICMP)
 
  access-list access-list-number [dynamic dynamic-name [timeout minutes]] 
{deny | permit} icmp source source-wildcard destination destination-wildcard
 [[icmp-type] [icmp-code] | [icmp-message]] [precedence precedence] [tos tos] [log | log-input]
 [time-range time-range-name][fragments] 
  Transport Control Protocol (TCP)
 
  access-list access-list-number [dynamic dynamic-name [timeout minutes]] 
{deny | permit} tcp source source-wildcard [operator [port]] destination destination-wildcard [operator [port]]
 [established] [precedence precedence] [tos tos] [log | log-input]
 [time-range time-range-name][fragments] 
  User Datagram Protocol (UDP)
 
  access-list access-list-number [dynamic dynamic-name [timeout minutes]] 
{deny | permit} udp source source-wildcard [operator [port]] destination destination-wildcard [operator [port]]
 [precedence precedence] [tos tos] [log | log-input]
 [time-range time-range-name][fragments] 
  Configurar
 
  Estos ejemplos de configuración utilizan las ACL IP más comunes.
 
  Cómo Permitir el Acceso de un Host Seleccionado a la Red
 
  Esta imagen muestra que a un host seleccionado se le concede permiso para acceder a la red. Se permite todo el tráfico con origen en el Host B y destino en la Red A, y se niega el resto del tráfico con origen en la Red B y destino en la Red A.
 
  
 
  El resultado en la tabla R1 muestra cómo la red le otorga acceso al host. Este resultado muestra que:
 
   
   -  La configuración solo admite el host con la dirección IP 192.168.10.1 a través de la interfaz Ethernet 0 en R1. 
-  Este host tiene acceso a los servicios IP de la Red A. 
-  Ningún otro host en la Red B tiene acceso a la Red A. 
-  No se configura ninguna declaración de negación en la ACL. 
De forma predeterminada, hay una cláusula total de negación implícita al final de cada ACL. Se niega todo lo que no esté explícitamente permitido.
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 1 in
!
access-list 1 permit host 192.168.10.1
 
  Nota: La ACL filtra los paquetes IP de la Red B a la Red A, excepto los paquetes que se originan en el Host B. Los paquetes que se originan del Host B a la Red A siguen estando permitidos.
 
  Nota: La ACL access-list 1 permit 192.168.10.1 0.0.0.0 es otra manera de configurar la misma regla.
 
  Denegación del Acceso de un Host Seleccionado a la Red
 
  Esta imagen muestra que se niega el tráfico originado en el Host B destinado a la Red A, mientras que se permite el resto del tráfico de la Red B para acceder a la Red A.
 
  
 
  Esta configuración niega todos los paquetes del host 192.168.10.1/32 a través de Ethernet 0 en R1 y permite todo lo demás. Debe utilizar el comando access list 1 permit any para permitir explícitamente todo lo demás porque hay una cláusula deny all implícita con cada ACL.
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 1 in
!
access-list 1 deny host 192.168.10.1
access-list 1 permit any
 
  Nota: El orden de las declaraciones es fundamental para el funcionamiento de una ACL. Si el orden de las entradas se invierte como muestra este comando, la primera línea coincide con cada dirección de origen de paquete. Por lo tanto, la ACL no puede bloquear el acceso del host 192.168.10.1/32 a la Red A.
 
  access-list 1 permit any
access-list 1 deny host 192.168.10.1
 
  Permita el acceso a un rango de direcciones IP contiguas
 
  Esta imagen muestra que todos los hosts en la Red B con la dirección de red 192.168.10.0/24 pueden acceder a la red 192.168.200.0/24 en la Red A.
 
  
 
  Esta configuración permite que los paquetes IP con un encabezado IP que tengan una dirección de origen en la red 192.168.10.0/24 y una dirección de destino en la red 192.168.200.0/24 accedan a la Red A. Hay una cláusula total de negación implícita al final de la ACL que niega el paso del resto del tráfico a través de Ethernet 0 entrante en R1.
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 101 in
!
access-list 101 permit ip 192.168.10.0 0.0.0.255 192.168.200.0 0.0.0.255
 
  Nota: En el comando access-list 101 permit ip 192.168.10.0 0.0.0.255 192.168.200.0 0.0.0.255, el 0.0.0.255 es la máscara inversa de la red 192.168.10.0 con la máscara 255.255.255.0. ACL la máscara inversa para saber cuántos bits en la dirección de red deben coincidir. En la tabla, la ACL permite todos los hosts con las direcciones de origen en la red 192.168.10.0/24 y las direcciones de destino en la red 192.168.200.0/24.
 
  Consulte la sección Máscaras de Configuración de Listas de Acceso IP para obtener más información sobre la máscara de una dirección de red y cómo calcular la máscara inversa necesaria para las ACL.
 
  Denegación de Tráfico Telnet (TCP, puerto 23)
 
  Para cumplir con los requisitos de mayor seguridad, puede inhabilitar el acceso Telnet a su red privada desde la red pública. Esta imagen muestra cómo se niega el tráfico Telnet de la Red B (pública) destinado a la Red A (privada), lo que permite a la Red A iniciar y establecer una sesión Telnet con la Red B mientras se permite el resto del tráfico IP.
 
  
 
  Telnet utiliza TCP, puerto 23. Esta configuración muestra que todo el tráfico TCP destinado a NetA para el puerto 23 está bloqueado y se permite el resto del tráfico IP.
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 102 in
!
access-list 102 deny tcp any any eq 23
access-list 102 permit ip any any
 
  Permita que Solo las Redes Internas Puedan Iniciar una Sesión TCP
 
  En esta figura, se muestra que se permite el tráfico TCP con origen en la Red A y destino en la Red B, mientras que se niega el tráfico TCP de la Red B con destino en la Red A.
 
  
 
  El propósito de la ACL en este ejemplo es:
 
   
   -  Permitir que los hosts en la Red A inicien y establezcan una sesión TCP para los hosts en la Red B. 
-  Negar que los hosts en la Red B inicien y establezcan una sesión TCP destinada a los hosts en la Red A. 
Esta configuración permite que un datagrama pase a través de la interfaz Ethernet 0 entrante en R1 cuando el datagrama tiene:
 
   
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 102 in
!
access-list 102 permit tcp any any gt 1023 established
 
  Dado que la mayoría de los puertos conocidos para los servicios IP utilizan valores menores que 1023, cualquier datagrama con un puerto de destino menor que 1023 o un bit ACK/RST no establecido es denegado por ACL 102. Por lo tanto, cuando un host de NetB inicia una conexión TCP y envía el primer paquete TCP (sin conjunto de bits SYN/RST) para un número de puerto menor que 1023, es denegado y la sesión TCP falla. Se permiten las sesiones TCP iniciadas de la Red A con destino en la Red B porque tienen el bit ACK/RST configurado para la devolución de los paquetes y utilizan valores de puerto mayores que 1023.
 
  Consulte RFC 1700 para obtener una lista completa de puertos.
 
  Denegación de Tráfico FTP (TCP, Puerto 21)
 
  Esta imagen muestra que el tráfico FTP (TCP, puerto 21) y los datos FTP (puerto 20 ) originados en la Red B y destinados a la Red A son denegados, mientras que el resto del tráfico IP está permitido.
 
  
 
  FTP utiliza el puerto 21 y el puerto 20. El tráfico TCP destinado al puerto 21 y al puerto 20 se deniega y todo lo demás se permite de forma explícita.
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 102 in
!
access-list 102 deny tcp any any eq ftp
access-list 102 deny tcp any any eq ftp-data
access-list 102 permit ip any any
 
  Cómo Permitir el Tráfico FTP (FTP Activo)
 
  FTP puede funcionar en dos modos diferentes, nombrados activo y pasivo.
 
  Cuando FTP funciona en modo activo, el servidor FTP utiliza el puerto 21 para el control y el puerto 20 para los datos. El servidor FTP (192.168.1.100) está ubicado en la Red A. En esta imagen se muestra que se permite el tráfico FTP (TCP, puerto 21) y de datos FTP (puerto 20 ) originado en la Red B y destinado al servidor FTP (192.168.1.100), mientras que se deniega el resto del tráfico IP.
 
  
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 102 in
!
access-list 102 permit tcp any host 192.168.1.100 eq ftp
access-list 102 permit tcp any host 192.168.1.100 eq ftp-data established
!
interface ethernet1
 ip access-group 110 in
!
access-list 110 permit host 192.168.1.100 eq ftp any established
access-list 110 permit host 192.168.1.100 eq ftp-data any
 
  Cómo Permitir el Tráfico FTP (FTP Pasivo)
 
  FTP puede funcionar en dos modos diferentes, nombrados activo y pasivo.
 
  Cuando FTP funciona en modo pasivo, el servidor FTP utiliza el puerto 21 para el control y los puertos dinámicos mayores o iguales que 1024 para los datos. El servidor FTP (192.168.1.100) está ubicado en la Red A. Esta imagen muestra que el tráfico FTP (TCP, puerto 21) y los datos FTP (puertos mayores o iguales a 1024) originados en la Red B y destinados al servidor FTP (192.168.1.100) están permitidos, mientras que el resto del tráfico IP es denegado.
 
  
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 102 in
!
access-list 102 permit tcp any host 192.168.1.100 eq ftp
access-list 102 permit tcp any host 192.168.1.100 gt 1023
!
interface ethernet1
 ip access-group 110 in
!
access-list 110 permit host 192.168.1.100 eq ftp any established
access-list 110 permit host 192.168.1.100 gt 1023 any established
 
  Permita Pings (ICMP)
 
  Esta imagen muestra que se permite el ICMP originado en la Red A y destinado a la Red B, y se deniegan los pings originados en la Red B y destinados a la Red A.
 
  
 
  Esta configuración permite que solo los paquetes de respuesta de eco (respuesta de ping) lleguen en la interfaz Ethernet 0 desde la Red B hacia la Red A. Sin embargo, la configuración bloquea todos los paquetes ICMP de solicitud de eco cuando los pings se originan en la Red B y se destinan a la Red A. Por lo tanto, los hosts en la Red A pueden hacer ping con los hosts en la Red B, pero los hosts en la Red B no pueden hacer ping con los hosts en la Red A.
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 102 in
!
access-list 102 permit icmp any any echo-reply
 
  Permita HTTP, Telnet, Mail, POP3 y FTP
 
  En esta imagen se muestra que sólo se permite el tráfico HTTP, Telnet, SMTP (protocolo simple de transferencia de correo), POP3 y FTP, y que se deniega el resto del tráfico originado en la Red B y destinado a la Red A.
 
  
 
  Esta configuración permite el tráfico TCP con valores de puerto de destino que coincidan con datos FTP (puerto 20), FTP (puerto 21), POP3 (puerto 110), SMTP (puerto 25), Telnet (puerto 23) y WWW (puerto 80). Tenga en cuenta que una cláusula total de negación implícita al final de una ACL niega el resto del tráfico, que no coincide con las cláusulas de permiso.
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 102 in
!
access-list 102 permit tcp any any eq www
access-list 102 permit tcp any any eq telnet
access-list 102 permit tcp any any eq smtp
access-list 102 permit tcp any any eq pop3
access-list 102 permit tcp any any eq 21
access-list 102 permit tcp any any eq 20
 
  Cómo Permitir DNS
 
  Esta imagen muestra que sólo se permite el tráfico del Sistema de nombres de dominio (DNS) y que se niega el resto del tráfico originado en la Red B con destino a la Red A.
 
  
 
  Esta configuración permite el tráfico TCP con el valor de puerto de destino 53. La cláusula deny all implícita al final de una ACL deniega el resto del tráfico, que no coincide con las cláusulas permit.
 
  R1
 
  hostname R1
!
interface ethernet0
 ip access-group 102 in
!
access-list 102 permit udp any any eq domain 
access-list 102 permit udp any eq domain any
access-list 102 permit tcp any any eq domain 
access-list 102 permit tcp any eq domain any
 
  Permita Actualizaciones de Ruteo
 
  Cuando aplica una ACL entrante a una interfaz, asegúrese de que las actualizaciones de ruteo no se filtren. Utilice la ACL relevante de esta lista para permitir los paquetes de protocolo de ruteo:
 
  Introduzca este comando para permitir el protocolo de información de enrutamiento (RIP):
 
  access-list 102 permit udp any any eq rip
 
  Introduzca este comando para permitir el protocolo de enrutamiento de gateway interior (IGRP):
 
  access-list 102 permit igrp any any
 
  Introduzca este comando para permitir el IGRP mejorado (EIGRP):
 
  access-list 102 permit eigrp any any
 
  Introduzca este comando para permitir Abrir primero la ruta más corta (OSPF):
 
  access-list 102 permit ospf any any
 
  Introduzca este comando para permitir el protocolo de gateway fronterizo (BGP):
 
  access-list 102 permit tcp any any eq 179 
access-list 102 permit tcp any eq 179 any
 
  Cómo Ejecutar un Debug del Tráfico Basado en ACL
 
  El uso de los comandos debug requiere la asignación de recursos del sistema (como memoria y potencia de procesamiento) y, en situaciones extremas, puede hacer que un sistema muy cargado se atasque. Utilice los comandos debug con cuidado. Utilice una ACL para definir selectivamente el tráfico que necesita ser examinado para reducir el impacto del comando debug. Dicha configuración no filtra ningún paquete.
 
  Esta configuración activa el comando debug ip packet solo para los paquetes entre los hosts 10.1.1.1 y 172.16.1.1.
 
  R1(config)#access-list 199 permit tcp host 10.1.1.1 host 172.16.1.1
R1(config)#access-list 199 permit tcp host 172.16.1.1 host 10.1.1.1
R1(config)#end
R1#debug ip packet 199 detail
IP packet debugging is on (detailed) for access list 199
 
  Consulte Información Importante sobre Comandos de Debug para obtener más información sobre el impacto de los comandos de debug.
 
  Consulte la sección Uso del Comando de Debug de Comprensión de los Comandos de Traceroute y Ping para obtener más información sobre el uso de las ACL con los comandos debug.
 
  Filtrado de Direcciones MAC
 
  Usted puede filtrar tramas con una dirección de origen o de destino de estación de capa MAC determinada. Se puede configurar cualquier número de direcciones en el sistema sin una multa de rendimiento. Para filtrar por la dirección de capa MAC, utilice este comando en el modo de configuración global:
 
  Router#config terminal
Router(config)#bridge irb
Router(config)#bridge 1 protocol ieee 
Router(config)#bridge 1 route ip
 
  Aplique el protocolo bridge a una interfaz que necesita para filtrar el tráfico junto con la lista de acceso creada con el bridge-group <group number> {input-address-list <ACL number> | output-address-list <ACL number>} comando:
 
  Router#config terminal
Router(config-if)#interface fastEthernet0/0 
Router(config-if)#no ip address 
Router(config-if)#bridge-group 1 input-address-list 700 
Router(config-if)#exit
 
  Cree una Interfaz Virtual Puenteada y aplique la dirección IP que fue asignada a la interfaz Ethernet física:
 
  Router#config terminal
Router(config-if)#int bvi1 
Router(config-if)#ip address 192.168.1.1 255.255.255.0 
Router(config-if)#exit 
Router(config)#access-list 700 deny aaaa.bbbb.cccc 0000.0000.0000 
Router(config)#access-list 700 permit 0000.0000.0000 ffff.ffff.ffff
 
  Con esta configuración, el router sólo permite las direcciones MAC configuradas en la lista de acceso 700. Con el comando access-list access-list <ACL number> deny <mac address> 0000.0000.0000, deniegue la dirección MAC que no puede tener acceso y luego permita el resto (para este ejemplo, aaaa.bbbb.cccc). 
 
  Nota: Cree cada línea de lista de acceso para cada dirección MAC.
 
  Verificación
 
  Actualmente, no hay un procedimiento de verificación disponible para esta configuración.
 
  Troubleshoot
 
  Actualmente, no hay información específica disponible sobre cómo solucionar los problemas de esta configuración.
 
  Información Relacionada