3. ACL

Vi börjar med att definiera en åtkomst lista, access-control list. En ACL eller Access Control List är en uppsättning av IOS-kommandon som styr huruvida en router vidarebefordrar paket baserat på styrinformation som finns i paketets header. Vi kan också tolka ACL som en samling av villkor som ska uppfyllas innan paket tas emot och släpps vidare. Vi kan ställa in så många villkor som vi vill ha i en och samma åtkomst-kontrollista. Tekniskt sätt är dessa villkor kända som ACL entries.

Förutom att filtrera bort oönskad nätverkstrafik används ACL för 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 och blockering av specifika host.

När kan routrar filtrera?

Default inställningar eller konfigurationer för routrar inkluderar inte ACL, det är därför routrar inte filtrerar nätverkstrafik. När ACL konfigureras och tillämpas börjar routrar att filtrera paket. När ett paket kommer i kontakt med en router startar processen som avgör hur paketet ska hanteras. Ett paket interagerar med tre komponenter i sin resa genom en router:-

  • Packet kommer i kontakt med ett interface (Entrance)
  • Routern gör sitt vägval och tar ett vidarebefordringsbeslut
  • 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 vid ingång och utgång interfacen.

  • 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 två handlingar; tillåt och neka (permit and deny). Vi kan tillåta vissa typer av nätverkstrafik medan vi kan blockera andra eller vi kan blockera vissa typer av nätverkstrafik samtidigt som vi tillåter andra.

Typer av ACL

Det finns två typer av ACL som kan identifieras numeriskt:

  • 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).

Standard ACL har funnits från början och är en grundläggande komponent av Cisco IOS. I tidigare dagar var enkla filtreringar tillräckliga för att säkra ett nätverk. Paketfiltreringen görs baserat på paketets IP-adress (source).

Dagens nätverkssäkerhet är betydligt mer utmanande än filtrering av nätverkstrafik baserat på source IP-adresser. Det krävs mer avancerade filtreringsteknik för att säkra dagens nätverk. Utökade (Extended) ACL tar detta ansvar. Utökad ACL kan filtrera ett paket baserat på source IP-adress, destinations IP-adress, portnummer, protokoll och med mera.

Named ACLs

ACL har utvecklats till ett mer avancerade arbetssätt för båda Standard och Extended. Till exempel dessa åtkomst listor kan identifieras också med namn. Syntaxen är annorlunda när man använder namn på ACL:

  • 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?

  • ACL bearbetas alltid uppifrån och ner i sekventiell ordning.
  • Varje paket kontrolleras med ACL-villkor.
  • När en match hittas i ACL för ett visst paket kommer ingen ytterligare kontroller att göras.
  • Interfacen kommer att vidta åtgärder baserade på matchning i ACL-villkor.
  • Det finns två möjliga åtgärder Permit och Deny.
  • Om ACL-villkor Permit matchar får paketet passera genom interfacet.
  • Om ACL-villkor Deny matchas 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.
  • ACL kan bara filtrera den datatrafik 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.
  • Standard ACL kan bara filtrera source-IP-adressen.
  • Standard ACL bör placeras nära destination.
  • Extended ACL bör placeras nära source.
  • Varje ACL behöver ett unikt nummer eller namn.
  • Vi kan bara ha en ACL applicerad på ett interface i varje riktning; inkommande eller utgående.

Vad kan man åstadkomma med ACL?

  • Begränsa nätverkstrafik för att öka nätverksprestanda. Om företagspolicyn till exempel inte tillåter videotrafik i nätverket kan ACL blockera det. Detta skulle kraftigt minska nätverksbelastningen och öka nätverksprestanda.
  • Ge trafikflödesstyrning. ACL kan begränsa leverans av routing-uppdateringar för att säkerställa att uppdateringarna kommer från en tillförlitlig källa.
  • Ge en grundläggande säkerhetsnivå för nätverksåtkomst. ACL kan tillåta en nätverksenhet att komma åt en del av nätverket och förhindra att en annan enhet kommer åt samma område. Till exempel kan tillgång till Human Resources-nätverket begränsas endast till behöriga användare.
  • Filtrera trafik baserat på trafiktyp. Till exempel kan en ACL tillåta e-posttrafik, men blockera all Telnet-trafik.
  • Tillåta eller neka åtkomst till nätverkstjänster.
  • ACL kan tillåta eller neka en användare att komma åt filtyper, till exempel FTP eller HTTP.