Edite Cisco IOS ACL sin colgar el enrutador

7

Tengo un Cisco Router 1941 Series y quiero hacer algunos cambios en la lista de acceso en el enrutador. Llegué a saber que tendré que eliminar una de la lista y luego volver a agregar todo de nuevo con mis adicionales incluidos, indicando los denegados al final de la misma. Al eliminar, funcionó bien pero al agregar, se cuelga después de la primera declaración. Y cada vez que intento pegar el código a la vez, también se cuelga.

Traté de copiar el archivo a tftp, hice algunas ediciones y luego lo recuperé, obtuve algunos errores con el lado de la firma del certificado presentando algunas quejas. ¿Cómo puedo resolver el problema con la ACL?

[Editar]

En el presente, esto es lo que tengo,

interface GigabitEthernet0/0
 description ### WAN INTERFACE ###
 ip address xxx.xxx.xxx.xxx 255.xxx.xxx.xxx
 ip flow ingress
 ip nat outside
 ip virtual-reassembly
 duplex full
 speed 100
 no cdp enable
!
interface GigabitEthernet0/1
 description ### LAN INTERFACE ###
 no ip address
 ip flow ingress
 ip virtual-reassembly
 duplex auto
 speed auto
!
interface GigabitEthernet0/1.1
 description ### 1st FLR NETWORK ###
 encapsulation dot1Q 1 native
 ip address 192.168.1.1 255.255.255.0
 ip access-group 110 in
 ip accounting output-packets
 ip flow ingress
 ip nat inside
 ip virtual-reassembly
!
interface GigabitEthernet0/1.2
 description ### GROUND FLR NETWORK ###
 encapsulation dot1Q 2
 ip address 192.168.2.1 255.255.255.0
 ip access-group 110 in
 ip accounting output-packets
 ip flow ingress
 ip nat inside
 ip virtual-reassembly
!
ip forward-protocol nd
!
ip http server
ip http access-class 23
ip http authentication local
ip http secure-server
ip http timeout-policy idle 60 life 86400 requests 10000
ip flow-export source GigabitEthernet0/1
ip flow-export version 9
ip flow-export destination 192.168.1.120 9996
ip flow-top-talkers
 top 10
 sort-by bytes
!
ip nat source static 192.168.1.19 interface Loopback100
ip nat inside source list NAT interface GigabitEthernet0/0 overload
ip route 0.0.0.0 0.0.0.0 xxx.vvv.vvv.vvv
!
ip access-list standard NAT
 permit 192.168.1.0 0.0.0.255
 permit 192.168.2.0 0.0.0.255
!
access-list 110 permit ip 192.168.1.0 0.0.0.255 host 192.168.2.44
access-list 110 permit ip host 192.168.2.44 192.168.1.0 0.0.0.255
access-list 110 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.18
access-list 110 permit ip host 192.168.1.18 192.168.2.0 0.0.0.255
access-list 110 deny   ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
access-list 110 permit udp any any
access-list 110 permit ip any any

Y me gustaría agregarle otros ... como este ...

access-list 110 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.120
access-list 110 permit ip host 192.168.1.120 192.168.2.0 0.0.0.255
access-list 110 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.222
access-list 110 permit ip host 192.168.1.222 192.168.2.0 0.0.0.255
Olanrewaju Olukosi
fuente
Gracias por preguntar; considere agregar más detalles a la pregunta. Como mínimo, necesitamos ver la ACL original, a qué interfaz (s) se aplica y los detalles de cómo la está cambiando para cada intento fallido anterior.
Mike Pennington
Los cambios que quiero hacer es dar acceso a 192.168.1.222 y 192.168.1.120 en 192.168.2. red para que extraigan datos a los respectivos servidores para su monitoreo. Así que intenté eliminar parte de la lista para eliminar todo y al agregarlo a cualquiera, se cuelga y tengo que reiniciar el enrutador
Olanrewaju Olukosi
¿Pudiste reorganizar tu ACL? ¿Todavía necesitas ayuda? Si es así, únase al chat de NE y dígame cómo puedo ayudarlo
Mike Pennington

Respuestas:

16

La razón por la que su enrutador se cuelga es porque está editando la ACL a través de la misma interfaz a la que se aplica. Por lo general, lo que sucede es que terminas bloqueándote accidentalmente.

Tenga en cuenta que sugiero reorganizar sus ACL al final de esta respuesta, aunque la mayoría de las personas estarán interesadas en esta primera sección (la forma más fácil de cambiar las ACL).


La forma más fácil de cambiar las ACL de Cisco IOS

Las imágenes más nuevas de Cisco IOS (como la imagen de su Cisco 1941) admiten la numeración de líneas de la lista de acceso IP , lo que significa que puede modificar su ACL sin eliminarla ...

Usaré el ejemplo de su ACL 110 original, aunque como mencioné, realmente debería considerar reorganizar sus ACL en dos ACL diferentes.

Paso 1, ACL 110 ya en el enrutador :

LAB_RTR#sh access-list 110
Extended IP access list 110
    10 permit ip 192.168.1.0 0.0.0.255 host 192.168.2.44
    20 permit ip host 192.168.2.44 192.168.1.0 0.0.0.255
    30 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.18
    40 permit ip host 192.168.1.18 192.168.2.0 0.0.0.255
    50 deny ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
    60 permit udp any any
    70 permit ip any any

Tome nota de los números de línea que Cisco agregó automáticamente a ACL 110. Recuerde que debe agregar sus entradas de ACL antes de la línea 50, debido a la declaración de rechazo.

Paso 2, modifique ACL 110 en su lugar con nuevas entradas, comenzando después de la línea 40 :

LAB_RTR#conf t
Enter configuration commands, one per line.  End with CNTL/Z.
LAB_RTR(config)#ip access-list extended 110
LAB_RTR(config-ext-nacl)#41 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.120
LAB_RTR(config-ext-nacl)#42 permit ip host 192.168.1.120 192.168.2.0 0.0.0.255
LAB_RTR(config-ext-nacl)#43 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.222
LAB_RTR(config-ext-nacl)#44 permit ip host 192.168.1.222 192.168.2.0 0.0.0.255
LAB_RTR(config-ext-nacl)#end
LAB_RTR#
LAB_RTR#
LAB_RTR#
LAB_RTR#sh access-list 110
Extended IP access list 110
    10 permit ip 192.168.1.0 0.0.0.255 host 192.168.2.44
    20 permit ip host 192.168.2.44 192.168.1.0 0.0.0.255
    30 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.18
    40 permit ip host 192.168.1.18 192.168.2.0 0.0.0.255
    41 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.120
    42 permit ip host 192.168.1.120 192.168.2.0 0.0.0.255
    43 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.222
    44 permit ip host 192.168.1.222 192.168.2.0 0.0.0.255
    50 deny ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
    60 permit udp any any
    70 permit ip any any
LAB_RTR#

Paso 3, vuelva a numerar la ACL, automáticamente :

Los números de línea automáticos son buenos, porque Cisco también le brinda una forma de renumerar la configuración ...

LAB_RTR#conf t
LAB_RTR(config)#! Renumber ACL 110, from line 10... increment in steps of 10
LAB_RTR(config)#ip access-list resequence 110 10 10
LAB_RTR(config)#end
LAB_RTR#

LAB_RTR#sh access-list 110
Extended IP access list 110
    10 permit ip 192.168.1.0 0.0.0.255 host 192.168.2.44
    20 permit ip host 192.168.2.44 192.168.1.0 0.0.0.255
    30 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.18
    40 permit ip host 192.168.1.18 192.168.2.0 0.0.0.255
    50 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.120
    60 permit ip host 192.168.1.120 192.168.2.0 0.0.0.255
    70 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.222
    80 permit ip host 192.168.1.222 192.168.2.0 0.0.0.255
    90 deny ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
    100 permit udp any any
    110 permit ip any any
LAB_RTR#

Manera original de cambiar las ACL de Cisco IOS

Originalmente, la forma más segura de cambiar su ACL era eliminándola de las interfaces en cuestión (esto evitaba problemas si cambiaba la ACL a través de la misma interfaz a la que se aplicó).

Use esta técnica si su IOS no admite la numeración de líneas de la lista de acceso IP :

interface GigabitEthernet0/1.1
 no ip access-group 110 in
!
interface GigabitEthernet0/1.2
 no ip access-group 110 in

Ahora puede agregar las nuevas líneas de ACL, pero hágalo antes de que el otro permita cualquier entrada ...

! Reset the ACL
no access-list 110
!
access-list 110 permit ip 192.168.1.0 0.0.0.255 host 192.168.2.44
access-list 110 permit ip host 192.168.2.44 192.168.1.0 0.0.0.255
access-list 110 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.18
access-list 110 permit ip host 192.168.1.18 192.168.2.0 0.0.0.255
!! New ACL lines before the deny statement
access-list 110 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.120
access-list 110 permit ip host 192.168.1.120 192.168.2.0 0.0.0.255
access-list 110 permit ip 192.168.2.0 0.0.0.255 host 192.168.1.222
access-list 110 permit ip host 192.168.1.222 192.168.2.0 0.0.0.255
!! Deny statement
access-list 110 deny   ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
access-list 110 permit udp any any
access-list 110 permit ip any any

Finalmente, vuelva a aplicar la ACL al conmutador ...

interface GigabitEthernet0/1.1
 ip access-group 110 in
!
interface GigabitEthernet0/1.2
 ip access-group 110 in

Reorganización de ACL

Realmente debería considerar el uso de dos ACL diferentes para Gigabit0 / 1.1 y GigabitEthernet0 / 1.2 ... esto es una conjetura de lo que está tratando de hacer, pero no está claro si estoy interpretando las cosas correctamente ...

access-list 111 permit ip 192.168.1.0 0.0.0.255 host 192.168.2.44
access-list 111 permit ip host 192.168.1.18 192.168.2.0 0.0.0.255
access-list 111 permit ip host 192.168.1.120 192.168.2.0 0.0.0.255
access-list 111 permit ip host 192.168.1.222 192.168.2.0 0.0.0.255
access-list 111 deny   ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
access-list 111 permit udp any any
access-list 111 permit ip any any
!
interface GigabitEthernet0/1.1
 no ip access-group 110 in
 ip access-group 111 in
!
interface GigabitEthernet0/1.2
 no ip access-group 110 in
Mike Pennington
fuente
Muchas gracias, ya que esto realmente me ha salvado. Esto se agregará a mis documentos impresos. Realmente, ¿puedes arrojar más luz para reorganizar la ACL? Como parece que ayudará a largo plazo.
Olanrewaju Olukosi
Tal vez podamos hablar sobre esto esta noche, tengo que comenzar a prepararme para el trabajo en este momento. El breve resumen es tratar de bloquear la entrada de todos sus paquetes (según lo que veo que hace); construya cada ACL para que solo bloquee los paquetes que provienen de esa subred y se dirijan a otros. Eso es lo que intenté hacer en la parte de reorganización de ACL de la respuesta, pero tuve que hacer suposiciones sobre su intención ... ACL 111 solo considera la entrada de tráfico de Gi0 / 1.1.
Mike Pennington
1
Es por eso que es tan bueno tener ese comando "Commit" en XRs o Junipers :)
Alex
1
@Alex, fyi ... la configuración de tftp o eem es lo más parecido en un cisco ... He usado eem para resolver algunas situaciones desagradables en las que me preocupaba que pudiera quedar bloqueado y no podía usar las funciones normales de reversión de configuración
Mike Pennington
1
También puede, y probablemente debería, nombrar ACL.
LapTop006
0

Es probable que se cuelgue porque al pegar "se pone en vigencia la primera declaración, y la siguiente declaración implícita de denegación podría causarle problemas de acceso inmediato".

Consejos útiles para crear listas de acceso IP ¹

• Cree la lista de acceso antes de aplicarla a una interfaz. Una interfaz con una lista de acceso vacía aplicada permite todo el tráfico.

• Otra razón para configurar una lista de acceso antes de aplicarla es porque si aplica una lista de acceso inexistente a una interfaz y luego procede a configurar la lista de acceso, la primera declaración se aplica y la siguiente declaración de denegación implícita podría causarle Problemas de acceso inmediato.

¹ fuente Cisco

Ronnie Royston
fuente
-1

Las ACL deben sintonizarse después de la implementación para guardar los ciclos del procesador. El enrutador debe procesar cada línea de una ACL hasta que obtenga una coincidencia en una de las condiciones, o de lo contrario siempre coincidirá con el 'negar cualquiera' implícito al final de todas las ACLS. Use un comando show para ver los hits en cada instrucción ACL. Reordene las declaraciones para que las líneas más acertadas sean más altas en la ACL. Use el bloc de notas para reescribir su ACL.

engweb.info
fuente