Bearbeiten Sie die Cisco IOS-ACL, ohne den Router aufzuhängen


7

Ich habe eine Cisco Router 1941-Serie und möchte einige Änderungen an der Zugriffsliste des Routers vornehmen. Ich habe erfahren, dass ich einen Teil der Liste löschen und dann alles wieder hinzufügen muss, wobei meine zusätzlichen enthalten sind, während ich die abgelehnten am Ende anführe. Beim Entfernen ging es gut, aber beim Hinzufügen hängt es nach der ersten Anweisung. Und wenn ich versuche, den Code sofort einzufügen, hängt er auch.

Ich habe versucht, die Datei nach tftp zu kopieren, einige Änderungen vorzunehmen und sie dann zurückzubringen. Ich habe einige Fehler bei der Signaturseite des Zertifikats erhalten, die einige Beschwerden verursachten. Wie kann ich das Problem mit der ACL lösen?

[Bearbeiten]

Gegenwärtig habe ich Folgendes:

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

Und ich möchte noch weitere hinzufügen ... so ...

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

Danke für die Nachfrage; Bitte erwägen Sie , der Frage weitere Details hinzuzufügen . Zumindest müssen wir die ursprüngliche ACL sehen, auf welche Schnittstelle (n) sie angewendet wird und welche Details Sie für jeden fehlgeschlagenen Versuch oben ändern .
Mike Pennington

Die Änderungen, die ich vornehmen möchte, sind der Zugriff auf 192.168.1.222 und 192.168.1.120 auf dem 192.168.2. Netzwerk, damit sie Daten zur Überwachung auf die jeweiligen Server ziehen. Also habe ich versucht, einen Teil der Liste zu entfernen, um alles zu entfernen, und beim Hinzufügen von irgendjemandem hängt es und ich muss den Router neu starten
Olanrewaju Olukosi

Konnten Sie Ihre ACL neu organisieren? Benötigen Sie noch Hilfe? Wenn ja, nehmen Sie bitte am NE-Chat teil und lassen Sie mich wissen, wie ich helfen kann
Mike Pennington

Antworten:


16

Der Grund, warum Ihr Router hängt, liegt darin, dass Sie die ACL über dieselbe Schnittstelle bearbeiten, auf die sie angewendet wird. Normalerweise blockiert man sich versehentlich.

Beachten Sie, dass ich am Ende dieser Antwort einen Vorschlag zur Reorganisation Ihrer ACLs mache, obwohl die meisten Leute an diesem ersten Abschnitt interessiert sein werden (der einfachste Weg, ACLs zu ändern).


Der einfachste Weg, Cisco IOS-ACLs zu ändern

Neuere Cisco IOS-Images (wie das Image auf Ihrem Cisco 1941) unterstützen die Zeilennummerierung der IP-Zugriffsliste. Dies bedeutet, dass Sie Ihre ACL ändern können, ohne sie zu entfernen ...

Ich werde das Beispiel Ihrer ursprünglichen ACL 110 verwenden, obwohl Sie, wie bereits erwähnt, wirklich in Betracht ziehen sollten, Ihre ACLs in zwei verschiedene ACLs umzuwandeln.

Schritt 1, ACL 110 bereits auf dem Router :

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

Beachten Sie die Zeilennummern, die Cisco automatisch zu ACL 110 hinzugefügt hat. Denken Sie daran, dass Sie Ihre ACL-Einträge aufgrund der Verweigerungsanweisung vor Zeile 50 hinzufügen müssen.

Schritt 2: Ändern Sie die ACL 110 mit neuen Einträgen, beginnend nach Zeile 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#

Schritt 3, Nummerieren Sie die ACL automatisch neu :

Die automatischen Zeilennummern sind nett, da Sie mit Cisco auch die Konfiguration neu nummerieren können ...

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#

Ursprüngliche Methode zum Ändern von Cisco IOS-ACLs

Ursprünglich war es am sichersten, Ihre ACL zu ändern, indem Sie sie von den betreffenden Schnittstellen entfernen (dies verhinderte Probleme, wenn Sie die ACL über dieselbe Schnittstelle ändern, auf die sie angewendet wurde).

Verwenden Sie diese Technik, wenn Ihr IOS die Zeilennummerierung der IP-Zugriffsliste nicht unterstützt :

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

Jetzt können Sie die neuen ACL-Zeilen hinzufügen, aber tun Sie dies, bevor die anderen Einträge zulassen ...

! 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

Wenden Sie zum Schluss die ACL erneut auf den Switch an ...

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

ACL-Reorganisation

Sie sollten wirklich in Betracht ziehen, zwei verschiedene ACLs für Gigabit0 / 1.1 und GigabitEthernet0 / 1.2 zu verwenden. Dies ist eine Vermutung, was Sie versuchen, aber es ist unklar, ob ich die Dinge richtig interpretiere.

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

Vielen Dank, das hat mich wirklich gerettet. Dies wird meinen gedruckten Dokumenten hinzugefügt. Können Sie bitte mehr Licht in die Reorganisation der ACL bringen? Wie es scheint, wird das auf lange Sicht helfen.
Olanrewaju Olukosi

Vielleicht können wir uns heute Abend darüber unterhalten, ich muss mich im Moment auf die Arbeit vorbereiten. Die kurze Zusammenfassung ist der Versuch, alle eingehenden Pakete zu blockieren (basierend auf dem, was ich von Ihnen sehe). Erstellen Sie jede ACL so, dass nur Pakete blockiert werden, die von diesem Subnetz stammen und an andere weitergeleitet werden. Das habe ich im ACL-Reorganisationsteil der Antwort versucht, aber ich musste Annahmen über Ihre Absicht treffen ... ACL 111 berücksichtigt nur den Datenverkehrseingang von Gi0 / 1.1.
Mike Pennington

1
Deshalb ist es so schön, diesen "Commit" -Befehl auf XRs oder Junipers zu haben :)
Alex

1
@Alex, fyi ... tftp- oder eem-Konfiguration ist die nächstgelegene Sache auf einem Cisco ... Ich habe eem verwendet, um einige unangenehme Situationen zu lösen, in denen ich befürchtete, dass ich gesperrt werden könnte, und konnte keine normalen Konfigurations-Rollback- Funktionen verwenden
Mike Pennington

1
Sie können und sollten wahrscheinlich auch ACLs benennen.
LapTop006

0

Es hängt wahrscheinlich daran, dass beim Einfügen "die erste Anweisung in Kraft gesetzt wird und die folgende implizite Verweigerungsanweisung zu sofortigen Zugriffsproblemen führen kann".

Hilfreiche Tipps zum Erstellen von IP-Zugriffslisten ¹

• Erstellen Sie die Zugriffsliste, bevor Sie sie auf eine Schnittstelle anwenden. Eine Schnittstelle mit einer leeren Zugriffsliste erlaubt den gesamten Datenverkehr.

• Ein weiterer Grund, eine Zugriffsliste vor dem Anwenden zu konfigurieren, besteht darin, dass die erste Anweisung wirksam wird, wenn Sie eine nicht vorhandene Zugriffsliste auf eine Schnittstelle angewendet und dann mit der Konfiguration der Zugriffsliste fortfahren Sofortige Zugriffsprobleme.

¹ Quelle Cisco


-1

ACLs sollten nach der Implementierung eingestellt werden, um Prozessorzyklen zu sparen. Der Router muss jede Zeile einer ACL verarbeiten, bis eine Übereinstimmung mit einer der Bedingungen erzielt wird. Andernfalls stimmt der Router am Ende aller ACLS immer mit dem impliziten "Verweigern" überein. Verwenden Sie einen Befehl show, um die Treffer für jede ACL-Anweisung anzuzeigen. Ordnen Sie die Anweisungen so an, dass die meisten Trefferzeilen in der ACL höher sind. Verwenden Sie den Editor, um Ihre ACL neu zu schreiben.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.