Опубликован: 03.10.2011 | Доступ: свободный | Студентов: 6575 / 1801 | Оценка: 4.48 / 4.40 | Длительность: 18:03:00
Лекция 14:

Сетевые фильтры

< Лекция 13 || Лекция 14: 12 || Лекция 15 >
Аннотация: Рассмотрены принципы функционирования сетевых фильтров. Приведены примеры конфигурирования стандартных, расширенных, именованных списков доступа. Даны команды верификации и отладки сетевых фильтров.

14.1. Функционирование списков доступа

Сетевой администратор должен иметь возможность управления потоком данных, обеспечивая доступ к требуемым ресурсам зарегистрированным пользователям и запрещая нежелательный доступ к сети. Для защиты информации широко используются пароли, криптографирование передаваемой информации, физические устройства безопасности. Наряду с перечисленными устройствами и методами для повышения гибкости фильтрации трафика широко применяются сетевые фильтры или списки доступа (Access ListsACL ), которые способствуют эффективности и оптимизации сети. Списки доступа могут использоваться, чтобы разрешать (permit) или запрещать (deny) продвижение пакетов через маршрутизатор, разрешать или запретить доступ в сеть информации из Интернета, а также по командам Telnet.

Списки доступа ACL могут быть созданы для всех сетевых протоколов, функционирующих на маршрутизаторе, например IP или IPX, и устанавливаются на интерфейсах маршрутизаторов. Запрет или разрешение сетевого трафика через интерфейс маршрутизатора реализуется на основании анализа совпадения определенных условий. Для этого списки доступа представляются в виде последовательных записей, в которых используют адреса и протоколы. Сетевые фильтры (списки доступа) создаются для входящих или исходящих пакетов на основании анализируемых параметров (адреса источника, адреса назначения, протокола и номера порта верхнего уровня), указанных в списке доступа ACL ( рис. 14.1).

Списки доступа могут быть определены для каждого установленного на интерфейсе протокола и для каждого направления сетевого трафика (исходящего и входящего). Поэтому для входящего и исходящего трафиков через интерфейс создаются отдельные списки. Например, для двух интерфейсов маршрутизатора, сконфигурированных для трех протоколов (IP, AppleTalk и IPX), может быть создано 12 отдельных списков доступа (на каждом интерфейсе по 6 списков – 3 для входящего и 3 для исходящего трафика).

Принятие решения при тестировании пакета

Рис. 14.1. Принятие решения при тестировании пакета

Списки доступа повышают гибкость сети. Например, списки, ограничивающие видеотрафик, могут уменьшить нагрузку сети и повысить ее пропускную способность для передачи данных или аудиосигналов. Можно определить, какие типы трафика могут быть отправлены, а какие заблокированы в интерфейсах маршрутизатора, например, можно разрешить маршрутизацию электронной почте, но блокировать трафик Telnet. Можно использовать разрешение или запрет доступа различным типам файлов, таким как FTP или HTTP.

Если списки доступа не формируются на маршрутизаторе, то все проходящие через маршрутизатор пакеты будут иметь доступ к сети.

Список доступа ACL составляется из утверждений (условий), которые определяют, следует ли пакеты принимать или отклонять во входных и выходных интерфейсах маршрутизатора. Программное обеспечение IOS Cisco проверяет пакет последовательно по каждому условию. Если условие, разрешающее продвижение пакета, расположено наверху списка, никакие условия, добавленные ниже его, не будут запрещать продвижение пакета. Если в списке доступа необходимы дополнительные условия, то список целиком должен быть удален и создан новый с новыми условиями.

Функционирование маршрутизатора по проверке соответствия принятого пакета требованиям списка доступа производится следующим образом. Когда кадр поступает на интерфейс, маршрутизатор проверяет МАС-адрес. Если адрес назначения соответствует адресу интерфейса, то маршрутизатор извлекает (декапсулирует) из кадра пакет и проверяет его на соответствие условиям списка ACL входного интерфейса. При отсутствии запрета или отсутствии списка доступа пакет инкапсулируется в новый кадр второго уровня и отправляется интерфейсу следующего устройства.

Проверка условий (утверждений) списка доступа производится последовательно. Если текущее утверждение верно, пакет обрабатывается в соответствии с командами permit или deny списка доступа, остальная часть условий ACL не проверяется. Если все утверждения ACL неверны, то неявно заданная по умолчанию команда deny any ( запретить все остальное ) в конце списка не позволит передавать дальше по сети несоответствующие пакеты.

Существуют разные типы списков доступа: стандартные (standard ACLs), расширенные (extended ACLs) и именованные (named ACLs). Когда список доступа конфигурируется на маршрутизаторе, каждый список должен иметь уникальный идентификационный номер. Это число идентифицирует тип созданного списка доступа и должно находиться в пределах определенного диапазона, заданного для этого типа списка (таблица 14.1).

Таблица 14.1. Диапазоны идентификационных номеров списков доступа
Диапазон номеров Название списка доступа
1-99 IP standard access-list
100-199 IP extended access-list
1300-1999 IP standard access-list (extended range)
2000-2699 IP extended access-list (extended range)
600-699 Appletalk access-list
800-899 IPX standard access-list
900-999 IPX extended access-list

Стандартные списки доступа (Standard access lists). Для принятия решения в IP-пакете анализируется только адрес источника сообщения, чтобы фильтровать сеть (IPX-стандарт может фильтровать как адрес источника, так и назначения).

Расширенные списки доступа (Extended access lists) проверяют как IP-адрес источника, так и IP-адрес назначения, поле протокола в заголовке пакета Сетевого уровня и номер порта в заголовке Транспортного уровня.

Таким образом, для каждого протокола, для каждого направления трафика и для каждого интерфейса может быть создан свой список доступа. Исходящие фильтры не затрагивают трафик, который идет из местного маршрутизатора.

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

Список доступа производит фильтрацию пакетов по порядку, поэтому в строках списков следует задавать условия фильтрации, начиная от специфических условий и заканчивая общими. Условия списка доступа обрабатываются последовательно от вершины списка к основанию, пока не будет найдено соответствующее условие. Если никакое условие не найдено, тогда пакет отклоняется и уничтожается, поскольку неявное условие deny any (запретить все остальное) есть неявно в конце любого списка доступа. Не удовлетворяющий списку доступа пакет протокола IP будет отклонен и уничтожен, при этом отправителю будет послано сообщение ICMP. Новые записи (линии) всегда добавляются в конце списка доступа.

14.2. Функционирование списков доступа

Конфигурирование списков доступа производится в два этапа:

  1. Создание списка доступа в режиме глобального конфигурирования.
  2. Привязка списка доступа к интерфейсу в режиме детального конфигурирования интерфейса.

Формат команды создания стандартного списка доступа следующий:

Router(config)#access-list {№} {permit или deny} {адрес источника}.

Списки доступа могут фильтровать как трафик, входящий в маршрутизатор (in), так и трафик, исходящий из маршрутизатора (out). Направление трафика указывается при привязке списка доступа к интерфейсу. Формат команды привязки списка к интерфейсу следующий:

Router(config-if)#{протокол} access-group {номер} {in или out}

После привязки списка доступа его содержимое не может быть изменено. Не удовлетворяющий администратора список доступа должен быть удален командой no access-list и затем создан заново.

Ниже приведены примеры конфигурирования стандартных списков доступа по защите Сети 1 ( рис. 14.2).

Схема сети

Рис. 14.2. Схема сети

Пример 1. Необходимо, чтобы серверы Сети 1 были доступны только узлу Host 2-1 Сети 2 с адресом 192.168.20.11, а все остальные узлы Сети 2 и Сети 3 не имели бы доступа в Сеть 1. Список доступа следует установить на интерфейс F0/0 маршрутизатора Router_A. Номер списка доступа (10) выбирается из диапазона таблицы 14.1. Адреса сетей, а также названия и адреса интерфейсов приведены в таблице 14.2.

Таблица 14.2. Адреса сетей и интерфейсов маршрутизаторов
IP-адрес сети Интерфейсы IP-адрес интерфейса
Сеть 1 192.168.10.0/24 F0/0 192.168.10.1
Сеть 2 192.168.20.0/24 F0/0 192.168.20.1
Сеть 3 192.168.30.0/24 F0/0 192.168.30.1
Сеть 4 200.40.40.0/24 S1/1 200.40.40.11
S1/2 200.40.40.12
Сеть 5 200.50.50.0/24 S1/1 200.50.50.11
S1/2 200.50.50.12

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

Router_A(config)#access-list 10 permit 192.168.20.11
Router_A(config)#int f0/0
Router_A(config-if)#ip access-group 10 out

Согласно созданной конфигурации ко всем исходящим из маршрутизатора пакетам через интерфейс F0/0 будет применяться список доступа:

  • permit 192.168.20.11 – присутствует в списке в явном виде;
  • deny any – присутствует неявно в конце каждого списка доступа.

Некоторые версии операционных систем IOS-маршрутизаторов требуют в обязательном порядке использования масок WildCard при задании адресов узлов и сетей либо расширения host при задании адресов узлов. Подобные дополнения рассмотрены в следующих примерах.

Пример 2. Серверы Сети 1 должны быть доступны всем узлам Сети 2 и узлу Host 3-1 Сети 3 с адресом 192.168.30.11, остальные узлы Сети 3 не должны иметь доступа. Список доступа нужно установить на интерфейс F0/0 Router_A. В списке доступа имеются адреса сети и отдельного узла, поэтому необходимо использовать маску WildCard. Нулевые значения маски WildCard означают требование обработки соответствующих разрядов адреса, а единичные – игнорирование соответствующих разрядов адреса при функционировании списка доступа. Таким образом, маска 0.0.0.0 предписывает анализ и обработку всех разрядов адреса, т.е. в этом случае будет обрабатываться адрес каждого узла. Маска 0.0.0.255 показывает, что обрабатываться будет только сетевая часть адреса класса С.

Следовательно, список доступа будет следующим:

Router_A(config)#access-list 11 permit 192.168.30.11 0.0.0.0
Router_A(config)#access-list 11 permit 192.168.20.0 0.0.0.255
Router_A(config)#int f0/0
Router_A(config-if)#ip access-group 11 out

Согласно созданной конфигурации ко всем исходящим из маршрутизатора пакетам через интерфейс f0/0 будет применяться список доступа:

  • permit 192.168.30.11 – разрешение узлу с инвертированной маской WildCard 0.0.0.0,
  • permit 192.168.20.0 – разрешение сети с инвертированной маской WildCard 0.0.0.255,
  • deny any – присутствует неявно в конце списка доступа.

Записи 192.168.30.11 0.0.0.0 полностью соответствует другой вариант – host 192.168.30.11, который также предписывает обрабатывать адрес только одного узла.

Пример 3. В сети рис. 14.2 необходимо установить список доступа, который:

  1. блокирует рабочей станции 192.168.20.11 Сети 2 доступ в Сеть 1;
  2. блокирует рабочей станции 192.168.30.24 Сети 3 доступ в Сеть 1;

Для этого создается список доступа:

Router_А(config)#access-list 12 deny host 192.168.20.11
Router_А(config)#access-list 12 deny host 192.168.30.24
Router_А(config)#access-list 12 permit any
Router_А(config)#int f0/0
Router_А(config-if)#ip access-group 12 out

Данный список блокирует доступ в Сеть 1 только двум рабочим станциям – 192.168.20.11 и 192.168.30.24, а всем остальным доступ разрешен. Если бы отсутствовала третья строка списка доступа, то ни одна станция из других сетей не могла бы попасть в Сеть 1.

< Лекция 13 || Лекция 14: 12 || Лекция 15 >
Александр Хованский
Александр Хованский
в курсе построение сетей на базе коммутаторов и маршрутизаторов некорректно задан вопрос. звучит так сколько портов сконфинурировать в VLAN0 для управления коммутатором. (поменяйте например на VLAN1 или VLAN управления ) 0-го VLAN не может быть
Алексей Фомичевский
Алексей Фомичевский
Украина, Запорожье, ЗГИА