För de av er som är bekanta med åtkomstkontrollistor är ni förmodligen medvetna om att det finns många olika typer av åtkomstkontrollistor. Vi har åtkomstkontrollistor för IP version 4, för IP version 6, för IPX, för DECnet, för AppleTalk och listan kan göras lång och lång och lång. Vad är du ansvarig för? Vi är ansvariga för IP version 4 för närvarande, och det är där vårt fokus ligger, IP version 4. Vi kan dela upp IP version 4 accesskontrolllistorna i två olika typer, standard och utökad. Vad är skillnaden här?

  • Standard ACL
    • Kontrollerar ACL:s källadress
    • Gör det möjligt att tillåta eller neka hela protokollsviten
  • Utökad ACL
    • Kontrollerar. käll- och destinationsadress
    • Generellt tillåter eller nekar specifika protokoll och program
      • Käll- och destinations TCP- och UDP-portar
      • Protokolltyp (IP, ICMP, UDP, TCP eller protokollnummer)

Det är vilka parametrar de letar efter och jag vill att du läser standarden, vad letar denna standard efter här? Vad kontrollerar den? Jag vill att du läser det. Och jag ska visa ett sätt att komma ihåg det. Så du ser att standard inte tittar på destination, vilket praktiskt taget inte är särskilt användbart. Avsaknaden av att kunna leta efter en destination är ganska begränsande, du vill vanligtvis leta efter varifrån och vart det kommer och vart det går. Men en standardåtkomstlista har något gemensamt med källadressen, eller hur? Det är bokstaven S, det är ett bra sätt att komma ihåg att standardåtkomstlistor bara tittar på källan.

Extended access control lists, eller utvidgade ACL:er, är å andra sidan mycket kraftfullare, de kan titta på källa och destination, de kan titta på transportlagerprotokoll som TCP och User Data Protocol, eller UDP. De kan titta på protokoll på applikationsnivå över TCP och UDP, t.ex. HTTP, FTP, Trivial File Transport Protocol (TFTP), DNS, Secure Sockets Layer och Secure Shell. Det låter mycket, så hur kommer vi ihåg att utökade åtkomstlistor kan matcha så mycket mer än vanliga åtkomstkontrollistor? Jo, när vi hänvisade till våra standardåtkomstkontrollistor påpekade vi att de bara kontrollerar källadressen. Standard börjar med S, source börjar också med S.

Så jag minns det som standard, endast source, S och S, medan vi med extended har allt annat. Så E hjälper oss att komma ihåg allt. Nu finns det vissa saker som vi inte kan matcha. Vi kan inte matcha sekvensnummer, bekräftelsenummer, vi kan inte matcha många av flaggorna i TCP till exempel, vi kan matcha en av dem och skicka bit. Men det är mycket mer inkluderande och vi är närmare allting. Tänk på att när vi skriver in dessa har vi två uppsättningar syntax, vi har den gamla syntaxen och vi har den nya syntaxen. Och vi kommer att utsätta dig för båda.

Den gamla syntaxen är numrerad, den nya syntaxen är namngiven, och den numrerade syntaxen, den är lite knepig. Vi stöter inte så ofta på numeriska namn. I numrerade standardåtkomstlistor har vi ett till 99. Det finns ett utökat intervall som vi håller oss borta från, det finns ingen anledning att använda det längre. 1300 till 1999 använder vi inte, okej, håll dig undan. Men ett till 99 är standard, 100 till 199 är utökat och sättet att komma ihåg dessa områden är att de alltid slutar på 99, varje område slutar med 99 någonting. Och när vi utökar till ett tresiffrigt värde, när vi hoppar från två siffror till tre siffror, utökar vi och därför får vi det utökade IP Access List-området.

IPv4 ACL Typ Nummerintervall/identifierare
Numrerad Standard 1-99, 1300-1999
Numrerad Utökad 100-199, 2000-2699
Named (Standard and Extended) Name

Men det är den syntax som vi uppriktigt sagt är mest ansvariga för, men som vi har haft i större delen av ett decennium nu, named access control lists. Faktum är att det är över ett decennium nu när vi pratar. Vad är fördelen med en namngiven åtkomstkontrollista? För det första gör namngivna åtkomstkontrollistor det möjligt för oss att ge ett beskrivande namn. Så i stället för att vår åtkomstkontrollista kallas 79 kan vi ge ett beskrivande namn och det namnet kan hjälpa oss att förstå vad åtkomstkontrollistan är utformad för att åstadkomma. Men vad vi verkligen drar nytta av när vi använder namngivna åtkomstkontrollistor är möjligheten att redigera dem, lägga till och ta bort poster inom den ACL:n.

Med numrerade åtkomstkontrollistor kan du se att om du behöver lägga till en post, när du går till kommandoradsgränssnittet och vill lägga till en post, så kommer den att granskas före en post som du redan har där. Du kan inte bara gå in där och lägga in det, det finns inget sätt att göra det med syntaxen för att skapa det. Så du är begränsad i din redigeringsförmåga, vad måste du göra? Radera allt och skapa det på nytt. Så Anteckningsblocket kommer väl till pass. Okej, men med named access control list har vi möjlighet att gå in i syntaxen för named access control list, lägga till, flytta, radera, ändra dessa poster i access control list, som vi vill.

Så mycket kraftfullare, syntaxen för named access control list. Men missförstå oss inte här. Den numrerade identifieringen av åtkomstkontrollistan, t.ex. 1, 2, 3, 4 eller 100 eller 150, är fortfarande namnet på åtkomstkontrollistan. Och du kommer att se det senare, använda syntaxen för namngiven åtkomstkontrollista för att redigera en numrerad åtkomstkontrollista. Det är ganska häftigt och vi kommer att ge dig möjlighet att redigera och rätta till dina misstag med din numrerade åtkomstkontrollista utan att du behöver blåsa bort hela listan och ta bort den. Så en riktigt bra syntax och du kommer att lära dig den och du kommer att älska den och vi kommer att se allt, all syntax när vi går igenom den här kursen tillsammans.

Standardnumrerade ACL:er

Standard access list, what do they look for? Jag frågar dig, vad letar de efter? De letar efter källparametern och här kan vi se det. Så de kommer inte att oroa sig för Layer 2 frame header, de kommer att titta på pakethuvudet, de kommer att titta på källfältet i pakethuvudet och matcha uteslutande baserat på det. De kommer alltså inte att gå djupare in i transportlagret. Och ingen av dessa går in i data, okej. Du skulle behöva använda några avancerade brandväggsfunktioner för att filtrera baserat på data.

Här är vad vi har väntat på, syntaxen, och den är inte överdrivet komplicerad, notera det. Den är inte överdrivet komplicerad. Först och främst konfigurerar vi numrerade åtkomstkontrollistor i det globala konfigurationsläget. Vi skriver access-list och sedan anger vi accesslistnumret. Så detta är standard IPv4 access control lists, vilka är nummerintervallen? 1 till 99 och 1300 till 1999. När vi anger ett nummer av dessa möjliga värden vet vår router automatiskt att vi skapar en standard IPv4-åtkomstkontrollista och den kommer att ge dig rätt syntax att använda:

Den kommer inte att låta dig lägga in parametrar som inte är acceptabla för standard IP version 4 åtkomstkontrollista. Så om du anger fel nummer, om du anger 101, där du försöker skapa en standard IP version 4 åtkomstkontrollista, kommer den att ge dig syntaxen för en utökad åtkomstkontrollista, eller hur? Så var försiktig med din numrering, välj rätt nummer och sedan anger du vad du vill ska hända med trafiken. Vill du tillåta den? Vill du neka den? Du kan också ange en anmärkning, vad är en anmärkning? Det är bara en beskrivning. Så du kan beskriva den här åtkomstkontrollistan, så när du granskar åtkomstkontrollistan senare vet du vad den är till för.

R1(config)#
R1(config)#access-list 1 ?

deny Anger paket som ska avvisas
permit Anger paket som ska vidarebefordras
remark Kommentar till åtkomstlistans post
R1(config)#access-list 1 permit ?

Värdnamn eller A.B.C.D Adress som ska matchas

any Alla källvärdar

host En enskild värdadress
R1(config)#access-list 1 permit 172.16.0.0 ?

/nn eller A.B.C.D Jokerbitar
log Logga matchningar mot denna post

<cr>

R1(config)#access-list 1 permit 172.16.0.0 0.0.255.255 ?

log Logga matchningar mot denna post

<cr>
R1(config)#access-list 1 permit 172.16.0.0.0 0.0.255.255
R1(config)#

När vi har vår källa, vad är källan? Minns du tidigare när vi tittade på adresser och wildcard mask kombinationer? Ja, källan är källadressen, den startpunkt som vi vill använda för jämförelsen av intervallet. Så om vi tittar på vårt exempel har vi 172.16.0.0.0 som adress, källan och sedan mask. Vad är masken? Var försiktig här, det är inte, jag upprepar, det är inte subnätmasken. Det är wildcard-masken. Det är här vi lägger in wildcardmasken. Så i vårt exempel 0.0.255.255.255, vilket är det adressintervall som denna åtkomstkontrollista, som vi just skapat, kommer att kontrollera? 172.16.0.0.0 till 172.16.255.255.

Så du ser hur viktig wildcard-masken är, och att förstå vad den gör hjälper dig att skapa och läsa dem. Det står här att det finns en standard wildcard mask, ta det med en nypa salt, ditt operativsystem kommer generellt sett inte att acceptera syntaxen längre när du lägger in någon post i din åtkomstkontrollista som saknar en wildcard mask. Okej, det är ett gammalt beteende och inte representativt för något nytt. När vi lägger in en post som den vi ser i det globala konfigurationsläget med access-list, är det bara en post. Tänk på att om vi vill lägga till ytterligare en post skulle vi fortfarande ha access-list 1 och sedan bygger vi nästa permit- eller deny-sekvens. access-list 1 igen, access-list 1 igen, om vi vill bygga en större och större åtkomstkontrollista. Vad är den minsta storleken på en åtkomstkontrollista?

En minsta storlek skulle vara ett permit-uttalande. Ja, jag antar att det inte bara kan vara ett deny-uttalande, det skulle vara värdelöst, om du inte loggar, men det skulle inte släppa igenom någonting. Och det maximala är vad du kan drömma om och vad du har tålamod för. När du har fulländat din åtkomstkontrollista i det globala konfigurationsläget, som vi ser här, kan du validera den. Men för att visa åtkomstlistor, kommandot och det skulle i själva verket visa alla åtkomstlistor, IPv4, IPv6, Mac-adress åtkomstlista, IPX, AppleTalk, men vanligtvis har vi bara IPv4 och kanske nuförtiden en del IPv6.

R1#show access-lists
Standard IP access list 1
10 permit 172.16.0.0.0, wildcard bits 0.0.255.255

Och vi kan se en post. Vänta lite, vänta lite, vi lägger in permit 172.16 med den där wildcard-masken, vad är det för 10 där? Vad är den där 10:an som just vaknade till liv inne i vår åtkomstlista? 10 är ett automatiskt sekvensnummer som läggs till i åtkomstlistan. Det kommer att vara 10 som standard. Om vi skulle skapa en annan post… så vi skriver access-list 1 permit 192.168.1.0 0.0.0.255, skulle den automatiskt få ett sekvensnummer. Och det skulle vara 20, nästa i listan och nästa kommer att vara 30 och 40 och 50. Det är så vi håller reda på dem, sekvensnumret, ordningen vi skapade dem i.

Och det här är viktigt, kom ihåg hur vi sa att om vi vill redigera åtkomstkontrollistan så kanske vi vill lägga till en post här och där, men vi kan bara göra det med namngiven syntax, vi kan inte göra det här med den här standardnumrerings-syntaxen, men de här sekvensnumren kommer att vara den definierande faktorn för var vår post hamnar. Om vi lägger till eller flyttar eller raderar eller ändrar och vi kommer att se det senare, vi kommer att se det senare bara när vi går in i den namngivna syntaxen för åtkomstkontrollistor hur dessa sekvensnummer kan användas och manipuleras till vår fördel.

Avlägsna en åtkomstlista är mycket enkelt, kom ihåg det kraftfulla no-kommandot, skriv in no access-list och sedan numret på den åtkomstlista som du vill ta bort. Var försiktig, var försiktig. Låt oss säga att du skriver no access-list 1 permit 172.16.0.0 0.0.255.255. Du vill alltså ta bort en standardåtkomstlistepost som du skapat tidigare. Du skriver no och anger hela kommandot som du skrev tidigare, kommer det att ta bort bara den posten? Jag upprepar det, kommer det att ta bort bara den enda posten? Vid första tanken, ja, det är vid första tanken, men om du provar det och testar det? Nej, det är inte vad som kommer att hända. Det kommer inte att ta bort bara den där posten, vad kommer det att göra? Det kommer att göra sig av med hela saken, så några av er där ute har varit utsatta för detta. Det är verkligen ett bisarrt beteende i IOS.

R1#config t
Gör konfigurationskommandon, en per rad. Avsluta med CNTL/Z.
R1(config)#no access-list 1
R1(config)#end
R1#sh access-lists
R1#

Normalt sett, när vi matar in ett specifikt kommando och lägger in det som ett no, tar det bara bort det ena kommandot. Här måste vi vara mycket försiktiga med syntaxen, oavsett vad, du säger no access list, ge det ett nummer. Jag bryr mig inte om vad som händer efteråt, det kommer att krossa hela accesslistan och många dåliga dagar har orsakats av detta beteende.

admin

Lämna ett svar

Din e-postadress kommer inte publiceras.

lg