Главная

Saturday, 3 April 2021

Мощное средство Cisco NBAR.

Всем привет.

До недавних пор считалось что анализировать сеть с помощью NetFlow - это вполне современно и функционально. Действительно, анализизаторы NetFlow многими считаются полезными инструментами для мониторинга и анализа сетевого трафика. Анализаторы NetFlow позволяют вам определить те машины и устройства, которые негативно влияют на пропускную способность вашей сети, найти узкие места в вашей системе, а также, в конечном счете, повысить общую эффективность функционирования вашей сети.

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

Шаблон для IOS системы:

 # conf t

(config)# mls netflow interface

(config)# mls flow ip interface-full

(config)# ip flow-export source <interface x/x>

(config)# ip flow-export version <#>

(config)# ip flow-export destination <ip address | esl record> <port>

(config-int)# ip flow ingress

#

Шаблон для NX-OS:

# conf t

(config)# feature netflow

(config)# flow record <record-name>

(config)# match ip ipv4 source address

(config)# match ip ipv4 destination address

!

(config)# flow exporter <exporter-name>

(config)# destination <ip address | esl-record>

(config)# transport UDP 2055

(config)# version <#>

(config)# source <interface>

(config)# flow monitor <monitor-name>

(config)# record <record-name>

(config)# exporter <exporter-name>

(config-int)# ip flow monitor <monitor-name> input

(config)# end

#


Но компания Cisco не остановилась на достигнутом и предложила  более совершенный механизм NBAR. Распознавание сетевых приложений (Network Based Application Recognition, NBAR) - это предлагаемая компанией Cisco инструментальная возможность управления устройствами. С помощью NBAR осуществляется глубокий анализ пакетов, в результате которого собирается статистическая информации о трафике определенного приложения. Компания Cisco инвестировала большой объем средств в разработку NBAR нового поколения. Средство NBAR представляет собой механизм классификации, который распознает широкий диапазон приложений, включая протоколы WWW и другие сложно квалифицируемые протоколы, использующие динамическое назначение портов TCP/UDP. После того как приложение определено и классифицировано с помощью средства NBAR, сеть может запускать службы для данного приложения. Средство NBAR обеспечивает эффективное использование полосы пропускания за счет классификации пакетов и использования функции QoS для классифицированного трафика. 

Ниже приводятся некоторые примеры функций QoS на базе классов, которые могут применяться к трафику после его классификации с помощью средства NBAR:

•Маркировка на основе классов (команда set)

•Механизм взвешенной равноправной очередности на основе классов Class-Based Weighted Fair Queueing (команды bandwidth и queue-limit)

•Организация очереди с малой задержкой (команда priority)

•Политики трафика (команда police)

•Формирование трафика (команда shape)


Информация о средствах, реализованных на основе классов и позволяющих перенаправлять трафик, классифицированный с помощью NBAR, приводится в описаниях отдельных модулей для конкретных средств, реализованных на основе классов, а также в Руководстве по решениям управления качеством обслуживания Cisco IOS.

Назначение функции качества обслуживания IP (Quality of Service, QoS) состоит в выделении приложениям необходимых ресурсов сети (полоса пропускания, задержка, джиттер и потеря пакетов). Функция QoS максимально увеличивает возврат инвестиций в сетевую инфраструктуру, гарантируя производительность критически важных приложений не ниже требуемой; при этом некритические приложения не оказывают на них негативного воздействия.

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

По этой причине этап классификации траффика является важным шагом при конфигурировании функции QoS в сетевой инфраструктуре.

В средстве NBAR появилось несколько новых методов классификации, позволяющих классифицировать приложения и протоколы уровней с 4 по 7:

•Статическое назначение номеров портов TCP и UDP.

В средстве NBAR предусмотрена возможность классификации протоколов статических портов. Несмотря на то, что для этих целей могут использоваться и списки управления доступом (access control list, ACL), настройка средства NBAR значительно проще. Кроме того, NBAR обеспечивает статистику по классификации, недоступную при использовании списков ACL.

•IP-протоколы, не основанные на UDP и TCP.

•Динамическое назначение номеров портов TCP и UDP. Для классификации таких приложений необходима проверка с отслеживанием состояний, то есть способность обнаруживать подключения для передачи данных, которые необходимо классифицировать, посредством анализа тех подключений, где выполнено назначение порта.

•Классификация подпортов или классификация на основе глубокой проверки пакетов, т.е. классификация с углубленным изучением пакета.

В NBAR входит средство распознавания протоколов (Protocol Discovery), которое представляет собой простой способ поиска протоколов приложений, работающих через определенный интерфейс. Средство распознавания протоколов позволяет идентифицировать трафик любого протокола, поддержка которого реализована в средстве NBAR. По каждому протоколу средство распознавания протоколов выполняет сбор следующих статистических данных для активированных интерфейсов: полное число входящих и исходящих пакетов и байтов, а также входящая и исходящая скорость передачи данных. Средство распознавания протоколов собирает важнейшие статистические данные по каждому протоколу в сети, который может быть использован для определения классов трафика и политик QoS для каждого класса трафика.

Так выглядит настройка идентификации по QoS:

class-map match-all class-video

match dscp ef

!

policy-map policy_video

class class-video

bandwidth percent 30

!

interface GigabitEthernet 0

service-policy output policy_video


##########################################

Идентификация приложения по IP-адресу, типу протокола и номеру порта ACL L3+L4:

Router(config)# access-list 107 permit tcp any host 192.168.1.2 eq www


##########################################

NBAR Protocol Discovery отличается тем что имеет:

- настройка сбора статистических данных о трафике для всех приложений, известных NBAR

- также используется для распознавания приложений

- распознавание протоколов приложений на интерфейсах и заполнение базы данных CISCO-NBAR-PROTOCOL-DISCOVERY-MIB

- поддержка как входящего, так и исходящего трафика.


Команды настройки:

Router(config)# interface fastethernet 0/0

Router(config-if)# ip nbar protocol-discovery


Команда отображения:

Router# show ip nbar protocol-discovery [interface interface-spec][stats {byte-count|bit-rate|packet-

count}][protocol protocol-name| top-n number}]

Router# show ip nbar protocol-discovery top-n 5 GigabitEthernet0


##########################################

NBAR Modular QoS гарантирует эффективное использование пропускной способности сети при выполнении функций QoS:

- распознавание протоколов приложений на интерфейсах

- поддержка как входящего, так и исходящего трафика

- заполнение базы данных CISCO-CLASS-BASED-QOS-MIB

- счетчики до и после применения политики.


Команда настройки:

Router(config)# class-map [match-any|match all] <myClass>

Router(config-cmap)# match protocol <application>

Контролируются только настроенные applications.


Карта классов class-map определяет идентифицируемый трафик.

Class-map (what is it used):

class-map match-any peer2peer

match protocol kazaa2

match protocol gnutella

match protocol fastrack 


Карта политик policy-map определяет способ обработки трафика на основании карты классов class map.

Policy-map (how is it used):

policy-map limit-p2p

class peer2peer

bandwidth percent 10 


Policy-map (where is it used):

interface Serial1

service-policy input limit-p2p


#########################################

Example:

ip nbar custom lunar_light 8 ascii Moonbeam tcp range 8000 8001

!

class-map solar_system

  match protocol lunar_light

!

policy-map astronomy

  class solar_system

  set ip dscp AF21

!

interface Serial1

  service-policy output astronomy


• Имя (“lunar light”) - имя критерия поиска соответствия длиной до 24 символов

• Смещение (пропустить первые "8" байтов)) - указывается начальный байт строки или значения в пакете данных, которое п роверяется на соответствие критерию поиска, отсчет байтов начинается с нуля

• Формат ("ascii") - определяется формат критерия соответствия ASCII, hex или decimal

• Значение("Moonbeam ") - значение критерия поиска соответствующего значению в пакете. При использовании формата ASCI I длина не превышает 16 символов

• [ Исходный порт или п рт назначения] ("[source | destination] ") - необязательный па раметр, огра ничивающий направление анализа пакета; по умолчанию используется двунаправленный анализ

• TCP ил и UDP ( " tcp ") - указывается протокол, инкапсулированный в IP-пакете

• Диапазон или выбранны й номер порта ( портов) ( "range 2000 2999 ") - "диапазон" с "начальным " и "конечным " номерами портов, может указы ваться диа пазон до 1000 номеров ил и от 1 до 16 отдельных номеров портов


##########################################

Пользовательские приложения:

Используется для явной классификации на основании портов

- в системе NBAR приложения называются по умолчанию "custom-01", "custom-02" и т.д.

- совет: давать приложениям осмысленные имена

- имя будет появляться при распознавании протоколов и в экспорте NetFlow

router(config)# ip nbar custom name [offset [format value]] [variable field-name field-length] [source|destinaiton] [tcp | udp] [range start end | port-number]


Для проверки доступны только первые 255 байтов полезной нагрузки

- До 16 пользовательских приложений (121 в NBAR2)

- Специальные приложения на основе извлекаемых полей на данный момент отсутствуют (пример: URL, host т.д.)

- В случае, если порт связан с другим приложением, генерируется следующее сообщение об ошибке:

router# NBAR Error: Specified port(s) are associated with <protocol>

используйте команду:

Router(config)# ip nbar port-map <name> tcp|udp <list of ports>

Router# show ip nbar protocol-discovery top-n 5 

Подведем итог.

Средство NBAR дает возможность определять и классифицировать трафик сети для протокола. Определение и классификация трафика представляет собой важнейший этап реализации функции QoS. Администратор сети имеет возможность более эффективно внедрять функцию QoS в структуру сети после определения количества приложений и протоколов, использующихся в работе сети. Средство NBAR дает возможность просматривать все протоколы, а также количество трафика, генерируемого каждым протоколом. После сбора данной информации пользователь получает возможность определять классы трафика. Эти классы затем могут быть использованы для назначения сетевому трафику различных уровней обслуживания, что позволяет улучшить управление сетью посредством назначения трафику необходимых сетевых ресурсов.

В статье использованы материалы доклада Михаила Кадера "Обнаружение сетевых аномалий и угроз с помощью инфраструктурного оборудования Cisco".

No comments:

Post a Comment

А что вы думаете по этому поводу?