Router(config-if)# ip access-group №ACL in

либо для выходящего из интерфейса трафика

Router(config-if)# ip access-group №ACL оut

здесь №ACL - номер списка.

Примеры элементов расширенного ACL

Разрешить SMTP отовсюду на хост

Router(config)# access-list 111 permit tcp any host 172.17.11.19 eq 25

Разрешить телнет отовсюду на хост

Router(config)# access-list 111 permit tcp any host 172.17.11.19 eq 23

Расширенный ACL позволяет очень тонко настроить права доступа.

Именованные ACL

К именованным ACL обращаются по имени, а не по номеру, что даёт наглядность и удобство для обращения. Для создания именованного ACL имеется команда

Router(config)# ip access-list extended ACL_name

и далее команды для создания элементов списка именно этого неименованного списка

Router(config-ext-nacl)# permit|deny IP_protocol source_IP_address wildcard_mask [protocol_information] destination_IP_address wildcard_mask [protocol_information] [log]

Для завершения создания списка следует дать команду exit.

Имя именованного списка чувствительно к регистру. Команды для создания неименованного списка аналогичные командам для создания элементов нумерованного списка, но сам процесс создания отличен. Вы должны использовать ключевое слово ip перед главным ACL оператором и тем самым войти в режим конфигурации именно для этого именованного списка. В этом режиме вы начинаете с ключевых слов permit или deny и не должны вводить access-list в начале каждой строки.

Привязка именованных ACL к интерфейсу осуществляется командой

Router(config)# interface type [slot_№]port_№

Router(config-if)# ip access-group ACL_name in|out

ACL обрабатываются сверху вниз. Наиболее часто повторяющийся трафик должен быть обработан в начале списка. Как только обрабатываемый списком пакет удовлетворяет элементу списка, обработка этого пакета прекращается. Стандартные ACLs следует помещать ближе к точке назначения, где трафик должен фильтроваться. Выходные (out) расширенные ACLs следует помещать как можно ближе к источнику фильтруемых пакетов, а входные следует помещать ближе к точке назначения, где трафик должен фильтроваться.

Именованный ACLs разрешает вам себя редактировать. Для этого надо набрать команду, которая была использована для его создания

Router(config)# ip access-list extended ACL_name

С помощью клавиш с вертикальными стрелками найти строку списка, которую вы хотите изменить. Изменить её, используя горизонтальные стрелки. Нажать ввод. Новая строка добавится в конец списка. Старая не уничтожится. Для её уничтожения следует ввести no в начале строки.

Для редактирования числовых ACLs следует его уничтожить и создать заново или изменить список офлайн и загрузить в устройство с помощью.

Практическая часть.

1. Загрузим в симулятор топологию, изображённую на рисунке 2.

Router(config-if)# ip access-group №ACL in - student2.ru

Рисунок 10.2.

Назначим адреса интерфейсам (маска 255.255.255.240) согласно таблице. Не забудьте на DCE устройстве последовательного соединения задать синхронизацию.

  Router2 Router1 Router4
Ethernet 24.17.2.2 24.17.2.1  
Serial   24.17.2.17 24.17.2.18

Осуществим конфигурацию RIP маршрутизации

Для Router1

Router1(config)#router rip

Router1(config- router)#version 2

Router1(config- router)#network 24.0.0.0

На Router2

Router2(config)#router rip

Router1(config- router)#version 2

Router2(config- router)#network 24.0.0.0

и на Router4

Router4(config)#router rip

Router1(config- router)#version 2

Router4(config- router)#network 24.0.0.0

Проверьте свою сеть с помощью команды ping и, в частности, что вы можете пинговать интерфейс Ethernet0 (24.17.2.2) маршрутизатора 2 из маршрутизатора 4

Router4#ping 24.17.2.2

Создадим стандартный список доступа, который не позволит пинговать маршрутизатор 2 из маршрутизатора 4. Для этого блокируем единственный адресс 24.17.2.18 маршрутизатора 4 и разрешим остальной трафик. Список создадим на маршрутизаторе 2 командами

Router2(config)#access-list 1 deny 24.17.2.18 0.0.0.0

Router2(config)#access-list 1 permit 0.0.0.0 255.255.255.255

Применим список к интерфейсу Ethernet маршрутизаторе 2

Router2(config)#interface FastEthernet0/0

Router2(config-if)#ip access-group 1 in

Проверим, что список доступа запущен. Для этого просмотрим работающую конфигурацию

Router2#show running-config

Мы также можем видеть, что список применён к интерфейсу, используя команду “show ip interface”. Найдите в выводимой информации с строку “Innbound access list is 1”.

Router2#show ip interface

Команда “show access-lists” покажет нам содержимое созданного списка доступа.

Router2#show access-lists

Router(config-if)# ip access-group №ACL in - student2.ru

Отметим, что host 24.17.2.18 равносильно 24.17.2.18 0.0.0.0. Теперь при попытке пинговать интерфейс Ethernet0 (24.17.2.2) роутера 2 из роутера 4

Router4#ping 24.17.2.2

Router(config-if)# ip access-group №ACL in - student2.ru

Получим строку “UUUUU”, которая означает, что список доступа работает корректно.

  1. Создадим и загрузим в симулятор топологию на рисунке 10.3,

Router(config-if)# ip access-group №ACL in - student2.ru

Рисунок 9.3.

Назначим адреса интерфейсам (маска 255.255.255.0) согласно таблице



  Router2 Router1 Router3 Router4
Ethernet 0 160.10.1.2 160.10.1.1 175.10.1.2 180.10.1.2
Ethernet 1   175.10.1.1 180.10.1.1  

Осуществим конфигурацию OSPF маршрутизации

Для Router1

Router1(config)#router ospf 1

Router1(config- router)#network 160.10.1.0 0.0.0.255 area 0

Router1(config- router)#network 175.10.1.0 0.0.0.255 area 0

Для Router2

Router2(config)#router ospf 1

Router2(config- router)#network 160.10.1.0 0.0.0.255 area 0

end

Для Router3

Router3(config) #router ospf 1

Router3(config- router)#network 175.10.1.0 0.0.0.255 area 0

Router3(config- router)#network 180.10.1.0 0.0.0.255 area 0

Для Router4

Router4(config )#router ospf 1

Router4(config- router)#network 180.10.1.0 0.0.0.255 area 0

Для проверки пропингуйте крайние точки

router2#ping 180.10.1.2

router4#ping 160.10.1.2

Создадим стандартный список доступа для фильтрации трафика, приходящего на интерфейс ethernet0 1-го маршрутизатора router1 и разрешает трафик от подсети 175.10.1.0 (router3) и блокирует трафик от других устройств.

router1(config)#access-list 1 permit 175.10.1.0 0.0.0.255

Проверьте, что он создался

router1#show access-list

Router(config-if)# ip access-group №ACL in - student2.ru

Присоедините список как входной к интерфейсу Ethernet 1

router1(config)#interface FastEthernet1/0

router1(config-if)#ip access-group 1 in

Проверьте присоединение командой

router1#show running-config

Проверьте связь между 3 и 2 маршрутизаторами и между 4 и 2 .

router3# ping 160.10.1.2

router4# ping 160.10.1.2

Связь между 3 и 2-м роутерами должна быть, а между 4 и 2 - нет.

Изменим список доступа и разрешим трафик от подсети 180.10.1.0 (router4) и блокируем трафик от других устройств.

router1(config)# no access-list 2

router1(config)# access-list 2 permit 180.10.1.0 0.0.0.255

Проверьте, что он изменился

router1#show access-list

Router(config-if)# ip access-group №ACL in - student2.ru

Присоедините список как входной к интерфейсу Ethernet 1

router1(config)#interface FastEthernet1/0

router1(config-if)#ip access-group 1 in

Проверьте присоединение командой

router1#show running-config

Проверьте связь между 3 и 2 маршрутизаторами и между 4 и 2.

router3# ping 160.10.1.2

router4# ping 160.10.1.2

Связь между 4 и 2-м роутерами должна быть, а между 3 и 2 - нет.

3. Осуществите и проверьте конфигурацию IP для сети на рисунке 1 и примените OSPF для организации динамической маршрутизации.

Для маршрутизатора router 1

router1(config)#router ospf 1

router1(config-router)#network 2.2.2.0 0.0.0.255 area 0

router1(config-router)#network 1.1.1.0 0.0.0.255 area 0

router1(config-router)#network 10.1.1.0 0.0.0.127 area 0

Для маршрутизатора router 2

Router2(config)#router ospf 1

Router2(config-router)#network 10.1.1.128 0.0.0.127 area 0

Router2(config-router)#network 15.1.1.0 0.0.0.255 area 0

Router2(config-router)#network 2.2.2.0 0.0.0.255 area 0

Проверте работоспособность сети: вы должны из любого устройства пинговать любой интерфейс. Или проще: все компьютеры A, B, C, D, PC5 должны взаимно попарно пинговаться.

Создадим список доступа из теоретической части

3.1 На маршрутизаторе router 1 создадим список доступа

router1(config)#access-list 2 deny 10.1.1.128 0.0.0.127

router1(config)#access-list 2 permit host 15.1.1.5

router1(config)#access-list 2 deny 15.1.1.0 0.0.0.255

router1(config)#access-list 2 permit 0.0.0.0 255.255.255.255

и применим его к интерфейсу Ethernet0 как выходной

router1(config)#interface FastEthernet0/0

router1(config-if)#ip access-group 2 out

Создать скриншот результата выполнения команды

router1#show access-list

Попарно пропингуем A, B, C, PC5, D. В результате должна получиться следующая матрица доступа

Из\В A B C E D
A + + + - -
B + + + + +
C + + + + +
E - + + + +
D - + + + +

Таблица 1

Видим, что политика безопасности из теоретической части полностью реализована.

3.2 Удалим ACL c интерфейса е0 и применим как входной к интерфейсу s0

router1(config)#interface fa0/0

router1(config-if)#no ip access-group 2 out

router1(config-if)#int s2/0

router1(config-if)#ip access-group 2 in

Попарно пропингуем A, B, C, PC5, D. В результате должна получиться следующая матрица доступа

Из\В A B C E D
A + + + - -
B + + + - -
C + + + + +
E - - + + +
D - - + + +

Таблица 2

Видим, что теперь трафик между сетями 10.1.1.0/25 и 10.1.1.128/25 запрещен. Невозможен также трафик между сетью 10.1.1.0/25 и сетью 15.1.1.0/24 за исключением компьютера С с адресом 15.1.1.5.

4. Используем топологию и конфигурацию пункта 1 этой лабораторной работы

Отменим конфигурацию доступа, сделанную в пункте 1

Router2(config)#no access-list 1 deny 24.17.2.18 0.0.0.0

Router2(config)#no access-list 1 permit 0.0.0.0 255.255.255.255

Применим список к интерфейсу Ethernet маршрутизаторе 2

Router2(config)#interface fa0/0

Router2(config-if)#no ip access-group 1 in

Разрешим заходить на router1 телнетом на его два интерфейса с паролем router1

Router1(config)#line vty 0 4

Router1(config-line)#login

Router1(config-line)#password router1

Наши EACL будут делать пару различных вещей. Первое мы разрешим только телнет из подсети последовательного соединения 24.17.2.16/240 для входа на router1

router1(conf)#access-list 101 permit tcp 24.17.2.16 0.0.0.15 any eq telnet log

Опция log заставит маршрутизатор показывать выход при срабатывании списка доступа.

Разрешим на маршрутизаторе router1 весь трафик из Ethernet 0 подсети 24.17.2.0/240

router1(conf)#access-list 102 permit ip 24.17.2.0 0.0.0.15 any

Проверим установку списков

router1#show access-list

Router(config-if)# ip access-group №ACL in - student2.ru

Теперь применим списки к интерфейсам для входящих пакетов

router1(conf)# interface Serial2/0

router1(conf-if)# ip access-group 101 in

router1(conf-if)# interface fa0/0

router1(conf-if)# ip access-group 102 in

Для проверки, что EACL присутствуют на интерфейсах, используйте команду

router1#show running-config

или

router1#show ip interface

Проверим функционирования EACL. Присоединимся к router4 и попытаемся безуспешно пропинговать интерфейс Serial2/0 на router1

router4#ping 24.17.2.17

EACL номер 101 блокировал ping. Но должен разрешить telnet

router4#telnet 24.17.2.17

Успешно. Введём пароль router1. Промпт router4# изменился на router1>. Нажав одновременно ctrl-shift-6 и затем x, вернёмся на router4. О срабатывании EACL 101 на router1 нам укажет лог

Router(config-if)# ip access-group №ACL in - student2.ru

Посмотрим номер сессии и убьём телнет соединение

router4#show sess

router4# disconnect 1

Присоединимся к router2 и посмотрим, можем ли мы пропинговать интерфейс Serial0 на router4.

Router2# ping 24.17.2.18

Почему неудачно? Пакет стартует в Router2, идёт через Router1 (о срабатывании EACL 102 на router1 нам укажет лог

Router(config-if)# ip access-group №ACL in - student2.ru

) и приходит на Router4. На Router4 он переформируется и отсылается обратно к Router1. Когда Router4 переформирует пакет, адрес источника становится адресом приёмника и адрес приёмника становится адресом источника. Когда пакет приходит на интерфейс Serial0 на router1 он отвергается, так как его адрес источника равен IP адресу интерфейса Serial0 на router4 24.17.2.17, а здесь разрешён лишь tcp.

Присоединимся к router2 и посмотрим, можем ли мы пропинговать интерфейс Ethernet0 на router1.

router2#ping 24.17.2.1

Успешно. Аналогично и для телнета

router2#telnet 24.17.2.1

EACL работают успешно. О срабатывании EACL 102 на router1 нам укажет лог.

Router(config-if)# ip access-group №ACL in - student2.ru

Заметим, что лог так же постоянно показывает RIP обновления

Router(config-if)# ip access-group №ACL in - student2.ru

5. Именованные ACL

Отменим на router1 привязку EACL к интерфейсам

router1(conf)# interface Serial0

router1(conf-if)# no ip access-group 101 in

router1(conf-if)# interface Ethernet0

router1(conf-if)#no ip access-group 102 in

и отменим на router1 EACL

router1(conf)#no access-list 101

router1(conf)#no access-list 102

Поставим задачу запретить по всей сети лишь пинги от router4 на router2. Список доступа можно расположить и на router1 и на router2. Хотя рекомендуют располагать ACL ближе к источнику (для сокоащения трафика), в этом примере расположим именованный список с именем deny_ping на router2.

router2(config)#ip access-list extended deny_ping

router2(config-ext-nacl)#deny icmp 24.17.2.18 0.0.0.0 24.17.2.2 0.0.0.0 log

router2(config- ext-nacl)# permit ip any any log

Первая команда указывает, что мы создаём именованный расширенный список доступа с именем deny_ping. Вторая команда указывает на запрещение ICMP трафика с адресом источника строго 24.17.2.18 и адресом приёмника строго 24.17.2.2. Третья команда разрешает остальной IP трафик.

Проверим создание списка

router2#show access-list

Router(config-if)# ip access-group №ACL in - student2.ru

Всё правильно, мы видим в первой строке просто другую форму представления команды deny icmp 24.17.2.18 0.0.0.0 24.17.2.2 0.0.0.0 log.

Применим список для входного трафика интерфейса Ethernet0 на router2

Router2(conf)#interface Ethernet0

Router2(conf-if)#ip access-group deny_ping in

Присоединимся к router4 и пропингуем роутер2

router4#ping 24.17.2.2

Неудача. Присоединимся к router1 и пропингуем роутер2

Router1#ping 24.17.2.2

Успех. Присоединимся к router2 и посмотрим на два отдельных лог-сообщения: первое о запрещении пинга от router4 и второе о разрешении пинга от router1

Router(config-if)# ip access-group №ACL in - student2.ru

6. Рассмотрим более сложные вопросы расширенных списков доступа. Создадим топологию

Router(config-if)# ip access-group №ACL in - student2.ru .

Рисунок 9.4.

Используйте коммутаторы модели 1912. Маршрутизатор Router1 - модели 805. Маршрутизатор Router2 - модели 1605.

Назначим IP адреса маршрутизаторам

  Router1 Router2
Fa0/0 1.1.3.1/24 1.1.1.129/25
Fa1/0   1.1.1.1/25
Serial2/0 1.1.2.1/24 1.1.2.2/24

и компьютерам

Hostname IP на ethernet0 Шлюз
PC1 1.1.3.2 255.255.255.0 1.1.3.1
PC2 1.1.1.130 255.255.255.128 1.1.1.129
PC3 1.1.1.131 255.255.255.128 1.1.1.129
PC4 1.1.1.2 255.255.255.128 1.1.1.1
PC5 1.1.1.3 255.255.255.128 1.1.1.1

На Router1 и Router2 конфигурируем RIP

Router(config)#router rip

Router(config-router)#network 1.0.0.0

Интерфейсы всех устойств должны пинговаться со всех устройств.

6.1. Список доступа сеть-сеть.

Создадим список, который разрешает трафик от локальной сети компьютеров PC4 и PC5 в локальную сеть компьютера PC1 и запрещает трафик от локальной сети компьютеров PC2 и PC3 в локальную сеть компьютера PC1. Так как трафик приходит от router2 к router1 , то следует поместить список доступа на интерфейс serial2/0 router1 для входного трафика

Router1(conf)#access-list 100 permit ip 1.1.1.0 0.0.0.127 1.1.3.0 0.0.0.255 log

Router1(conf)#access-list 100 permit ip 1.1.2.0 0.0.0.255 any log

Первая команда непосредственно решает поставленную задачу, а вторая разрешает широковещание RIP протоколов. Проверим создание

Router1#show access-list

Router(config-if)# ip access-group №ACL in - student2.ru

Применим список доступа к интерфейсу.

Router1(conf)#interface Serial2/0

Router1(conf-if)#ip access-group 100 in

Для тестирования списка доступа, попытайтесь пропинговать PC1 от PC2, PC3, PC4 и PC5.

PC#Ping 1.1.3.2

Для PC2 и PC3 пинги не пойдут. Для PC4 и PC5 пинги пойдут. Список доступа работает. Посмотрите логи на router1

Router(config-if)# ip access-group №ACL in - student2.ru .

6.2.Список доступа хост-хост.

Создадим на router2 список доступа, который блокирует доступ к PC5 только с PC2. Контролировать попытки доступа можно по логам на router2.

Router2(conf)#access-list 101 deny ip 1.1.1.130 0.0.0.0 1.1.1.3 0.0.0.0 log

Router2(conf)# access-list 101 permit ip any any

Проверим создание

Router2#show access-list

Router(config-if)# ip access-group №ACL in - student2.ru

Применим список доступа к fast Ethernet интерфейсу router2

Router2(conf)#interface FastEthernet0/0

Router2(conf-if)#ip access-group 101 in

Присоединитесь к PC2 и проверьте, что вы не можете пиновать PC5

PC2# Ping 1.1.1.3

На router2 появится лог

Router(config-if)# ip access-group №ACL in - student2.ru

Присоединитесь к PC3 и проверьте, что вы можете пиновать PC5.

PC3# Ping 1.1.1.3

На router2 появится лог

Router(config-if)# ip access-group №ACL in - student2.ru

6.3.Список доступа сеть-хост.

Вначале удалим предыдущие списки доступа с интерфейсов Router1 и Router2.

Router1(conf)#interface Serial2/0

Router1(conf-if)#no ip access-group 100 in

и

Router2(conf)#interface FastEthernet0/0

Router2(conf-if)#no ip access-group 101 in

Создадим расширенный список доступа, который блокирует весь трафик к PC1 из локальной сети компьютеров PC2 и PC3. Так как мы блокируем весь трафик, то будем использовать IP протокол.

Router2(conf)#access-list 102 deny ip 1.1.1.128 0.0.0.127 1.1.3.2 0.0.0.0 log

Router2(conf)#access-list 102 permit ip any any

Проверим создание

Router2#show access-list

Router(config-if)# ip access-group №ACL in - student2.ru

Применим список к исходящему трафику на интерфейсе Serial2/0 Router2

Router2(conf)#interface Serial2/0

Router2(conf-if)#ip access-group 102 out

Для проверки списка попытайтесь пропинговать PC1 (1.1.3.2) из PC2 и PC3. Пинги не пройдут. Симулятор почему-то не даёт лог на консоли Router2. Но эффект выможете увидеть так

Router(config-if)# ip access-group №ACL in - student2.ru

Вы видите после каждого неудачного пинга количество отслеженных (matches) пакетов возрастает.

Контрольные вопросы

1. Что такое ACL?

2. Какой адрес является критерием для разрешения/запрещения пакета?

3. Где применяются ACL?

4. Как задать элемент ACL и что такое инверсная маска?

5. Как роутер обрабатывает элементы ACL?

6. Какой элемент всегда неявно присутствует в ACL?

7. Как ACL применить к интерфейсу и затем его отменить?

8. Чем отличается входной ACL от выходного?

9. Где в сети рекомендуется размещать ACL?

10. Какими тремя командами можно проверить содержимое ACL и привязку к интерфейсу.

11. Что фильтруют расширенные ACL?

12.Какую дополнительную функциональность имеютрасширенные ACL по сравнению со стандартными?

13. Можно ли, используя расширенные ACL, наложить ограничения на трафик к определённой TCP/IP службе?

14. Опишите процедуру создания именованного ACL.

15. Как отредактировать конкретную строку в числовом ACL?

16. Как отредактировать конкретную строку в именованном ACL?

17. Чем отличается форматы команд для ввода элементов числового и именованного ACL?

Наши рекомендации