Edite o Cisco IOS ACL sem pendurar o roteador

7

Eu tenho um Cisco Router 1941 Series e quero fazer algumas alterações na lista de acesso no roteador. Eu soube que terei que excluir uma da lista e, em seguida, adicionar novamente tudo com as minhas adicionais incluídas, ao mesmo tempo em que declarei as que foram negadas. Ao remover, correu bem, mas, ao adicionar, trava após a primeira declaração. E sempre que tento colar o código de uma vez, ele também fica travado.

Tentei copiar o arquivo para tftp, fazer algumas edições e depois trazê-lo de volta. Recebi alguns erros com o lado de assinatura de certificado fazendo algumas reclamações. Como posso resolver o problema com a ACL?

[Editar]

No momento, é isso que eu tenho,

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

E eu gostaria de adicionar outros a ele ... assim ...

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
fonte
Obrigado por perguntar; considere adicionar mais detalhes à pergunta. No mínimo, precisamos ver a ACL original, a que interface é aplicada e os detalhes de como você a está alterando para cada tentativa falhada acima.
9118 Mike Pennington
As alterações que eu quero fazer é conceder acesso aos 192.168.1.222 e 192.168.1.120 no 192.168.2. rede para que eles puxem dados para os respectivos servidores para monitoramento. Então eu fiz tentou remover parte da lista para remover tudo e sobre a adição, ele ninguém, ele trava e eu tenho que reiniciar o roteador
Olanrewaju Olukosi
Você conseguiu reorganizar sua ACL? Você ainda precisa de ajuda? Em caso afirmativo, entre no bate - papo do NE e deixe-me saber como posso ajudar #
Mike Pennington

Respostas:

16

O motivo pelo qual seu roteador trava é porque você está editando a ACL através da mesma interface à qual é aplicada. Geralmente o que acontece é que você acaba se bloqueando acidentalmente.

Observe que faço uma sugestão para reorganizar suas ACLs na parte inferior desta resposta, embora a maioria das pessoas esteja interessada nesta primeira seção (a maneira mais fácil de alterar as ACLs).


A maneira mais fácil de alterar as Cisco IOS ACLs

As imagens mais recentes do Cisco IOS (como a imagem no Cisco 1941) oferecem suporte à numeração de linhas da lista de acesso IP , o que significa que você pode modificar sua ACL sem removê-la ...

Usarei o exemplo da sua ACL 110 original, embora, como mencionei, você realmente deva considerar reorganizar suas ACLs em duas ACLs diferentes.

Etapa 1, ACL 110 já no roteador :

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

Anote os números de linha que a Cisco adicionou automaticamente ao ACL 110. Lembre-se de que você precisa adicionar as entradas ACL antes da linha 50, devido à declaração de negação.

Etapa 2, modifique o ACL 110 no local com novas entradas, começando após a linha 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#

Etapa 3, renumere a ACL automaticamente :

Os números de linha automáticos são bons, porque a Cisco também oferece uma maneira de renumerar a config ...

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#

Maneira original de alterar as Cisco IOS ACLs

Originalmente, a maneira mais segura de alterar sua ACL era removendo-a das interfaces em questão (isso evitava problemas se você estivesse alterando a ACL pela mesma interface à qual foi aplicada).

Use esta técnica se o seu IOS não suportar a numeração de linhas da lista de acesso IP :

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

Agora você pode adicionar as novas linhas da ACL, mas faça isso antes que as outras permitam qualquer 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

Por fim, aplique novamente a ACL ao comutador ...

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

Reorganização da ACL

Você realmente deve considerar o uso de duas ACLs diferentes para Gigabit0 / 1.1 e GigabitEthernet0 / 1.2 ... isso é uma suposição do que você está tentando fazer, mas não está claro se estou interpretando as coisas corretamente ...

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
fonte
Muito obrigado, pois isso realmente me salvou. Isso será adicionado aos meus documentos impressos. Realmente, você pode esclarecer melhor a reorganização da ACL? Como parece que vai ajudar a longo prazo.
Olanrewaju Olukosi 26/03
Talvez possamos conversar sobre isso hoje à noite, tenho que começar a me preparar para o trabalho no momento. O breve resumo é tentar bloquear a entrada de todos os seus pacotes (com base no que eu vejo você fazendo); crie cada ACL para bloquear apenas os pacotes originados nessa sub-rede e indo para outros. Foi o que tentei fazer na parte da resposta da reorganização da ACL, mas tive que fazer suposições sobre sua intenção ... A ACL 111 considera apenas a entrada de tráfego da Gi0 / 1.1.
Mike Pennington
11
É por isso que é tão bom ter esse comando no Rx ou zimbros :) "Commit"
Alex
11
@Alex, fyi ... a configuração tftp ou eem é a coisa mais próxima em um Cisco ... Eu usei o eem para resolver algumas situações desagradáveis ​​em que eu estava preocupado com o fato de que eu poderia ficar bloqueado e não podia usar os recursos normais de reversão de configuração
Mike Pennington
11
Você pode, e provavelmente deve, nomear ACLs também.
LapTop006
0

Provavelmente, ele trava porque, ao colar "a primeira declaração é posta em prática, e a declaração implícita de negação a seguir pode causar problemas de acesso imediato".

Dicas úteis para criar listas de acesso IP ¹

• Crie a lista de acesso antes de aplicá-la a uma interface. Uma interface com uma lista de acesso vazia aplicada a ela permite todo o tráfego.

• Outro motivo para configurar uma lista de acesso antes de aplicá-la é porque, se você aplicou uma lista de acesso inexistente a uma interface e, em seguida, prossiga para configurar a lista de acesso, a primeira instrução é efetivada e a instrução implícita de negação a seguir pode causar a você problemas de acesso imediato.

¹ fonte Cisco

Ronnie Royston
fonte
-1

As ACLs devem ser sintonizadas após a implementação para salvar os ciclos do processador. O roteador precisa processar cada linha de uma ACL até obter uma correspondência em uma das condições, ou sempre corresponderá ao 'negar qualquer' implícito no final de todas as ACLS. Use um comando show para ver os hits em cada instrução da ACL. Reordene as instruções para que as linhas mais atingidas sejam mais altas na ACL. Use o bloco de notas para reescrever sua ACL.

engweb.info
fonte