47382
Goto Top

Extended Access Listen

EACLs auf Cisco Router 1760

Hallo,

Ich möchte für mein Abschlussprojekt extended Access Listen auf einem Cisco Router 1760 konfigurieren. Ich habe folgende Listen erstellt:

Für den Datenverkehr von innen nach außen:
Access-list 110 permit tcp 172.16.5.1 0.0.0.255 any eq 80
Access-list 110 permit tcp 172.16.5.1 0.0.0.255 any eq 443
Access-list 110 permit udp 172.16.5.1 0.0.0.255 any eq 53

Für den Datenverkehr von außen nach innen:
Access-list 100 permit tcp any eq 80 172.16.5.1 0.0.0.255
Access-list 100 permit tcp any eq 443 172.16.5.1 0.0.0.255
Access-list 100 permit udp any eq 53 172.16.5.1 0.0.0.255

Sobald ich beide auf je ein Interface (fast ethernet und seriell) lege, kriegen die Rechner keinen Internzugang mehr. Dann habe ich versucht die Listen einzeln auf die Schnittstellen zu legen. Also:

Liste 100 in auf seriell --> funktioniert
Liste 100 in auf ethernet --> funktioniert nicht;I-Zugang für Rechner gesperrt
Liste 110 out auf seriell --> funktioniert
Liste 110 out auf ethernet --> funktioniert nicht ;I-Zugang für Rechner gesperrt

Wenn ich die Liste 110 auf das serielle Interface lege, funktionieren auch die gesetzten Regeln. Der angeschlossene Rechner hat nur Zugriff über die erlaubten Protokolle.

Weiß jemand, warum die Listen auf der Ethernet Schnittstelle den kompletten Internet-Zugang für die Rechner sperrt?

Vielen Dank für eure Hilfe

Content-Key: 57621

Url: https://administrator.de/contentid/57621

Printed on: April 18, 2024 at 14:04 o'clock

Member: aqui
aqui Apr 26, 2007 at 06:53:11 (UTC)
Goto Top
Das Verhalten ist auch vollkommen logisch und zeigt das die Access Listen einwandfrei funktionieren !
Die 100er Liste ist dein Problem und man kann nur hoffen das du den Abschluss nicht in einem EDV Fach machst, denn dann ist nicht viel von TCP/IP Verbindungsaufbau bei dir in der Ausbildung hängengeblieben...sorry face-wink
Deine Denke ist wahrscheinlich das z.B. HTTP bzw. HTTPS bei 443 immer auf Port TCP 80 kommuniziert, was natürlich komplett falsch ist ! Wenn dein lokaler Client eine TCP 80 Session aufmacht also ein TCP SYN Packet schickt, hat er in der Tat dort als Zielport den Port 80 drin aber als Quellport irgendwas zufälliges über 1024 den der Zielhost in seiner Antwort mit den SYN ACK Packet dann nutzt.
Deine outgoing Accessliste 100 blockt diesen Port dann richtigerweise, denn sie lässt ja ausschliesslich nur 80 bzw. 443 zu, funktioniert also richtig. Für dich natürlich nicht.... Das gleiche passiert mit deinen anderen Ports.

Lösen tust du das indem du deine ACL mit dem "established" Parameter versiehst und nur auf das Netz filterst. Generell sollte man mit outgoing Accesslisten vorsichtig sein da Process Switched (CPU lastig) auf den Ciscos.
Am besten du nimmst dir mal einen Sniffer wie den Wireshark und beobachtest mal einen Port TCP 80 Sessionaufbau, dann wird dir das Prinzip schnell klar.
Mitglied: 47382
47382 Apr 26, 2007 at 08:48:25 (UTC)
Goto Top
Hi,
Klingt logisch face-wink
Es ist nur unlogisch, dass beide Access Listen auf der seriellen Schnittstelle funktionieren und nur auf der Ethernet Schnittstelle nicht. Ich hab beide auf die serielle gelegt und es gehte-Die Rechner konnten nur auf zugelassenes Zugreifen. Sobald ich aber beide oder nur eine auf die ethernet Schnittstelle lege, kommen die Rechner nich mehr ins I-Net.
Member: aqui
aqui Apr 27, 2007 at 16:36:04 (UTC)
Goto Top
Das ist eigentlich ungewoehnlich.... Machst du irgendeine Art von NAT auf dem System oder nur einfaches banales IP Routing ???
Am besten du schaltest mal den Packet Debugger ein und siehst dir das mal an. Da sagt er dir genau was durch die ACL geht und was nicht...

Viel schlimmer ist aber wenn man genau hinsieht das deine ACL ausserdem syntaktisch nicht richtig bzw. nicht eindeutig !!!
Du filterst auf einen Host 172.16.5.1, was eigentlich eine 32 Bit Filtermaske (0.0.0.0) erforderlich macht und hast aber eine Netzwerkmaske von nur 24 Bit konfiguriert (0.0.0.255) das widerspricht sich natürlich komplett !
Daher werden wahrscheinlich die Probleme kommen denn die ACL ist so eigentlich logisch falsch ! Komisch das der Cisco CLI Parser das überhaupt annimmt ??!!

Entweder du filterst auf den Host den du angegeben hast, dann muss deine Filtermaske 0.0.0.0 lauten (32 Bit) oder einfach den Paramter host vor der Adresse verwenden. Also so:

access-list 110 permit tcp host 172.16.5.1 any eq 80

Oder du filterst auf das Netzwerk, was deine Maske eigentlich aussagt, da 24 Bit ! Dann ist aber die Angabe einer Hostadresse falsch, denn es muss dann eine Netzadresse sein und es müsste dann richtig lauten:

access-list 110 permit tcp 172.16.5.0 0.0.0.255 any eq 80

Das beinhaltet dann alle Adressen von .1 bis .254. fuer den angegebene Port.
Fuer eins musst du dich aber entscheiden, beides geht nicht !!!
So wie oben ist die ACL syntaktisch falsch !