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

CoPP. Создание и применение политики защиты

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

Control Plane Protection (CoPP) — механизм защиты управляющей плоскости устройства, предназначенный для ограничения и контроля трафика, направленного непосредственно на CPU.

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

  • защита устройства от DoS/DDoS атак на управляющую плоскость;
  • ограничение служебного трафика (management-plane policing);
  • обеспечение стабильной работы протоколов управления и маршрутизации.

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

  • Устройство функционирует в штатном режиме и имеет активную управляющую плоскость.
  • Настроен доступ к устройству (SSH/Telnet/SNMP) — для контроля влияния политики.
  • Понимание типов трафика, поступающих на CPU (management и control traffic).
  • Отсутствие конфликтующих политик cpu-defend (одновременно активна одна политика).

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

Control Plane Protection (CoPP)

CoPP — механизм защиты CPU устройства от перегрузки трафиком.

Особенности:

  • применяется только к трафику, направленному на CPU;
  • не влияет на транзитный трафик (data plane);
  • позволяет задавать ограничения скорости (rate-limit);
  • поддерживает классификацию по типам пакетов.

Обработка трафика:

  1. Пакет поступает на устройство.
  2. Определяется, направлен ли он на CPU.
  3. Если да — применяется политика cpu-defend.
  4. Выполняется действие (ограничение, разрешение или блокировка).

CAR (Committed Access Rate)

CAR — механизм ограничения скорости трафика.

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

  • задания CIR (Committed Information Rate);
  • задания CBS (Committed Burst Size);
  • ограничения пакетов в секунду (PPS).

Применяется к различным типам трафика.

Классификация трафика (Packet-type)

Политика позволяет классифицировать трафик по типам:

  • telnet
  • ssh
  • icmp
  • snmp
  • tcp
  • и другие

Для каждого типа можно задать:

  • лимиты;
  • приоритет;
  • действие (deny / permit / rate-limit).

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

1
2
3
4
SW4(config)#cpu-defend ?
  application-apperceive   Application apperceive
  bind-policy              The bind policy of cpu defend
  policy                   The policy of cpu defend
  • cpu-defend policy <ID>
    Создание политики защиты CPU.

  • cpu-defend bind-policy <ID>
    Применение политики к устройству (активация).

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
Основные параметры политики:

  • packet-type <type>
    Выбор типа трафика для настройки.

  • car
    Настройка ограничения скорости (CIR, CBS, PPS).

  • deny
    Полная блокировка трафика выбранного типа.

  • priority
    Назначение приоритета обработки трафика.

  • whitelist / blacklist
    Настройка списков разрешённого или запрещённого трафика.

  • user-defined-flow
    Определение пользовательских правил классификации.

  • auto-defend
    Автоматическая защита при обнаружении аномалий.

  • auto-port-defend
    Автоматическая защита по портам.


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

1
2
3
4
!
cpu-defend policy 1
cpu-defend bind-policy 1
!
Создаётся политика с идентификатором 1 и применяется к устройству.


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

SW4(config)#show cpu-defend policy
  Current in use: 1
Policy Name                               :1
  Description                             :
  Related slot                            :1
  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                        :disable
    Blacklist IPV4 ACL Number               :0
    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
  User-defined-flow Configuration
  Car Packet Configuration
 Packet Type       Cir         Cbs         Pps         Prio  Queue Action    Packets/s Bytes/s     Traces/s  Port-defend Deny(CPU)
 total             800         12800       ---         2     0     no deny   0         0           0         --          --
 total             ---         ---         512         2     0     no deny   0         0           0         --          --
 telnet            64          12800       ---         2     6     no deny   0         0           0         --          --
 telnet            ---         ---         512         2     6     no deny   0         0           0         --          --
 tcp               64          12800       ---         2     1     no deny   0         0           0         --          --
 tcp               ---         ---         512         2     1     no deny   0         0           0         --          --
 icmp              64          12800       ---         2     1     no deny   0         0           0         --          --
 icmp              ---         ---         512         2     1     no deny   0         0           0         --          --
 snmp              64          12800       ---         2     2     no deny   0         0           0         --          --
 snmp              ---         ---         512         2     2     no deny   0         0           0         --          --
 fibhit            128         12800       ---         2     0     no deny   0         0           0         --          --
 fibhit            ---         ---         512         2     0     no deny   0         0           0         --          --
 fib6hit           128         12800       ---         2     0     no deny   0         0           0         --          --
 fib6hit           ---         ---         512         2     0     no deny   0         0           0         --          --
 ssh               64          12800       ---         2     6     no deny   0         0           0         --          --
 ssh               ---         ---         512         2     6     no deny   0         0           0         --          --
Команда отображает:

  • активную политику;
  • параметры whitelist/blacklist;
  • настройки ограничения трафика (CAR);
  • статистику обработки пакетов;
  • параметры защиты от атак.

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

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

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

Версия ПО

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


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

Стандарт

  • RFC 6192 — Protecting the Router Control Plane