Lista kontroli dostępu (ACL) jest listą reguł, które kontrolują i filtrują ruch w oparciu o źródłowe i docelowe adresy IP lub numery portów. Odbywa się to poprzez zezwalanie na pakiety lub blokowanie pakietów z interfejsu na routerze, przełączniku, firewallu itp.

Poszczególne wpisy lub oświadczenia na liście dostępu nazywane są wpisami kontroli dostępu (ACE). Każdy wpis ACE definiuje przepływ ruchu (źródło/przeznaczenie), który będzie dozwolony lub zablokowany.

Oprócz kontroli ruchu i filtrowania w sieci, listy ACL mogą być również używane jako środek bezpieczeństwa przy podłączaniu się do routera, zezwalając tylko na dostęp do niezbędnych adresów IP lub sieci przez telnet (lub najlepiej przez SSH).

Mają one również kilka innych zastosowań, takich jak kontrola dostępu do zarządzania, filtrowanie reklam tras, filtrowanie wyjścia debugowania, identyfikacja ruchu do szyfrowania w scenariuszach VPN itp.

Listy dostępu są w zasadzie narzędziem do dopasowywania interesujących pakietów, które następnie mogą być poddawane różnego rodzaju specjalnym operacjom.

W urządzeniach Cisco mamy dwa główne typy list ACL. Są to Standardowe Listy Kontroli Dostępu oraz Rozszerzone Listy Kontroli Dostępu.

  • Standardowe Listy Dostępu

Standardowe listy dostępu są podstawową formą list dostępu na routerach Cisco, które mogą być używane do dopasowywania pakietów według pola źródłowego adresu IP w nagłówku pakietu. Te listy dostępu są prostsze do utworzenia i zrozumienia, ale opcje dopasowywania pakietów są również ograniczone tylko do adresu źródłowego.

  • Rozszerzone listy dostępu

Jeśli chcesz dopasować pakiety na podstawie czegoś więcej niż źródłowy adres IP, potrzebujesz rozszerzonej listy dostępu: numerowanej lub nazwanej. Rozszerzone listy dostępu mogą filtrować na podstawie źródłowego i docelowego adresu IP, lub kombinacji adresów i kilku innych pól, takich jak porty TCP/UDP itp.

Zarówno standardowe, jak i rozszerzone listy dostępu mogą być zapisane w formacie numerowanym lub nazwanym, które są po prostu różnymi sposobami zapisu list dostępu.

Pod względem funkcjonalności, numerowane i nazwane listy dostępu są równoważne. To, co można osiągnąć za pomocą numerowanej listy dostępu, można również osiągnąć za pomocą równoważnej nazwanej listy dostępu, i dotyczy to zarówno standardowych, jak i rozszerzonych ACL.

Niektórzy faworyzują format nazwany, ponieważ jest on prawdopodobnie bardziej czytelny, ale oba formaty są szeroko stosowane w praktyce i oba są ważne na egzaminie certyfikacyjnym Cisco.

Zapoznaj się z tabelą 1, aby poznać zakres liczb, które można wykorzystać do tworzenia standardowych i rozszerzonych numerowanych list dostępu.

Tabela 1 Zakresy numerów list dostępu

Typ listy dostępu Zakres numerów
IP Standardowe listy dostępu 1-99
IP Standardowe listy dostępu (zakres rozszerzony) 1300-.1999
IP Extended Access Lists 100-199
IP Extended Access Lists (expanded range) 2000-2699

Będziemy rozważać te listy kontroli dostępu, jak one działają i jak je skonfigurować na routerach Cisco.

Proszę spojrzeć na rysunek 1 poniżej, który będziemy używać do wszystkich naszych przykładów konfiguracji.

Scenariusz składa się z pojedynczego routera R1 z dwoma interfejsami Fa0/0 i Fa0/1 podłączonymi odpowiednio do sieci wewnętrznej i Internetu.

Listy dostępu miałyby na celu kontrolowanie dostępu do Internetu przez użytkowników w sieci wewnętrznej. Te listy dostępu zostałyby zastosowane do interfejsu Fa0/0 w kierunku przychodzącym.

Rysunek 1 Zastosowanie listy dostępu

Przykłady konfiguracji standardowej listy dostępu

Standardowa lista kontroli dostępu umożliwi zezwolenie lub odmowę ruchu z określonego źródłowego adresu IP lub sieci IP.

Tworzenie numerowanych standardowych list dostępu

Zaczniemy od skonfigurowania standardowej listy dostępu najpierw w formacie numerowanym, a następnie w formacie nazwanym. Lista dostępu powinna pozwolić Bobowi na dostęp do Internetu, blokując jednocześnie dostęp Smithowi i rejestrując nieudane próby Smitha.

Zobaczmy, jak możemy to zrobić, używając standardowej listy dostępu w formacie numerycznym.

R1>enable
R1#configure terminal
Wprowadź polecenia konfiguracyjne, po jednym w wierszu. Zakończ CNTL/Z.
R1(config)#access-list 1 permit host 192.168.1.3
R1(config)#access-list 1 deny host 192.168.1.7 log
R1(config)#

W powyższym przykładzie konfiguracji użyliśmy słowa kluczowego host do identyfikacji poszczególnych hostów, ale ten sam rezultat można również osiągnąć używając odwrotnej maski 0.0.0.0.0.

Zastosujmy teraz tę listę dostępu do interfejsu Fa0/0 w kierunku przychodzącym.

R1(config)#interface Fa0/0
R1(config-if)#ip access-group 1 ?
in inbound packets
out outbound packets

R1(config-if)#ip access-group 1 in
R1(config-if)#end
R1#

Nazwy list dostępu mają numery od 1 do 99. Kiedy umieszczasz listę dostępu na routerze będziesz musiał zidentyfikować listy dostępu z numerem np. lista dostępu 1 jak pokazano powyżej.

W każdej liście dostępu będzie implicite deny all na końcu ACL nawet jeśli nie określisz tego jawnie. Jeśli więc skonfigurowałeś swoją listę dostępu w ten sposób, oto co ona zrobi.

show access-list 1

Wyjście będzie następujące:

access-list 1 permit host 192.168.1.3
access-list 1 deny host 192.168.1.7 log
access-list 1 deny any

Tworzenie nazwanych standardowych list dostępu

Twórzmy teraz listę dostępu w formacie nazwanym i zastosujmy ją do interfejsu Fa0/0, aby osiągnąć ten sam efekt. Tutaj użylibyśmy odwrotnej maski zamiast słowa kluczowego host, aby dopasować poszczególne hosty.

R1>enable
R1#configure terminal
Wprowadź polecenia konfiguracyjne, po jednym w wierszu. Zakończ CNTL/Z.
R1(config)#ip access-list standard Filter
R1(config-std-nacl)#permit 192.168.1.3 0.0.0
R1(config-std-nacl)#deny 192.168.1.7 0.0.0.0 log
R1(config-std-nacl)#interface Fa0/0
R1(config-if)#ip access-group Filter in
R1(config-if)#end
R1#

Extended Access Lists Configuration Examples

Rozszerzona lista kontroli dostępu pozwoli ci odmówić lub zezwolić na ruch z określonych adresów IP i portów.

Daje również możliwość kontrolowania typu protokołu, który może być przesyłany, takich jak ICMP, TCP, UDP i tak dalej. Zakres rozszerzonych list kontroli dostępu wynosi od 100 do 199 dla numerowanych list ACL.

Przykład numerowanej rozszerzonej listy ACL:

access-list 110 permit tcp 92.128.2.0 0.0.0.255 any eq 80

Access-list 110 zezwoli na ruch, który pochodzi z dowolnego adresu w sieci 92.128.2.0 (sieć źródłowa) w kierunku dowolnego docelowego IP na porcie 80.

Konstatacja 'any’ jest tam po to, aby zezwolić na ruch w kierunku dowolnego docelowego IP na porcie 80. Pierwsza deklaracja sieci w poleceniu access-list (tj. 92.128.2.0 0.0.255) odnosi się do źródła ruchu, a druga deklaracja sieci (słowo kluczowe „any” w naszym przykładzie) odnosi się do miejsca docelowego ruchu.

Inny przykład:

access-list 111 permit ip 192.168.1.0 0.0.255 192.168.2.0 0.0.0.255

Powyższa konfiguracja pozwoli na cały ruch IP z sieci źródłowej 192.168.1.0/24 w kierunku sieci docelowej 192.168.2.0/24.

Zauważ również, że maska podsieci w konfiguracji ACL jest zawsze przedstawiana za pomocą maski odwrotnej (tzn. zamiast 255.255.255.0 używamy 0.0.0.255).

Tworzenie numerowanych rozszerzonych list dostępu

Skonfigurujemy teraz rozszerzoną listę dostępu najpierw w formacie numerowanym, a następnie w formacie nazwanym. Lista dostępu powinna umożliwić Bobowi (z naszego schematu sieciowego powyżej) dostęp do serwerów WWW w Internecie, blokując jednocześnie cały dostęp do sieci dla Smitha i rejestrując nieudane próby otwarcia strony WWW przez Smitha.

Zobaczmy, jak możemy to zrobić, używając rozszerzonej listy dostępu w formacie numerycznym.

R1>enable
R1#configure terminal
Wprowadź polecenia konfiguracyjne, po jednym w wierszu. Zakończ CNTL/Z.
R1(config)#access-list 100 permit tcp host 192.168.1.3 any eq www
R1(config)#access-list 100 deny tcp host 192.168.1.7 any eq www log
R1(config)#interface Fa0/0
R1(config-if)#ip access-group 100 in
R1(config-if)#end
R1#

Tworzenie nazwanych rozszerzonych list dostępu

Teraz skonfigurujmy tę samą rozszerzoną listę dostępu w formacie nazwanym.

R1>enable
R1#configure terminal
Wprowadź polecenia konfiguracyjne, po jednym w wierszu. Zakończ CNTL/Z.
R1(config)#ip access-list extended Filter
R1(config-ext-nacl)#permit tcp 192.168.1.3 0.0.0 any eq www
R1(config-ext-nacl)#deny tcp 192.168.1.7 0.0.0.0 any eq www log
R1(config-ext-nacl)#interface Fa0/0
R1(config-if)#ip access-group Filter in
R1(config-if)#end
R1#

W tym artykule pokrótce omówiliśmy listy dostępu. Możesz sprawdzić, które listy dostępu istnieją na urządzeniu Cisco za pomocą polecenia show access-lists.

Ostatni test list dostępu jest wykonywany przez rzeczywiste generowanie ruchu, który lista dostępu ma zezwolić lub odmówić i zobaczyć wyniki.

Jak zastosować ACL

Po ustawieniu ACL w miejscu będziesz musiał określić, w którym kierunku chcesz, aby działał na interfejsie, który będzie stosowany (przychodzący lub wychodzący).

Na przykład „in” oznacza przychodzący do interfejsu i „out” oznacza wychodzący z interfejsu. ACL jest następnie stosowany na określonym interfejsie za pomocą polecenia „access-group”.

Możesz zidentyfikować listę dostępu poprzez nadanie jej nazwy lub numeru, jak omówiono powyżej. Oto zestaw poleceń, których można użyć:

Router(config)#interface serial 0
Router(config-if)#ip access-group 111 out

Używanie list dostępu do zabezpieczenia dostępu Telnet do routera

Możesz również zabezpieczyć linie telnet na routerze poprzez ACL. Dzięki temu będziesz mógł zezwolić na dostęp do logowania telnet tylko dla określonych hostów lub sieci. Oto przykładowa konfiguracja, jak można to zrobić.

access-list 25 permit 192.168.2.0 0.0.255

line vty 0 4
access-class 25 in

Z tą listą ACL w miejscu pozwolisz tylko hostom w sieci 192.168.2.0/24 mieć dostęp do logowania VTY. Wszystkie próby z innych sieci zostaną zablokowane.

Inny przykład: Załóżmy, że mamy jedną konkretną stację zarządzającą (10.1.1.1), która powinna mieć dostęp do routera przez telnet. Wszystkie inne hosty powinny być zablokowane.

access-list 10 permit host 10.1.1.1

line vty 0 4
access-class 10 in

.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.