Перейти к содержанию

CoPP. Настройка списков

Описание и назначение функции и выполняемой настройки

В рамках механизма защиты управляющей плоскости (CoPP / cpu-defend) списки (filter-list) используются для классификации трафика, поступающего на CPU, с целью дальнейшего применения политик обработки.

Данная настройка позволяет:

  • выделять трафик по заданным критериям (IP, протокол, порты);
  • формировать списки разрешённого (whitelist) и запрещённого (blacklist) трафика;
  • определять пользовательские потоки (user-defined-flow) для более гибкой обработки;
  • задавать порядок обработки различных категорий трафика.

Основные сценарии использования:

  • блокировка нежелательного трафика на CPU (например, ICMP flood);
  • выделение критически важного трафика управления;
  • реализация приоритетной обработки различных типов трафика;
  • построение политики защиты с разным уровнем доверия.

Необходимые условия и предварительные требования

  • Создана политика cpu-defend.
  • Определены filter-list (ACL), используемые для классификации трафика.
  • Понимание типов трафика, поступающих на CPU.
  • Настроена базовая политика CoPP (cpu-defend policy).

Основная информация о применяемых технологиях

CoPP (Control Plane Protection)

CoPP обеспечивает защиту CPU устройства путём:

  • фильтрации;
  • ограничения скорости;
  • классификации трафика.

В рамках CoPP используется разделение трафика по категориям:

  • whitelist — доверенный трафик;
  • blacklist — запрещённый трафик;
  • user-defined-flow — пользовательские правила.

Filter-list

Filter-list — механизм классификации трафика, аналог ACL.

Используется для:

  • определения соответствия пакетов заданным условиям;
  • привязки правил к CoPP-политике.

Поддерживаемые типы:

  • IPv4 (1001–2000);
  • IPv6;
  • L2;
  • hybrid.

Приоритет обработки (Priority)

Порядок обработки списков определяет, какая категория трафика будет проверяться первой.

Обработка происходит последовательно:

  1. blacklist
  2. user-defined-flow
  3. whitelist

Назначение применяемой команды/конфигурации

SW4(config-policy-1)# ?
  auto-defend         Auto-defend
  auto-port-defend    Auto-port-defend
  blacklist           Black list
  car                 Car the packet
  cls                 Clear screen
  deny                Deny the packet
  description         Set cpudefend policy description
  end                 End current mode and change to enable mode.
  exit                Exit current mode and down to previous mode
  help                Description of the interactive help system
  list                Print command list
  no                  Negate a command or set its defaults
  packet-type         Packet type
  priority            The priority of whitelist and blacklist  and user-defined-flow
  quit                Exit current mode and down to previous mode
  reset               Reset
  user-defined-flow   User defined  list
  whitelist           Whilte list
Основные команды для работы со списками:

  • blacklist
    Определяет список запрещённого трафика.

  • whitelist
    Определяет список разрешённого трафика.

  • user-defined-flow
    Создаёт пользовательские правила обработки.

  • priority
    Задаёт порядок обработки списков.

1
2
3
4
5
6
7
SW4(config-policy-1)#blacklist ?
  disable              Disable black list
  enable               Enable black list
  filter-list-hybrid   Hybrid Filter list table.
  filter-list-ipv4     Filter list table
  filter-list-ipv6     Internet Protocol Version 6
  filter-list-l2       Filter list table based on MAC and vlan .
  • blacklist enable
    Включение blacklist.

  • blacklist filter-list-ipv4 <ID>
    Привязка IPv4 filter-list к blacklist.

1
2
3
4
5
6
7
SW4(config-policy-1)#whitelist ?
  disable              Disable white list
  enable               Enable white list
  filter-list-hybrid   Hybrid Filter list table.
  filter-list-ipv4     Filter list table
  filter-list-ipv6     Internet Protocol Version 6
  filter-list-l2       Filter list table based on MAC and vlan .
  • whitelist enable
    Включение whitelist.

  • whitelist filter-list-ipv4 <ID>
    Привязка filter-list к whitelist.

SW4(config-policy-1)#user-defined-flow
  <1-8>   The range of user defined list
  • user-defined-flow <ID>
    Привязка пользовательского потока.
1
2
3
4
SW4(config-policy-1)#priority ?
  blacklist           Black list
  user-defined-flow   User defined flow
  whitelist           White list
  • priority
    Определяет порядок обработки

Пример конфигурации

1
2
3
4
5
SW4(config)# filter-list 1001
SW4(configure-filter-ipv4-1001)# filter 1 icmp 10.0.0.1/32 any any any
SW4(configure-filter-ipv4-1001)# filter 2 tcp 10.0.0.1/32 any 10.0.0.2/32 179
SW4(configure-filter-ipv4-1001)# exit
SW4(config)# filter-list 1002
Создание filter-list:

  • 1001 — трафик ICMP и TCP;
  • 1002 — дополнительный список (без правил).

1
2
3
4
SW4(config)#cpu-defend policy 1
SW4(config-policy-1)#blacklist filter-list-ipv4 1001
SW4(config-policy-1)#user-defined-flow 1 filter-list 1002
SW4(config-policy-1)#priority blacklist user-defined-flow whitelist
Настройка политики:

  • blacklist использует filter-list 1001;
  • user-defined-flow использует filter-list 1002;
  • задан порядок обработки списков.

Изучение состояния устройства

SW4#sh cpu-defend policy 1
  Policy Name                             :1
  Description                             :
  Priority                                :blacklist user-defined-flow whitelist

  Whitelist Configuration
  Whitelist Status                        :disable
  Whitelist IPV4 ACL Number               :0
  Whitelist                               :CIR(64) CBS(12800)
  Whitelist IPV6 ACL Number               :0
  Whitelist L2 ACL Number                 :0
  Whitelist HYBRID ACL Number             :0
  Whitelist L2 Action                     :mirror-cpu
  Whitelist IPV4 Action                   :mirror-cpu
  Whitelist HYBRID Action                 :mirror-cpu
  Whitelist IPV6 Action                   :mirror-cpu
  Whitelist IPV6                          :CIR(64) CBS(12800)

  Blacklist Configuration
  Blacklist Status                        :enable
  Blacklist IPV4 ACL Number               :1001
  Blacklist IPV6 ACL Number               :0
  Blacklist L2 ACL Number                 :0
  Blacklist HYBRID ACL Number             :0

  Attack-source-trace Configuration
  Attack - source - trace                 :disable
  Attack-source-trace Threshold           :128
  Attack - source - trace Alarm           :disable
  Attack-source-trace Alarm Threshold     :128
  All Packet PPS                          :200

  User-defined-flow Configuration
    User - defined - flow:1      ACL number          :1002
    User - defined - flow:1      IPV6 ACL number     :0
    User - defined - flow:1      Action              :no deny
    User - defined - flow:1      Cir                 :64
    User - defined - flow:1      Cbs                 :6400


  Car Packet Configuration
  Packet Type       Cir         Cbs         Pps         Prio        Queue       Action
  total             800         12800       ---         2           0           no deny
  total             ---         ---         512         2           0           no deny
  telnet            64          12800       ---         2           6           no deny
  telnet            ---         ---         512         2           6           no deny
  tcp               64          12800       ---         2           1           no deny
  tcp               ---         ---         512         2           1           no deny
  icmp              64          12800       ---         2           1           no deny
  icmp              ---         ---         512         2           1           no deny
  snmp              64          12800       ---         2           2           no deny
  snmp              ---         ---         512         2           2           no deny
  fibhit            128         12800       ---         2           0           no deny
  fibhit            ---         ---         512         2           0           no deny
  fib6hit           128         12800       ---         2           0           no deny
  fib6hit           ---         ---         512         2           0           no deny
  ssh               64          12800       ---         2           6           no deny
  ssh               ---         ---         512         2           6           no deny
Отображает:

  • активные списки (blacklist, user-defined-flow);
  • приоритет обработки;
  • параметры ограничения трафика;
  • статистику.

Просмотр конфигурации

1
2
3
4
5
6
SW4#show cpu-defend config
!
cpu-defend policy 1
 priority blacklist user-defined-flow whitelist
 blacklist enable
 blacklist filter-list-ipv4 1001
SW4#show run
!
cpu-defend policy 1
 priority blacklist user-defined-flow whitelist
 blacklist enable
 blacklist filter-list-ipv4 1001
 user-defined-flow 1 filter-list 1002
!
filter-list 1001
 filter 1 icmp 10.0.0.1/32 any any any
 filter 2 tcp 10.0.0.1/32 any 10.0.0.2/32 179
!
filter-list 1002


История возникновения команды

Команды применимы для:

  • аппаратных платформ CIT серии L3200;
  • версий программного обеспечения v1.0.2 и выше.

Версия ПО

Функциональность является актуальной, начиная с версии ПО v1.0.2.


Ссылка на внешнюю документацию

Стандарт

RFC 6192 — Protecting the Router Control Plane