ACL

En ACL är en uppsättning av IOS-kommandon som styr huruvida en router vidarebefordrar paket baserat på styrinformation som finns i varje paket och regler gällande nätverkstrafik. Vi kan också tolka ACL som en samling av villkor som ska uppfyllas innan paket tas emot och när paket ska vidarebefordras. Vi kan ställa in så många villkor som vi vill ha i en och samma åtkomst-kontrollista, dessa villkor är kända som ACL entries.

Bild 1: Filtrera nätverkstrafik

Förutom att filtrera bort oönskad nätverkstrafik används ACL till flera andra ändamål, t.ex. prioritering av trafik för QoS (Quality of Services), hantering av varningar, begränsning av fjärråtkomst, felsökning, VPN och mycket mer. På grund av dess komplexitet tas inte dessa användningsområden av ACL på CCNA-nivå. CCNA-nivå omfattar endast grundläggande användningar av ACL, såsom filtrering av trafiken det vill säga tillåta eller neka nätverkstrafik från specifika nätverk eller host.

När och hur kan routrar filtrera paket?

Paketfiltrering sker i Nätverksskikt (L3) och transportskikt (L4). Dock inkluderas inte ACL konfigurationer som default för routrar, det är därför routrar inte filtrerar nätverkstrafik från början. Förenklat kan nämnas att routrar hanterar paket som följande:

  • Packet ankommer till ett interface (Entrance)
  • Routern gör sitt vägval och tar ett vidarebefordringsbeslut (pakethantering)
  • Paket lämnar routern via ett interface (Exit)

Vi kan inte filtrera ett paket mitt i routerns pakethantering eftersom vidarebefordringsbeslutsprocessen har sin egen logik och bör inte interfereras för filtreringsändamål. Nätverkstrafik filtreras av routrar endast när paket kommer in i ett interface och när ett paket tar sig ut genom ett interface.

  • ACL-villkor som tillämpas vid ingång-interface definieras som inkommande filter, ”Inbound filter”.
  • ACL-villkor som tillämpas vid utgång-interface definieras som utgående filter, ”Outbound filter”.
Bild 2: Inbound – Outbound filter

Inkommande filter filtrerar trafiken innan router startar vidarebefordringsbeslutet. Utgående filter filtrerar trafiken efter att routern har tagit vidarebefordringsbeslutet.

Ett ACL-filtrering har enbart två handlingar; tillåt och neka (permit and deny). Det kan tillåtas vissa typer av nätverkstrafik medan det kan blockeras andra.

Typer av ACL

Det finns två typer av ACL

  • Standard ACL – Standard ACL filtrerar på tredje skiktet (Nätverksskiktet)
  • Extended ACL – Extended ACL filtrerar på tredje och fjärde skikt (Nätverk- och Transport skikt).

Standard ACL har funnits från början och den är en grundläggande komponent av Cisco IOS. Paketfiltreringen görs baserat på paketets IP-adress (source) och placeras nära till mottagare.

Extended ACL kan filtrera ett paket baserat på source IP-adress, destinations IP-adress, portnummer, protokoll och med mera.
Dessa två ACL typer kan också definieras som:

  • Numbered ACL eller numrerad ACL när listan identifieras med ett nummer.
  • Named ACL eller namngiven ACL när listan identifieras med namn

En sådan definition ger följande ACL-typer:

  • Numbered Standard ACL
  • Named Standard ACL
  • Numbered Extended ACL
  • Named Extended ACL

Numrerad ACL har följande intervaller som identifikation

  • Standard ACL (1 – 99 och 1300 – 1999). Standard ACL filtrerar på tredje skiktet (Nätverksskiktet)
  • Extended ACL (100 – 199 och 2000 – 2699). Extended ACL filtrerar på tredje och fjärde skikt (Nätverk- och Transport skikt).

Syntax

  • Standard ACL identifieras normalt med ett nummer från intervallet 1 till 99 eller 1300 – 1999
    • Router(config)# access-list 10
  • Standard ACL kan också identifieras med ett namn
    • Router (config) ip access-list standard Block_Telnet
  • Extended ACL identifieras med ett nummer från intervallet 100 till 199 eller 2000 till 2699
    • Router(config)# access-list 100
  • Extended ACL kan också identifieras med ett namn
    • Router (config) ip access-list extended Block_Telnet

Allmänt hantering för ACL

Vad ska man tänka på när man konfigurerar ACL?

Bild 3: Antal ACL per interface
  • Router tar emot paket genom ett visst interface och vidarebefordrar genom ett annat interface. Detta kallas på engelska inbound and outbound.
  • Alla villkor i en ACL lista bearbetas alltid uppifrån och neråt i sekventiell ordning.
  • När en match hittas i ACL för ett visst paket kommer inga ytterligare kontroller att göras.
  • Det finns två möjliga åtgärder efter kontroller Permit och Deny.
  • Vid Permit får paketet passera genom interfacet.
  • Vid Deny kasseras paketet omgående.
  • Varje ACL har ett standardförnekande uttalande i slutet av listan, deny any.
  • Om en ACL-lista inte innehåller något villkor men den är tillämpad till ett interface blockerar detta ACL allt nätverkstrafik.
  • Standard ACL bör placeras nära destination.
  • Extended ACL bör placeras nära source.
  • Vi kan bara ha en ACL applicerad på ett interface i varje riktning; inkommande eller utgående.
  • ACL kan bara filtrera den trafik som kommer från nätverket och passerar ett interface, inte den trafik som kommer från routern själv. Det är därför man bör säga nätverkstrafik istället datatrafik.