2S.7. Списки контроля доступа
Списки контроля доступа (ACL) обеспечивают безопасность сети.
Списки контроля доступа (ACL) обеспечивают безопасность сети.
доп материал
https://m.habr.com/post/121806/
ЛАБА
R1#show access-listsR1#show running-config R1(config)# int se0/0/0R1(config-if)#no ip access-group 11 outR1(config)# no access-list 11синтаксис
Стандартный список доступа
Router(config)#access-list <номер списка от 1 до 99> {permit | deny | remark}{address | any | host} [source-wildcard] [log]R3(config)#access-list 10 deny 192.168.10.0 0.0.0.255R3(config)#access-list 10 permit anyR3(config)#interface GigabitEthernet0/0R3(config-if)#ip access-group 10 outR1(config)# ip access-list standard File_Server_RestrictionsR1(config-std-nacl)# permit host 192.168.20.4R1(config-std-nacl)# deny anyR1(config-std-nacl)# exitR1(config)# int f0/1R1(config-if)# ip access-group File_Server_Restrictions outПосле ознакомления с процессами создания и редактирования ACL-списков, более простым способом составления ACL будет использование текстового редактора, например Блокнот от Майкрософт. Таким образом можно создать или отредактировать список контроля доступа (ACL), после чего вставить его в интерфейс маршрутизатора. Если список контроля доступа (ACL) уже существует, можно отобразить этот список при помощи команды show running-config, скопировать содержимое, вставить его в текстовый редактор, внести необходимые изменения, после чего скопировать содержимое из текстового редактора и вставить его обратно в интерфейс маршрутизатора.
Конфигурация. Предположим, что IPv4-адрес узла на рисунке указан неправильно. Вместо узла 192.168.10.99 должен быть узел 192.168.10.10. Ниже приведен порядок действий при редактировании ACL 1:
Шаг 1. Отобразите текущий ACL-список с помощью команды show running-config. В примере на рисунке используется ключевое слово include для отображения только записей ACE.
Шаг 2. Выделите ACL-список, скопируйте его и вставьте в Блокнот. Внесите необходимые изменения. После корректировки ACL-списка в Блокноте, выделите его и скопируйте.
Шаг 3. В режиме глобальной конфигурации удалите список доступа с помощью команды no access-list 1. В противном случае новые операторы можно добавить в существующий список контроля доступа. Затем вставьте новый список контроля доступа в конфигурацию маршрутизатора.
Шаг 4. Используя команду show running-config, проверьте внесенные изменения.
Необходимо пояснить, что при применении команды no access-list, версии ОС IOS ведут себя по-разному. Если ACL-список, который был удален, все еще применяется на интерфейсе, некоторые версии IOS действуют, как будто нет ACL-списков, защищающих сеть, в то время как другие версии блокируют весь трафик. По этой причине рекомендуется удалить ссылки на списки доступа с интерфейса перед внесением изменений в список доступа. Если в новом списке обнаружена ошибка, необходимо отключить его и устранить проблему. В этом случае в ходе коррекции сеть будет работать без списка контроля доступа (ACL).
Как показано на рисунке, при начальной настройке списка контроля доступа (ACL) 1 была использована следующая запись с ключевым словом host: host 192.168.10.99. Данная запись ошибочна. Узел должен быть сконфигурирован как 192.168.10.10. Чтобы изменить список контроля доступа с использованием порядковых номеров, выполните следующие действия:
Шаг 1. Еще раз отобразите текущий ACL-список с помощью команды show access-lists 1. Выходные данные этой команды будут подробно обсуждаться далее в этом разделе. Порядковый номер отображается в начале каждой записи. Порядковый номер автоматически присваивается при добавлении записи в список. Обратите внимание, что запись с неправильной конфигурацией имеет порядковый номер 10.
Шаг 2. Введите команду ip access-lists standard, используемую для конфигурации именованного ACL-списка. Номер списка контроля доступа (ACL), т. е. 1, используется в качестве имени. В первую очередь необходимо удалить ошибочную запись с помощью команды no 10, где 10 — это порядковый номер. Затем добавьте новую запись с порядковым номером 10 при помощи команды 10 deny host 192.168.10.10.
Примечание. Записи нельзя перезаписать с теми же порядковыми номерами, что и у существующих записей. Сначала необходимо удалить текущую запись, а затем можно создавать новую.
Шаг 3. Проверьте внесенные изменения, используя команду show access-lists.
Как уже упоминалось ранее, Cisco IOS реализует внутреннюю логику для стандартных списков доступа. Порядок, в котором вводятся стандартные ACE-записи, может не совпадать с порядком, в котором они сохраняются, отображаются или обрабатываются маршрутизатором. Команда show access-listsотображает ACE-записи с их порядковыми номерами.
В предыдущем примере для редактирования стандартного нумерованного списка контроля доступа (ACL) IPv4 использовались порядковые номера. Используя порядковые номера записей, отдельные записи можно легко вставить или удалить. Данный метод также можно использовать при редактировании стандартных именованных ACL-списков.
На рисунке приводится пример вставки строки в именованный список контроля доступа.
Примечание. В режиме конфигурации именованного списка контроля доступа (ACL) можно пользоваться командой no sequence-number, которая позволяет быстро удалить отдельные записи.
Как показано на рис. 1, команда show ip interface используется для проверки ACL-списка на интерфейсе. Выходные данные этой команды включают номер или имя списка доступа и направление, к которому был привязан ACL-список. Выводимые данные показывают, что на маршрутизаторе R1 имеется список контроля доступа (ACL) 1, который применен к выходному интерфейсу S0/0/0, а также список NO_ACCESS, который применен к интерфейсу g0/0 также в выходном направлении.
Пример на рис. 2 демонстрирует результаты выполнения команды show access-lists на маршрутизаторе R1. Чтобы просмотреть отдельный список доступа, примените команду show access-lists, а затем введите номер или имя списка доступа. Записи NO_ACCESS могут выглядеть странным образом. Обратите внимание, что порядковый номер 15 отображается перед порядковым номером 10. Это объясняется особенностями внутреннего устройства маршрутизатора, которые рассмотрены далее в этом разделе.
После применения списка контроля доступа (ACL) к интерфейсу и выполнения проверки команда show access-lists выводит статистику с совпадениями для каждой записи. Заметьте, что некоторые записи в выходных данных на рис. 1 совпадают. Когда создается трафик, который должен соответствовать какой-либо записи ACL-списка, количество совпадений, отображаемых в выходных данных командыshow access-lists, должно увеличиться. Например, если с компьютера PC1 отправляется ping-запрос на компьютер PC3 или PC4, то количество совпадений для записи deny в списке контроля доступа (ACL) 1 увеличится, что будет отражено в результатах работы упомянутой выше команды.
Записи разрешения и запрета отслеживают статистику совпадений, однако необходимо помнить, что каждый список контроля доступа имеет косвенный отказ в последней строке. Эта запись не выводится при выполнении команды show access-lists, поэтому статистика для этой записи отображаться не будет. Для просмотра статистики по косвенной записи «deny any» её можно сконфигурировать вручную, после чего она появится в выходных данных.
В процессе тестирования ACL-списка счетчики можно обнулить, выполнив команду clear access-list counters. Эту команду можно применять отдельно или с указанием номера или имени конкретного ACL-списка. Как показано на рисунке 2, эта команда обнуляет счетчики статистики для списка контроля доступа (ACL).
ИТОГИ
По умолчанию маршрутизатор не фильтрует трафик. Трафик, поступающий на маршрутизатор, основывается исключительно на информации таблицы маршрутизации.
С помощью фильтрации пакетов осуществляется управление доступом к сети путем анализа входящих и исходящих пакетов и пропускания или отбрасывания пакетов на основе таких критериев, как IP-адрес источника, IP-адрес назначения и протокол внутри пакета. Маршрутизатор, фильтрующий пакеты, использует определенные правила при пропуске или отклонении трафика. Маршрутизатор также может фильтровать пакеты на уровне 4 — транспортном уровне.
ACL-список является последовательным списком разрешающих или запрещающих операторов. Последней записью ACL-списка всегда является косвенный отказ, блокирующий весь трафик. Для того чтобы исключить неявный запрет deny any, который присутствует в конце каждого списка контроля доступа (ACL) и блокирует весь трафик, можно добавить разрешение permit any.
При прохождении сетевого трафика через интерфейс, где действует список контроля доступа (ACL), маршрутизатор последовательно сопоставляет информацию из пакета с каждой записью в списке контроля доступа на предмет соответствия. Если поиск был успешным, пакет обрабатывается в соответствии с условием ACL-списка, с которым он совпал.
ACL-списки настраиваются для применения к входящему или исходящему трафику.
Стандартные ACL-списки можно использовать для разрешения или отклонения прохождения трафика только на основе IPv4-адресов источника. Место назначения пакета и порты, участвующие в передаче данных, не оцениваются. Основным правилом размещения стандартного ACL-списка является его размещение максимально близко к месту назначения.
Расширенные списки ACL фильтруют пакеты на основе нескольких атрибутов: тип протокола, IPv4-адрес источника или назначения и порты источника или назначения. Основным правилом размещения расширенного ACL-списка является его размещение максимально близко к источнику.
Команда глобальной конфигурации access-list определяет стандартный список контроля доступа (ACL) с номером в диапазоне от 1 до 99. Команда ip access-list standard Имя применяется для создания стандартного именованного списка контроля доступа (ACL).
После настройки ACL-списка он подключается к интерфейсу с помощью команды ip access-group в режиме настройки интерфейса. Необходимо помнить следующие правила в отношении списков контроля доступа (ACL): один список на один протокол, один список на одно направление, один список на один интерфейс.
Для удаления всего ACL-списка из интерфейса сначала следует ввести команду no ip access-group на интерфейсе, а затем ввести глобальную команду no access-list.
Для проверки настройки ACL-списка используются команды show running-config и show access-lists. Команда show ip interface используется для проверки ACL-списка на интерфейсе и направления, к которому был привязан список.
Команда access-class, введенная в режиме конфигурации линии, ограничивает входящие и исходящие соединения между отдельным VTY и адресами в списке доступа.
РАБОТА НАД ОШИБКАМИ
///Refer to curriculum topic: 7.2.2
Команда R1(config)# no access-list номер ACL-списка> немедленно удаляет ACL-список из текущей конфигурации.
При этом, чтобы отключить ACL-список для интерфейса, следует ввести команду R1(config-if)# no ip access-group .
///Refer to curriculum topic: 7.2.2
Две основных причины использования именованного списка ACL: его функцию проще определить и его проще изменить.
////Refer to curriculum topic: 7.1.2
Групповая маска 0.0.7.255 означает, что первые 5 битов 3-го октета не должны меняться, а последние 3 бита могут принимать значения от 000 до 111. Последний октет содержит значение 255. Это означает, что последний октет может принимать значения от всех нулей до всех единиц.