Конфигурация списков контроля доступа (ACL)
Обзор
Список контроля доступа (ACL) — это список записей контроля доступа (ACE). Каждая запись ACE в ACL определяет права доступа, которые разрешены или запрещены.
Каждый пакет, поступающий на устройство, сравнивается с каждой записью ACE в каждом ACL в порядке их определения. Устройство продолжает проверку до тех пор, пока не будет найдено совпадение. Если совпадение не найдено и устройство достигает конца списка, пакет отклоняется. По этой причине наиболее часто встречающиеся правила следует размещать в начале с писка.
Устройство прекращает проверку правил после нахождения совпадения.
Примечание: Если совпадения нет, пакет отклоняется (неявный запрет). Поэтому ACL, предназначенный для запрета нескольких выбранных пакетов, должен содержать хотя бы один фильтр разрешения с более низким приоритетом; в противном случае весь трафик будет отклонен из-за фильтра неявного запрета по умолчанию.
Топология
Рисунок 15-22: Пример топологии ACL
Конфигурация IPv4 ACL
#configure terminal | Перейти в режим конфигурации. |
(config)#ip access-list T1 | Создать IP ACL с именем T1. |
(config-ip-acl)#deny any host 1.1.1.1 any | Создать правило доступа для запрета IP-пакетов с исходным адресо м 1.1.1.1. |
(config-ip-acl)#permit any host 1.1.1.1/24 any | Создать правило доступа для разрешения IP-пакетов с исходным адресом 1.1.1.1. |
(config-ip-acl)#exit | Выйти из режима конфигурации списка доступа. |
(config)#interface xe10 | Перейти в режим конфигурации интерфейса. |
(config-if)#no switchport | Настроить интерфейс как уровень 3. |
(config-if)#ip address 1.1.1.3/24 | Назначить IP-адрес. |
(config-if)#ip access-group T1 in | Применить группу доступа T1 для входящего трафика на интерфейсе. |
(config-if)#end | Выйти из режима конфигурации интерфейса и режима конфигурации. |
Проверка
Используйте команды ниже для проверки количества совпадений. Когда входящие IP-пакеты достигают интерфейса xe10 с исходным адресом 1.1.1.1, количество совпадений для правила доступа 10 увеличивается на количество отправленных пакетов.
#show ip access-lists T1
IP access list T1
10 deny any host 1.1.1.1 any [match=200]
20 permit any 1.1.1.1/24 any
default deny-all
Когда входящие IP-пакеты достигают интерфейса xe10 с исходным адресом в диапазоне от 1.1.1.1 до 1.1.1.254, количество совпадений для правила доступа 20 увеличивается на количество отправленных пакетов.
#show ip access-lists T1
IP access list T1
10 deny any host 1.1.1.1 any
20 permit any 1.1.1.1/24 any [match=2000]
default deny-all
Примечание: Используйте команду clear ip access-list counters
для сброса статистики всех ACL или clear ip access-list <access-list name> counters
для сброса статистики конкретного ACL.
Конфигурация ICMP ACL
#configure terminal | Перейти в режим конфигурации. |
(config)#ip access-list icmp-acl-01 | Создать IP ACL с именем icmp-acl-01. |
(config-ip-acl)#10 deny icmp 1.1.1.2/24 2.2.2.2/24 dscp af11 fragments | Создать правило доступа с порядковым номером 10 для запрета ICMP-пакетов с определенного источника к определенному назначению с DSCP значением af11. Примечание: Порядковый номер является необязательным. |
(config-ip-acl)#20 permit icmp 1.1.1.1/24 2.2.2.2/24 precedence flash | Создать правило доступа с порядковым номером 20 для разрешения ICMP-пакетов с определенного источника к определенному назначению с приоритетом flash. |
(config-ip-acl)#exit | Выйти из режима конфигурации списка доступа. |
(config)#interface xe10 | Перейти в режим конфигурации интерфейса. |
(config-if)#no switchport | Настроить интерфейс как уровень 3. |
(config-if)#ip address 1.1.1.3/24 | Назначить IP-адрес. |
(config-if)#ip access-group icmp-acl-01 in | Применить группу доступа icmp-acl-01 для входящего трафика на интерфейсе. |
(config-if)#end | Выйти из режима конфигурации интерфейса и режима конфигурации. |