Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Шаг

Описание

Команда

Ключи

1

Указать local в качестве метода аутентификации.

esr(config)# aaa authentication login { default | <NAME> } <METHOD 1>
[ <METHOD 2> ] [ <METHOD 3> ] [ <METHOD 4> ]

<NAME> – имя списка, задаётся строкой до 31 символа.

Способы аутентификации:

  • local – аутентификация с помощью локальной базы пользователей;
  • tacacs – аутентификация по списку TACACS-серверов;
  • radius – аутентификация по списку RADIUS-серверов;
  • ldap – аутентификация по списку LDAP-серверов.

2

Указать enable в качестве способа аутентификации повышения привилегий пользователей.

esr(config)# aaa authentication enable <NAME><METHOD 1> [ <METHOD 2> ]
[ <METHOD 3> ] [ <METHOD 4> ]

<NAME> – имя списка, задаётся строкой до 31 символа.

Способы аутентификации:

  • local – аутентификация с помощью локальной базы пользователей;
  • tacacs – аутентификация по списку TACACS-серверов;
  • radius – аутентификация по списку RADIUS-серверов;
  • ldap – аутентификация по списку LDAP-серверов.

3

Указать способ перебора методов аутентификации в случае отказа (не обязательно).

esr(config)# aaa authentication mode <MODE>

<MODE> – способы перебора методов:

  • chain – если сервер вернул FAIL, перейти к следующему в цепочке методу аутентификации;
  • break – если сервер вернул FAIL, прекратить попытки аутентификации. Если сервер недоступен, продолжить попытки аутентификации следующими в цепочке методами.

Значение по умолчанию: chain.

4

Указать количество неудачных попыток аутентификации для блокировки логина пользователя и время блокировки (не обязательно).

esr(config)# aaa authentication attempts max-fail <COUNT> <TIME>

<COUNT> – количество неудачных попыток аутентификации, после которых произойдет блокировка пользователя, принимает значения [1..65535];

<TIME> – интервал времени в минутах, на который будет заблокирован пользователь, принимает значения [1..65535].

Значение по умолчанию:
<COUNT> – 5; <TIME> – 300.

5

Включить запрос на смену пароля по умолчанию для пользователя admin (не обязательно).

esr(config)# security passwords default-expired


6

Включить режим запрета на использование ранее установленных паролей локальных пользователей (не обязательно).

esr(config)# security passwords history <COUNT>

<COUNT> – количество паролей, сохраняемых в памяти маршрутизатора. Принимает значение в диапазоне [1..15].

Значение по умолчанию: 0.

7

Установить время действия пароля локального пользователя (не обязательно).

esr(config)# security passwords lifetime <TIME>

<TIME> – интервал времени действия пароля в днях. Принимает значение в диапазоне [1..365].

По умолчанию: время действия пароля локального пользователя не ограничено.

8

Установить ограничение на минимальную длину пароля локального пользователя и ENABLE-пароля (не обязательно).

esr(config)# security passwords min-length <NUM>

<NUM> – минимальное количество символов в пароле. Принимает значение в диапазоне [8..128].

Значение по умолчанию: 0.

9

Установить ограничение на максимальную длину пароля локального пользователя и ENABLE-пароля (не обязательно).

esr(config)# security passwords max-length <NUM>

<NUM> – максимальное количество символов в пароле. Принимает значение в диапазоне [8..128].

Значение по умолчанию: не ограничено.

10

Установить минимальное количество типов символов, которые должны присутствовать в пароле локального пользователя и ENABLE-пароле (не обязательно).

esr(config)# security passwords symbol-types <COUNT>

<COUNT> – минимальное количество типов символов в пароле. Принимает значение в диапазоне [1..4].

Значение по умолчанию: 1.

11

Установить минимальное количество строчных букв в пароле локального пользователя и ENABLE-пароле (не обязательно).

esr(config)# security passwords lower-case <COUNT>

<COUNT> – минимальное количество строчных букв в пароле локального пользователя и ENABLE-пароле. Принимает значение в диапазоне [0..128].

Значение по умолчанию: 0.

12

Установить минимальное количество прописных (заглавных) букв в пароле локального пользователя и ENABLE-пароле (не обязательно).

esr(config)# security passwords upper-case <COUNT>

<COUNT> – минимальное количество прописных (заглавных) букв в пароле. Принимает значение в диапазоне [0..128].

Значение по умолчанию: 0.

13

Установить минимальное количество цифр в пароле локального пользователя и ENABLE-пароле (не обязательно).

esr(config)# security passwords numeric-count <COUNT>

<COUNT> – минимальное количество цифр в пароле. Принимает значение в диапазоне [0..128].

Значение по умолчанию: 0.

14

Установить минимальное количество специальных символов в пароле локального пользователя и ENABLE-пароле (не обязательно).

esr(config)# security passwords special-case <COUNT>

<COUNT> – минимальное количество специальных символов в пароле. Принимает значение в диапазоне [0..128].

Значение по умолчанию: 0.

15

Добавить пользователя в локальную базу и перейти в режим настройки параметров пользователя.

esr(config)# username <NAME>

<NAME> – имя пользователя, задаётся строкой до 31 символа.

16

Установить пароль пользователя.

esr(config-user)# password { <CLEAR-TEXT> | encrypted <HASH_SHA512> }

<CLEAR-TEXT> – пароль, задаётся строкой [8 .. 32] символов, принимает значения [0-9a-fA-F];

<HASH_SHA512> – хеш пароля по алгоритму sha512, задаётся строкой из 110 символов.

17

Установить уровень привилегий пользователя.

esr(config-user)# privilege <PRIV>

<PRIV> – необходимый уровень привилегий. Принимает значение [1..15].

18

Перейти в режим конфигурирования соответствующего терминала.

esr(config)# line console

или

esr(config)# line telnet

или

esr(config)# line ssh


19

Активировать список аутентификации входа пользователей в систему.

esr(config-line-ssh)# login authentication <NAME>

<NAME> – имя списка, задаётся строкой до 31 символа.

20

Активировать список аутентификации повышения привилегий пользователей.

esr(config-line-ssh)# enable authentication <NAME>

<NAME> – имя списка, задаётся строкой до 31 символа.

21

Задать интервал, по истечении которого будет разрываться бездействующая сессия.

esr(config-line-ssh)# exec-timeout <SEC>

<SEC> – период времени в минутах, принимает значения [1..65535].

...

Шаг

Описание

Команда

Ключи

1

Задать глобальное значение кода DSCP для использования в IP-заголовках исходящих пакетов RADIUS-сервера (не обязательно).

esr(config)# radius-server dscp <DSCP>

<DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63].

Значение по умолчанию: 63.

2

Задать глобальное значение количества перезапросов к последнему активному RADIUS-серверу (не обязательно).

esr(config)# radius-server retransmit <COUNT>

<COUNT> – количество перезапросов к RADIUS-серверу, принимает значения [1..10].

Значение по умолчанию: 1.

3

Задать глобальное значение интервала, по истечении которого маршрутизатор считает, что RADIUS-сервер недоступен (не обязательно).

esr(config)# radius-server timeout <SEC>

<SEC> – период времени в секундах, принимает значения [1..30].

Значение по умолчанию: 3 секунды.

4

Добавить RADIUS-сервер в список используемых серверов и перейти в режим его конфигурирования.

esr(config)# radius-server host
{ <IP-ADDR> | <IPV6-ADDR> } [ vrf <VRF> ]
esr(config-radius-server)#

<IP-ADDR> – IP-адрес RADIUS-сервера, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<IPV6-ADDR> – IPv6-адрес RADIUS-сервера, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF]

<VRF> – имя экземпляра VRF, задается строкой до 31 символа.

5

Указать количество неудачных попыток аутентификации для блокировки логина пользователя и времени блокировки (не обязательно).

aaa authentication attempts max-fail <COUNT> <TIME>

<COUNT> – количество неудачных попыток аутентификации, после которых произойдет блокировка пользователя, принимает значения [1..65535];

<TIME> – интервал времени в секундах, на который будет заблокирован пользователь, принимает значения [1..65535].

Значение по умолчанию:

<COUNT> – 5; <TIME> – 300.

6

Задать пароль для аутентификации на удаленном RADIUS-сервере.

esr(config-radius-server)# key ascii-text
{ <TEXT> | encrypted <ENCRYPTED-TEXT> }

<TEXT> – строка [8..16] ASCII-символов;

<ENCRYPTED-TEXT> – зашифрованный пароль, размером [8..16] байт, задаётся строкой [16..32] символов.

7

Задать приоритет использования удаленного RADIUS-сервера (не обязательно).

esr(config-radius-server)# priority <PRIORITY>

<PRIORITY> – приоритет использования удаленного сервера, принимает значения [1..65535].

Чем ниже значение, тем приоритетнее сервер.

Значение по умолчанию: 1.

8

Задать интервал, по истечении которого маршрутизатор считает, что данный RADIUS-сервер недоступен (не обязательно).

esr(config-radius-server)# timeout <SEC>

<SEC> – период времени в секундах, принимает значения [1..30].

Значение по умолчанию: используется значение глобального таймера.

9

Задать IPv4/IPv6-адрес, который будет использоваться в качестве IPIPv4/IPv6-адреса источника в отправляемых RADIUS-пакетах.

esr(config-radius-server)# source-address { <ADDR> | <IPV6-ADDR> }

<ADDR> – IP-адрес источника, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<IPV6-ADDR> – IPv6-адрес источника, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF].

10Задать  интерфейс Задать интерфейс или туннель маршрутизатора, IPv4/IPv6-адрес которого будет использоваться в качестве IPv4/IPv6-адреса источника в отправляемых в отправляемых RADIUS-пакетах.esr(config-radius-server)# source-interface { <IF> | <TUN> }

<IF> – имя интерфейса устройства, задаётся в виде, описанном в разделе Типы и порядок именования интерфейсов маршрутизатора

<TUN> – имя туннеля устройства, задаётся в виде, описанном в разделе Типы и порядок именования туннелей маршрутизатора.

11

Указать radius в качестве метода аутентификации.

esr(config)# aaa authentication login { default | <NAME> } <METHOD 1>
[ <METHOD 2> ] [ <METHOD 3> ] [ <METHOD 4> ]

<NAME> – имя списка, задаётся строкой до 31 символа.

Способы аутентификации:

  • local – аутентификация с помощью локальной базы пользователей;
  • tacacs – аутентификация по списку TACACS-серверов;
  • radius – аутентификация по списку RADIUS-серверов;
  • ldap – аутентификация по списку LDAP-серверов.

12

Указать radius в качестве способа аутентификации повышения привилегий пользователей.

esr(config)# aaa authentication enable <NAME><METHOD 1>
[ <METHOD 2> ] [ <METHOD 3> ] [ <METHOD 4> ]

<NAME> – имя списка строка до 31 символа;

  • default – имя списка по умолчанию.

<METHOD> – способы аутентификации:

  • enable – аутентификация с помощью enable-паролей;
  • tacacs – аутентификация по протоколу TACACS;
  • radius – аутентификация по протоколу RADIUS;
  • ldap – аутентификация по протоколу LDAP.

13

Указать способ перебора методов аутентификации в случае отказа (не обязательно).

esr(config)# aaa authentication mode <MODE>

<MODE> – способы перебора методов:

  • chain – если сервер вернул FAIL, переход к следующему в цепочке методу аутентификации;
  • break – если сервер вернул FAIL, прекратить попытки аутентификации. Если сервер недоступен, продолжить попытки аутентификации следующими в цепочке методами.

Значение по умолчанию: chain.

14

Сконфигурировать radius в списке способов учета сессий пользователей (не обязательно).

esr(config)# aaa accounting login start-stop <METHOD 1>
[ <METHOD 2> ]

<METHOD> – способы учета:

  • tacacs – учет сессий по протоколу TACACS;
  • radius – учет сессий по протоколу RADIUS.

15

Перейти в режим конфигурирования соответствующего терминала.

esr(config)# line <TYPE>

<TYPE> – тип консоли:

  • console – локальная консоль;
  • ssh – защищенная удаленная консоль.

16

Активировать список аутентификации входа пользователей в систему.

esr(config-line-console)# login authentication <NAME>

<NAME> – имя списка, задаётся строкой до 31 символа. Создано на шаге 8.

17

Активировать список аутентификации повышения привилегий пользователей.

esr(config-line-console)# enable authentication <NAME>

<NAME> – имя списка, задаётся строкой до 31 символа. Создано на шаге 9.

...

ШагОписаниеКомандаКлючи
1Задать базовый DN (Distinguished name), который будет использоваться при поиске пользователей.

esr(config)# ldap-server base-dn <NAME>

<NAME> – базовый DN, задается строкой до 255 символов.

2

Задать интервал, по истечении которого устройство считает, что LDAP-сервер недоступен (не обязательно).

esr(config)# ldap-server bind timeout <SEC>

<SEC> – период времени в секундах, принимает значения [1..30].

Значение по умолчанию: 3 секунды.

3

Задать DN (Distinguished name) пользователя с правами администратора, под которым будет происходить авторизация на LDAP-сервере при поиске пользователей.

esr(config)# ldap-server bind authenticate root-dn <NAME>

<NAME> – DN пользователя с правами администратора, задается строкой до 255 символов.

4

Задать пароль пользователя с правами администратора, под которым будет происходить авторизация на LDAP-сервере при поиске пользователей.

esr(config)# ldap-server bind authenticate root-password ascii-text
{ <TEXT> | encrypted <ENCRYPTED-TEXT> }

<TEXT> – строка [8..16] ASCII-символов;

<ENCRYPTED-TEXT> – зашифрованный пароль, размером [8..16] байт, задаётся строкой [16..32] символов.

5

Задать имя класса объектов, среди которых необходимо выполнять поиск пользователей на LDAP-сервере (не обязательно).

esr(config)# ldap-server search filter user-object-class <NAME>

<NAME> – имя класса объектов, задаётся строкой до 127 символов.

Значение по умолчанию: posixAccount.


6

Задать область поиска пользователей в дереве LDAP-сервера (не обязательно).

esr(config)# ldap-server search scope <SCOPE>

<SCOPE> – область поиска пользователей на LDAP-сервере, принимает следующие значения:

  • onelevel – выполнять поиск в объектах на следующем уровне после базового DN в дереве LDAP-сервера;
  • subtree – выполнять поиск во всех объектах поддерева базового DN в дереве LDAP-сервера.

Значение по умолчанию: subtree.

7

Задать интервал, по истечении которого устройство считает, что LDAP-сервер не нашел записей пользователей, подходящих под условие поиска (не обязательно).

esr(config)# ldap-server search timeout <SEC>

<SEC> – период времени в секундах, принимает значения [0..30]

Значение по умолчанию: 0 – устройство ожидает завершения поиска и получения ответа от LDAP-сервера.

8

Задать имя атрибута объекта, со значением которого идет сравнение имени искомого пользователя на LDAP-сервере (не обязательно).

esr(config)# ldap-server naming-attribute <NAME>

<NAME> – имя атрибута объекта, задаётся строкой до 127 символов.

Значение по умолчанию: uid.

9

Задать имя атрибута объекта, значение которого будет определять начальные привилегии пользователя на устройстве (не обязательно).

esr(config)# ldap-server privilege-level-attribute <NAME>

<NAME> – имя атрибута объекта, задаётся строкой до 127 символов.

Значение по умолчанию: priv-lvl.

10

Задать глобальное значение кода DSCP для использования в IP-заголовках исходящих пакетов LDAP-сервера (не обязательно).

esr(config)# ldap-server dscp <DSCP>

<DSCP> – значение кода DSCP, принимает значения в диапазоне [0..63].

Значение по умолчанию: 63.

11

Добавить LDAP-сервер в список используемых серверов и перейти в режим его конфигурирования.

esr(config)# ldap -server host { <IP-ADDR> | <IPV6-ADDR> }
[ vrf <VRF> ]

esr(config-ldap-server)#

<IP-ADDR> – IP-адрес LDAP-сервера, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]

<IPV6-ADDR> – IPv6-адрес LDAP-сервера, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF]

<VRF> – имя экземпляра VRF, задается строкой до 31 символа.

12

Указать количество неудачных попыток аутентификации для блокировки логина пользователя и время блокировки (не обязательно).

aaa authentication attempts max-fail <COUNT> <TIME>

<COUNT> – количество неудачных попыток аутентификации, после которых произойдет блокировка пользователя, принимает значения [1..65535];

<TIME> – интервал времени в минутах, на который будет заблокирован пользователь, принимает значения [1..65535].

Значение по умолчанию:

<COUNT> – 5; <TIME> – 300.

13

Задать номер порта для обмена данными c удаленным LDAP-сервером (не обязательно).

esr(config-ldap-server)# port <PORT>

<PORT> – номер TCP-порта для обмена данными c удаленным сервером, принимает значения [1..65535].

Значение по умолчанию: 389 для LDAP-сервера.

14

Задать приоритет использования удаленного LDAP-сервера (не обязательно).

esr(config-ldap-server)# priority <PRIORITY>

<PRIORITY> – приоритет использования удаленного сервера, принимает значения [1..65535].

Чем ниже значение, тем приоритетнее сервер.

Значение по умолчанию: 1.

15

Задать IPv4/IPv6-адрес, который будет использоваться в качестве IP/IPv6-адреса источника в отправляемых LDAP-пакетах.

esr(config-ldap-server)# source-address { <ADDR> | <IPV6-ADDR> }

<ADDR> – IP-адрес источника, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<IPV6-ADDR> – IPv6-адрес источника, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF].

16Задать интерфейс или туннель маршрутизатора, IPv4/IPv6-адрес которого будет использоваться в качестве IPv4/IPv6-адреса источника в отправляемых LDAP-пакетах.esr(config-ldap-server)# source-interface { <IF> | <TUN> }

<IF> – имя интерфейса устройства, задаётся в виде, описанном в разделе Типы и порядок именования интерфейсов маршрутизатора

<TUN> – имя туннеля устройства, задаётся в виде, описанном в разделе Типы и порядок именования туннелей маршрутизатора.

17

Указать LDAP в качестве метода аутентификации.

esr(config)# aaa authentication login { default | <NAME> }
<METHOD 1> [ <METHOD 2> ] [ <METHOD 3> ] [ <METHOD 4> ]

<NAME> – имя списка, задаётся строкой до 31 символа.

Способы аутентификации:

  • local – аутентификация с помощью локальной базы пользователей;
  • tacacs – аутентификация по списку TACACS-серверов;
  • radius – аутентификация по списку RADIUS-серверов;
  • ldap – аутентификация по списку LDAP-серверов.

18

Указать LDAP в качестве способа аутентификации повышения привилегий пользователей.

esr(config)# aaa authentication enable <NAME>
<METHOD 1> [ <METHOD 2> ] [ <METHOD 3> ] [ <METHOD 4> ]

<NAME> – имя списка строка до 31 символа;

  • default – имя списка по умолчанию.

<METHOD> – способы аутентификации:

  • enable – аутентификация с помощью enable-паролей;
  • tacacs – аутентификация по протоколу TACACS;
  • radius – аутентификация по протоколу RADIUS;
  • ldap – аутентификация по протоколу LDAP.

19

Указать способ перебора методов аутентификации в случае отказа.

esr(config)# aaa authentication mode <MODE>

<MODE> – способы перебора методов:

  • chain – если сервер вернул FAIL, переход к следующему в цепочке методу аутентификации;
  • break – если сервер вернул FAIL, прекратить попытки аутентификации. Если сервер недоступен, продолжить попытки аутентификации следующими в цепочке методами.

Значение по умолчанию: chain.

20

Перейти в режим конфигурирования соответствующего терминала.

esr(config)# line <TYPE>

<TYPE> – тип консоли:

  • console – локальная консоль;
  • ssh – защищенная удаленная консоль.

21

Активировать список аутентификации входа пользователей в систему.

esr(config-line-console)# login authentication <NAME>

<NAME> – имя списка, задаётся строкой до 31 символа. Создано на шаге 14.

22

Активировать список аутентификации повышения привилегий пользователей.

esr(config-line-console)# enable authentication <NAME>

<NAME> – имя списка, задаётся строкой до 31 символа. Создано на шаге 15.

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

...

Telnet через RADIUS-сервер

Задача:

Настроить аутентификацию пользователей, подключающихся по Telnet, через RADIUS (192.168.16.1/24).

...

Шаг

Описание

Команда

Ключи

1

Включить защиту от ICMP flood-атак.

esr(config)# ip firewall screen dos-defense
icmp-threshold { <NUM> }

<NUM> – количество ICMP-пакетов в секунду, задается в диапазоне [1..10000].

2

Включить защиту от land-атак.

esr(config)# firewall screen dos-defense land


3

Включить ограничение числа пакетов, отправляемых за одну секунду на один адрес назначения

esr(config)# ip firewall screen dos-defense
limit-session-destination { <NUM> }

<NUM> – ограничение числа IP-пакетов в секунду, задается в диапазоне [1..10000].

4

Включить ограничение числа пакетов, отправляемых за одну секунду с единого адреса источника

esr(config)# ip firewall screen dos-defense
limit-session-source { <NUM> }

<NUM> – ограничение числа IP-пакетов в секунду, задается в диапазоне [1..10000].

5

Включить защиту от SYN flood-атак.

esr(config)# ip firewall screen dos-defense
syn-flood { <NUM> } [src-dsr]

<NUM> – максимальное количество TCP-пакетов с установленным флагом SYN в секунду, задается в диапазоне [1..10000].

src-dst – ограничение количества TCP-пакетов с установленным флагом SYN на основании адреса источника и адреса назначения.

6

Включить защиту от UDP flood-атак.

esr(config)# ip firewall screen dos-defense
udp-threshold { <NUM> }

<NUM> – максимальное количество UDP-пакетов в секунду, задается в диапазоне [1..10000].

7

Включить защиту от winnuke-атак.

esr(config)# ip firewall screen dos-defense winnuke


8

Включить блокировку TCP-пакетов с установленным флагом FIN и не установленным флагом ACK.

esr(config)# ip firewall screen spy-blocking fin-no-ack


9

Включить блокировку ICMP-пакетов различных типов.

esr(config)# ip firewall screen spy-blocking icmp-type

<TYPE> – тип ICMP, может принимать значения:

  • destination-unreachable
  • echo-request
  • reserved
  • source-quench
  • time-exceeded

10

Включить защиту от IP sweep-атак.

esr(config)# ip firewall screen spy-blocking ip-sweep { <NUM> }

<NUM> – интервал выявления ip sweep атаки, задается в миллисекундах [1..1000000].

11

Включить защиту от port scan-атак.

esr(config)# ip firewall screen spy-blocking port-scan
{ <threshold> } [ <TIME> ]

<threshold> – интервал в секундах, в течение которого будет фиксироваться port scan-атака [1..10000].

<TIME> – время блокировки в миллисекундах [1..1000000].

12

Включить защиту от IP spoofing-атак.

esr(config)# ip firewall screen spy-blocking spoofing


13

Включить блокировку TCP-пакетов, с установленными флагами SYN и FIN.

esr(config)# ip firewall screen spy-blocking syn-fin


14

Включить блокировку TCP-пакетов, со всеми флагами или с набором флагов: FIN, PSH, URG. Данной командой обеспечивается защита от атаки XMAS.

esr(config)# ip firewall screen spy-blocking tcp-all-flag


15

Включить блокировку TCP-пакетов, с нулевым полем flags.

esr(config)# ip firewall screen spy-blocking tcp-no-flag


16

Включить блокировку фрагментированных
ICMP-пакетов.

esr(config)# ip firewall screen suspicious-packets icmp-fragment


17

Включить блокировку фрагментированных IP-пакетов.

esr(config)# ip firewall screen suspicious-packets ip-fragment


18

Включить блокировку ICMP-пакетов длиной более 1024 байт.

esr(config)# ip firewall screen suspicious-packets icmp-fragment


19

Включить блокировку фрагментированных TCP-пакетов, с флагом SYN.

esr(config)# ip firewall screen suspicious-packets syn-fragment


20

Включить блокировку фрагментированных UDP-пакетов.

esr(config)# ip firewall screen suspicious-packets udp-fragment


21

Включить блокировку пакетов, с ID протокола в заголовке IP равном 137 и более.

esr(config)# ip firewall screen suspicious-packets unknown-protocols


22

Установить частоту оповещения (по SNMP, syslog и в CLI) об обнаруженных и отраженных сетевых атаках.

esr(config)# ip firewall logging interval <NUM>


<NUM> – интервал времени в секундах [30 .. 2147483647].

23

Включить более детальный вывод сообщений по обнаруженным и отраженным сетевым атакам в CLI.

esr(config)# logging firewall screen detailed


24

Включить механизм обнаружения и логирования DoS-атак через CLI, syslog и по SNMP.

esr(config)# logging firewall screen dos-defense <ATACK_TYPE>

<ATACK_TYPE> – тип DoS-атаки, принимает значения: icmp-threshold, land, limit-session-destination, limit-session-source, syn-flood, udp-threshold, winnuke.

25

Включить механизм обнаружения и логирования шпионской активности через CLI, syslog и по SNMP.

esr(config)# logging firewall screen spy-blocking
{ <ATACK_TYPE> | icmp-type <ICMP_TYPE> }

<ATACK_TYPE> – тип шпионской активности, принимает значения: fin-no-ack, ip-sweep, port-scan, spoofing, syn-fin, tcp-all-flag, tcp-no-flag.

<ICMP_TYPE> – тип ICMP, принимает значения: destination-unreachable, echo-request, reserved, source-quench, time-exceeded.

26

Включить механизм обнаружения нестандартных пакетов и логирования через CLI, syslog и по SNMP.

esr(config)# logging firewall screen suspicious-packets <PACKET_TYPE>

<PACKET_TYPE> – тип нестандартных пакетов, принимает значения: icmp-fragment, ip-fragment, large-icmp, syn-fragment, udp-fragment, unknown-protocols.

...

КомандаОписание
ip firewall screen dos-defense icmp-thresholdДанная команда включает защиту от ICMP flood-атак. При включенной защите ограничивается количество ICMP-пакетов всех типов в секунду для одного адреса назначения. Атака приводит к перегрузке хоста и выводу его из строя из-за необходимости обрабатывать каждый запрос и отвечать на него.
firewall screen dos-defense landДанная команда включает защиту от land-атак. При включенной защите блокируются пакеты с одинаковыми source и destination IP-адресами , и флагом SYN в заголовке TCP. Атака приводит к перегрузке хоста и выводу его из строя из-за необходимости обрабатывать каждый TCP SYN пакет и попыток хоста установить TCP-сессию с самим собой.
ip firewall screen dos-defense limit-session-destinationКогда таблица IP-сессий хоста переполняется, он больше не в состоянии организовывать новые сессии и отбрасывает запросы (такое может происходить при различных DoS-атаках: SYN flood, UDP flood, ICMP flood, и т.д.). Команда включает ограничение числа пакетов, передаваемых за секунду на один адреса назначения, которое смягчает DoS-атаки.
ip firewall screen dos-defense limit-session-sourceКогда таблица IP-сессий хоста переполняется, он больше не в состоянии организовывать новые сессии и отбрасывает запросы (такое может происходить при различных DoS-атаках: SYN flood, UDP flood, ICMP flood, и т.д.). Команда включает ограничение числа пакетов, передаваемых за секунду с одного адреса источника, которое смягчает DoS-атаки.
ip firewall screen dos-defense syn-floodДанная команда включает защиту от SYN flood-атак. При включенной защите ограничивается количество TCP-пакетов с установленным флагом SYN в секунду для одного адреса назначения. Атака приводит к перегрузке хоста и выводу его из строя из-за необходимости обрабатывать каждый TCP SYN пакет и попыток установить TCP-сессии.
ip firewall screen dos-defense udp-thresholdДанная команда включает защиту от UDP flood-атак. При включенной защите ограничивается количество UDP-пакетов в секунду для одного адреса назначения. Атака приводит к перегрузке хоста и выводу его из строя из-за массивного UDP-трафика.
ip firewall screen dos-defense winnukeДанная команда включает защиту от winnuke-атак. При включенной защите блокируются
TCP-пакеты с установленным флагом URG и 139 портом назначения. Атака приводит к выходу из строя старых версий Windows (до 95 версии).
ip firewall screen spy-blocking fin-no-ackДанная команда включает блокировку TCP-пакетов с установленным флагом FIN и не установленным флагом ACK. Такие пакеты являются нестандартными, и по ответу можно определить операционную систему жертвы.
ip firewall screen spy-blocking icmp-type destination-unreachableДанная команда включает блокировку всех ICMP-пакетов 3 типа (destination-unreachable), включая пакеты, сгенерированные самим маршрутизатором. Защита не дает злоумышленнику узнать о топологии сети и доступности хостов.
ip firewall screen spy-blocking icmp-type echo-requestДанная команда включает блокировку всех ICMP-пакетов 8 типа (echo-request), включая пакеты, сгенерированные самим маршрутизатором. Защита не дает злоумышленнику узнать о топологии сети и доступности хостов.
ip firewall screen spy-blocking icmp-type reservedДанная команда включает блокировку всех ICMP-пакетов 2 и 7 типов (reserved), включая пакеты, сгенерированные самим маршрутизатором. Защита не дает злоумышленнику узнать о топологии сети и доступности хостов.
ip firewall screen spy-blocking icmp-type source-quenchДанная команда включает блокировку всех ICMP-пакетов 4 типа (source quench), включая пакеты, сгенерированные самим маршрутизатором. Защита не дает злоумышленнику узнать о топологии сети и доступности хостов.
ip firewall screen spy-blocking icmp-type time-exceededДанная команда включает блокировку всех ICMP-пакетов 11 типа (time exceeded), включая пакеты, сгенерированные самим маршрутизатором. Защита не дает злоумышленнику узнать о топологии сети и доступности хостов.
ip firewall screen spy-blocking ip-sweep

Данная команда включает защиту от IP sweep-атак. При включенной защите, если в течение заданного в параметрах интервала приходит более 10 ICMP-запросов от одного источника, первые 10 запросов пропускаются маршрутизатором, а 11 и последующие отбрасываются на оставшееся время интервала. Защита не дает злоумышленнику узнать о топологии сети и доступности хостов.

ip firewall screen spy-blocking port-scan

Данная команда включает защиту от port scan-атак. Если в течение первого заданного интервала времени (<threshold>) на один источник приходит более 10 TCP-пакетов с флагом SYN на разные TCP-порты , или более 10 UDP-пакетов , на разные UDP-порты, то такое поведение фиксируется как port scan-атака, и все последующие пакеты такого рода от источника блокируются на второй заданный интервал времени (<TIME>). Злоумышленник не сможет быстро просканировать открытые порты на устройстве.

ip firewall screen spy-blocking spoofing

Данная команда включает защиту от ip spoofing-атак. При включенной защите маршрутизатор проверяет пакеты на соответствие адреса источника и записей в таблице маршрутизации, и в случае несоответствия пакет отбрасывается. Например, если пакет с адресом источника 10.0.0.1/24 приходит на интерфейс Gi1/0/1, а в таблице маршрутизации данная подсеть располагается за интерфейсом Gi1/0/2, то считается, что адрес источника был подменен. Защищает от вторжений в сеть с подмененными source IP-адресами.

ip firewall screen spy-blocking syn-fin

Данная команда включает блокировку TCP-пакетов с установленными флагами SYN и FIN. Такие пакеты являются нестандартными, и по ответу можно определить операционную систему жертвы.

ip firewall screen spy-blocking tcp-all-flag

Данная команда включает блокировку TCP-пакетов со всеми флагами или с набором флагов: FIN, PSH, URG. Обеспечивается защита от атаки XMAS.

ip firewall screen spy-blocking tcp-no-flag

Данная команда включает блокировку TCP-пакетов с нулевым полем flags. Такие пакеты являются нестандартными, и по ответу можно определить операционную систему жертвы.

ip firewall screen suspicious-packets icmp-fragment

Данная команда включает блокировку фрагментированных ICMP-пакетов. ICMP-пакеты обычно небольшого размера и необходимости в их фрагментировании нет.

ip firewall screen suspicious-packets ip-fragment

Данная команда включает блокировку фрагментированных пакетов.

ip firewall screen suspicious-packets large-icmp

Данная команда включает блокировку ICMP-пакетов длиной более 1024 байт.

ip firewall screen suspicious-packets syn-fragment

Данная команда включает блокировку фрагментированных TCP-пакетов с флагом SYN. TCP-пакеты с SYN-флагом обычно небольшого размера и необходимости в их фрагментировании нет. Защита предотвращает накопление фрагментированных пакетов в буфере.

ip firewall screen suspicious-packets udp-fragment

Данная команда включает блокировку фрагментированных UDP-пакетов.

ip firewall screen suspicious-packets unknown-protocols

Данная команда включает блокировку пакетов, с ID протокола в заголовке IP равном 137 и более.

...

Задача:

Необходимо защитить LAN-сеть и маршрутизатор ESR от сетевых атак land, syn-flood, ICMP flood и настроить оповещение об атаках по SNMP на SNMP-сервер 192.168.0.10.

...

ШагОписаниеКомандаКлючи
1Создать зоны безопасности.

esr(config)# security zone <zone-name1>

esr(config)# security zone <zone-name2>

<zone-name> – до 12 символов.

Имена all, any и self зарезервированы.

2Задать описание зоны безопасности.

esr(config-zone)# description <description>

<description> – до 255 символов.
3Указать экземпляр VRF, в котором будет работать данная зона безопасности (не обязательно).

esr(config- zone)# ip vrf forwarding <VRF>

<VRF> – имя VRF, задается строкой до 31 символа.
4Включить счетчики сессий для NAT и Firewall (не обязательно, снижает производительность).

esr(config)# ip firewall sessions counters


5Отключить фильтрацию пакетов, для которых не удалось определить принадлежность к какому-либо известному соединению и которые не являются началом нового соединения (не обязательно, снижает производительность).

esr(config)# ip firewall sessions allow-unknown


6

Выбрать режим работы межсетевого экрана (не обязательно)

В режиме stateful проверяется только первый пакет сессии, и если "прямой" «прямой» трафик разрешён, "ответный" «ответный» трафик разрешается автоматически.

В режиме stateless происходит проверка каждого пакета. "Прямой" и "ответный" «Прямой» и «ответный» трафик требуется разрешать в соответствующих zone-pair (см. шаг 29).

Работа межсетевого экрана по списку приложений возможна только в режиме stateless.

esr(config)# ip firewall mode <MODE>

<MODE> – режим работы межсетевого экрана, может принимать значения: stateful, stateless.

Значение по умолчанию: stateful

7

Определить время жизни сессии для неподдерживаемых протоколов (не обязательно).

esr(config)# ip firewall sessions generic-timeout <TIME>

<TIME> – время жизни сессии для неподдерживаемых протоколов, принимает значения в секундах [1..8553600].

По умолчанию: 60 секунд.

8

Определить время жизни ICMP-сессии, по истечении которого она считается устаревшей (не обязательно).

esr(config)# ip firewall sessions icmp-timeout <TIME>

<TIME> – время жизни ICMP-сессии, принимает значения в секундах [1..8553600].

По умолчанию: 30 секунд.

9

Определить время жизни ICMPv6-сессии, по истечении которого она считается устаревшей (не обязательно).

esr(config)# ip firewall sessions icmpv6-timeout <TIME>

<TIME> – время жизни ICMP-сессии, принимает значения в секундах [1..8553600].

По умолчанию: 30 секунд.

10

Определить размер таблицы сессий, ожидающих обработки (не обязательно).

esr(config)# ip firewall sessions max-expect <COUNT>

<COUNT> – размер таблицы, принимает значения [1..8553600].

По умолчанию: 256.

11

Определить размер таблицы отслеживаемых сессий (не обязательно).

esr(config)# ip firewall sessions max-tracking <COUNT>

<COUNT> – размер таблицы, принимает значения [1..8553600].
По умолчанию: 512000.

12

Определить время жизни TCP-сессии в состоянии «соединение устанавливается», по истечении которого она считается устаревшей (не обязательно).

esr(config)# ip firewall sessions tcp-connect-timeout <TIME>

<TIME> – время жизни TCP-сессии в состоянии "соединение устанавливается", принимает значения в секундах [1..8553600].

По умолчанию: 60 секунд.

13

Определить время жизни TCP-сессии в состоянии "соединение закрывается"«соединение закрывается», по истечении которого она считается устаревшей (не обязательно).

esr(config)# ip firewall sessions tcp-disconnect-timeout <TIME>

<TIME> – время жизни TCP-сессии в состоянии "соединение закрывается", принимает значения в секундах [1..8553600].
По умолчанию: 30 секунд.

14

Определить время жизни TCP-сессии в состоянии "соединение установлено"«соединение установлено», по истечении которого она считается устаревшей (не обязательно).

esr(config)# ip firewall sessions tcp-established-timeout <TIME>

<TIME> – время жизни TCP-сессии в состоянии "соединение установлено", принимает значения в секундах [1..8553600].

По умолчанию: 120 секунд.

15

Определить время ожидания, по истечении которого происходит фактическое удаление закрытой TCP-сессии из таблицы отслеживаемых сессий (не обязательно).

esr(config)# ip firewall sessions tcp-latecome-timeout <TIME>

<TIME> – время ожидания, принимает значения в секундах [1..8553600].

По умолчанию: 120 секунд.

16

Включить функцию отслеживания сессий уровня приложений для отдельных протоколов (не обязательно).

esr(config)# ip firewall sessions tracking

<PROTOCOL> – протокол уровня приложений [ftp, h323, pptp, netbios-ns, tftp], сессии которого должны отслеживаться.

<OBJECT-GROUP-SERVICE> – имя профиля TCP/UDP-портов sip-сессии, задаётся строкой до 31 символа. Если группа не указана, то отслеживание сессий sip будет осуществляться для порта 5060.

Вместо имени отдельного протокола можно использовать ключ "all", который включает функцию отслеживания сессий уровня приложений для всех доступных протоколов.

По умолчанию – отключено для всех протоколов.

17

Определить время жизни UDP-сессии в состоянии "соединение подтверждено"«соединение подтверждено», по истечении которого она считается устаревшей (не обязательно).

esr(config)# ip firewall sessions udp-assured-timeout <TIME>

<TIME> – время жизни UDP-сессии в состоянии "соединение подтверждено"«соединение подтверждено», принимает значения в секундах [1..8553600].

По умолчанию: 180 секунд.

18

Определить время жизни UDP-сессии в состоянии «соединение не подтверждено», по истечении которого она считается устаревшей.

esr(config)# ip firewall sessions udp-wait-timeout <TIME>

<TIME> – время жизни UDP-сессии в состоянии «соединение не подтверждено», принимает значения в секундах [1..8553600].

По умолчанию: 30 секунд.

19

Создать списки IP-адресов, которые будут использоваться при фильтрации.

esr(config)# object-group network <obj-group-name>

<obj-group-name> – до 31 символа.

20

Задать описание списка IP-адресов (не обязательно).

esr(config-object-group-network)# description <description>

<description> – описание профиля, задается строкой до 255 символов.

21

Внести необходимые IPv4/IPv6-адреса в список.

esr(config-object-group-network)# ip prefix <ADDR/LEN>

<ADDR/LEN> – подсеть, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32].

esr(config-object-group-network)# ip address-range
<FROM-ADDR>-<TO-ADDR>

<FROM-ADDR> – начальный IP-адрес диапазона адресов;

<TO-ADDR> – конечный IP-адрес диапазона адресов, опциональный параметр. Если параметр не указан, то командой задаётся одиночный IP-адрес.

Адреса задаются в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].

esr(config-object-group-network)# ipv6 prefix <IPV6-ADDR/LEN>

<IPV6-ADDR/LEN> – IP-адрес и маска подсети, задаётся в виде X:X:X:X::X/EE, где каждая часть X принимает значения в шестнадцатеричном формате [0..FFFF] и EE принимает значения [1..128].

esr(config-object-group-network)# ipv6 address-range
<FROM-ADDR>-<TO-ADDR>

<FROM-ADDR> – начальный IPv6-адрес диапазона адресов;

<TO-ADDR> – конечный IPv6-адрес диапазона адресов, опциональный параметр. Если параметр не указан, то командой задаётся одиночный IPv6-адрес.

Адреса задаются в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF].

22

Создать списки сервисов, которые будут использоваться при фильтрации.

esr(config)# object-group service <obj-group-name>

<obj-group-name> – имя профиля сервисов, задается строкой до 31 символа.

23

Задать описание списка сервисов (не обязательно).

esr(config-object-group-service)# description <description>

<description> – описание профиля, задается строкой до 255 символов.

24

Внести необходимые сервисы (tcp/udp-порты) в список.

esr(config-object-group-service)# port-range <port>

<port> – принимает значение [1..65535].

Можно указать несколько портов перечислением через запятую «,» либо указать диапазон портов через «-».

25

Создать списки приложений, которые будут использоваться в механизме DPI.

esr(config)# object-group application <NAME>

<NAME> – имя профиля приложений, задается строкой до 31 символа.

26

Задать описание списка приложений (не обязательно).

esr(config-object-group-application)# description <description>

<description> – описание профиля, задается строкой до 255 символов.

27

Внести необходимые приложения в списки.

esr(config-object-group-application)# application < APPLICATION >

<APPLICATION> – указывает приложение подпадающее , попадающее под действие данного профиля.

28

Включить интерфейсы (физические, логические, E1/Multilink и подключаемые), сервер удаленного доступа (l2tp, openvpn, pptp) или туннели (gre, ip4ip4, l2tp, lt, pppoe, pptp) в зоны безопасности (если необходимо).

esr(config-if-gi)# security-zone <zone-name>

<zone-name> – до 12 символов.

Отключить функции Firewall на сетевом интерфейсе (физические, логические, E1/Multilink и подключаемые), сервере удаленного доступа (l2tp, openvpn, pptp) или туннели (gre, ip4ip4, l2tp, lt, pppoe, pptp) (если необходимо)

esr(config-if-gi)# ip firewall disable


29

Создать набор правил межзонового взаимодействия.

На маршрутизаторе всегда существует зона безопасности с именем «self». Если в качестве получателя трафика выступает сам маршрутизатор, то есть трафик не является транзитным, то в качестве параметра указывается зона «self».

Очерёдность обработки трафика для разных zone-pair описана в примечании.

esr(config)# security zone-pair <src-zone-name1> <dst-zone-name2>

<src-zone-name> – до 12 символов.

<dst-zone-name> – до 12 символов.

30

Создать правило межзонового взаимодействия.

esr(config-zone-pair)# rule <rule-number>

<rule-number> – 1..10000.

31

Задать описание правила (не обязательно).

esr(config-zone-rule)# description <description>

<description> – до 255 символов.

32

Указать действие данного правила.

esr(config-zone-rule)# action <action> [ log ]

<action> – permit/deny/reject/netflow-sample/sflow-sample/rate-limit/session-limit

log – ключ для активации логирования сессий, устанавливающимися согласно данному правилу.

33

Установить имя или номер IP-протокола, для которого должно срабатывать правило (не обязательно).

esr(config-zone-rule)# match [not] protocol <protocol-type>

<protocol-type> – тип протокола, принимает значения: esp, icmp, ah, eigrp, ospf, igmp, ipip, tcp, pim, udp, vrrp, rdp, l2tp, gre.

При указании значения «any» правило будет срабатывать для любых протоколов.

esr(config-zone-rule)# match [not] protocol-id <protocol-id>

<protocol-id> – идентификационный номер IP-протокола, принимает значения [0x00-0xFF].

34

Установить профиль IP-адресов отправителя, для которых должно срабатывать правило (не обязательно).

esr(config-zone-rule)# match [not] source-address <OBJ-GROUP-NETWORK-NAME>

<OBJ-GROUP-NETWORK-NAME> – имя профиля IP-адресов, задаётся строкой до 31 символа. При указании значения «any» правило будет срабатывать для любого IP-адреса отправителя/получателя.


35

Установить профиль IP-адресов получателя, для которых должно срабатывать правило (не обязательно).

esr(config-zone-rule)# match [not] destination-address <OBJ-GROUP-NETWORK-NAME>

36

Установить MAC-адрес отправителя, для которого должно срабатывать правило (не обязательно).

esr(config-zone-rule)# match [not] source-mac <mac-addr>

<mac-addr> – задаётся в виде XX:XX:XX:XX:XX:XX, где каждая часть принимает значения [00..FF].


37

Установить MAC-адрес получателя, для которого должно срабатывать правило (не обязательно).

esr(config-zone-rule)# match [not] destination-mac <mac-addr>

38

Установить профиль TCP/UDP-портов отправителя, для которых должно срабатывать правило (если указан протокол).

esr(config-zone-rule)# match [not] source-port <PORT-SET-NAME>

<PORT-SET-NAME> – задаётся строкой до 31 символа. При указании значения «any» правило будет срабатывать для любого TCP/UDP-порта отправителя/получателя.

39

Установить профиль TCP/UDP-портов получателя, для которых должно срабатывать правило (если указан протокол).

esr(config-zone-rule)# match [not] destination-port <PORT-SET-NAME>

40

Установить тип и код сообщений протокола ICMP, для которых должно срабатывать правило (если в качестве протокола выбран ICMP) (не обязательно).

esr(config-zone-rule)# match [not] icmp <ICMP_TYPE> <ICMP_CODE>

<ICMP_TYPE> – тип сообщения протокола ICMP, принимает значения [0..255];

<ICMP_CODE> – код сообщения протокола ICMP, принимает значения [0..255]. При указании значения «any» правило будет срабатывать для любого кода сообщения протокола ICMP.

41

Установить ограничение, при котором правило будет срабатывать только для трафика, измененного сервисом трансляции IP-адресов и портов получателя.

esr(config-zone-rule)# match [not] destination-nat


42

Установить фильтрацию только для фрагментированных IP-пакетов (не обязательно, доступно только для zone-pair any self и zone-pair <zone-name> any).

esr(config-zone-pair-rule)# match [not] fragment


43

Установить фильтрацию для IP-пакетов, содержащих ip-option (не обязательно, доступно только для zone-pair any self и zone-pair <zone-name> any).

esr(config-zone-pair-rule)# match [not] ip-option


44

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

esr(config-zone-rule)# enable


45

Активировать фильтрацию и режим отслеживания сессий при прохождении пакетов между участниками одной Bridge-группы (не обязательно, доступно только на ESR-1000/1200/1500/1511/1700
/3100).

esr(config-bridge)# ports firewall enable


Якорь
Якорь
Firewall_descFirewall_desc
1 При использовании ключа not правило будет срабатывать для значений, которые не входят в указанный профиль.
Firewall_zonepair
Firewall_zonepair

Очерёдность обработки трафика правилами firewall
Порядок обработки транзитного трафика правилами firewall

  1. Если трафик передаётся с одного интерфейса на другой в пределах одной зоны (src-zone-name), то он проверяется правилами zone-pair src-zone-name src-zone-name.
    Если трафик не попал ни под одно из правил текущей zone-pair, переходим к следующему шагу.
  2. Если трафик передаётся с одного интерфейса на другой в разных зонах, то он проверяется правилами zone-pair src-zone-name dst-zone-name.
    Если трафик не попал ни под одно из правил текущей zone-pair, переходим к следующему шагу.
  3. Трафик проверяется правилами zone-pair src-zone-name any.
    Если трафик не попал ни под одно из правил текущей zone-pair, переходим к следующему шагу.
  4. Трафик проверяется правилами zone-pair any any.
    Если трафик не попал ни под одно из правил текущей zone-pair, он отбрасывается.

Scroll Pagebreak
Порядок обработки трафика, терминируемого на маршрутизаторе

...

Более подробная информация о командах для настройки межсетевого экрана содержится в «Справочнике справочнике команд CLI»CLI.

Пример настройки Firewall

...

Блок кода
esr(config)# object-group network WAN
esr(config-object-group-network)# ip address-range 192.168.23.2
esr(config-object-group-network)# exit
esr(config)# object-group network LAN
esr(config-object-group-network)# ip address-range 192.168.12.2
esr(config-object-group-network)# exit
esr(config)# object-group network LAN_GATEWAY
esr(config-object-group-network)# ip address-range 192.168.12.1
esr(config-object-group-network)# exit
esr(config)# object-group network WAN_GATEWAY
esr(config-object-group-network)# ip address-range 192.168.23.3
esr(config-object-group-network)# exit

Scroll Pagebreak

Для пропуска трафика из зоны «LAN» в зону «WAN» создадим пару зон и добавим правило, разрешающее проходить ICMP-трафику от R1 к R2. Действие правил разрешается командой enable:

...

Блок кода
esr(config)# security zone-pair WAN self
esr(config-zone-pair)# rule 1
esr(config-zone-pair-rule)# action permit
esr(config-zone-pair-rule)# match protocol icmp
esr(config-zone-pair-rule)# match destination-address WAN
esr(config-zone-pair-rule)# match source-address WAN_GATEWAY
esr(config-zone-pair-rule)# enable
esr(config-zone-pair-rule)# exit
esr(config-zone-pair)# exit

Scroll Pagebreak

Создадим пару зон для трафика, идущего из зоны «LAN» в зону «self». Добавим правило, разрешающее проходить ICMP-трафику между R1 и ESR, для того чтобы маршрутизатор начал отвечать на ICMP-запросы из зоны «LAN»:

...

Блок кода
esr# show ip firewall sessions

Scroll Pagebreak

Настройка списков доступа (ACL)

...

ШагОписаниеКомандаКлючи
1Создать список контроля доступа и перейти в режим его конфигурирования.

esr(config)# ip access-list extended <NAME>

<NAME> – имя создаваемого списка контроля доступа, задаётся строкой до 31 символа.
2Указать описание конфигурируемого списка контроля доступа (не обязательно).

esr(config-acl)# description <DESCRIPTION>

<DESCRIPTION> – описание списка контроля доступа, задаётся строкой до 255 символов.
3

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

Правила обрабатываются маршрутизатором в порядке возрастания их номеров.

esr(config-acl)# rule <ORDER>

<ORDER> – номер правила, принимает значения [1..4094].
4Указать действие, которое должно быть применено для трафика, удовлетворяющего заданным критериям.

esr(config-acl-rule)# action <ACT>

<ACT> – назначаемое действие:

  • permit – прохождение трафика разрешается;
  • deny – прохождение трафика запрещается.
5Установить имя/номер протокола, для которого должно срабатывать правило (не обязательно).

esr(config-acl-rule)# match protocol <TYPE>

<TYPE> – тип протокола, принимает значения: esp, icmp, ah, eigrp, ospf, igmp, ipip, tcp, pim, udp, vrrp, rdp, l2tp, gre. При указании значения «any» правило будет срабатывать для любых протоколов;.

esr(config-acl-rule)# match protocol-id <ID>

<ID> – идентификационный номер IP-протокола, принимает значения [0x00-0xFF].

6

Установить IP-адреса отправителя, для которых должно срабатывать правило (не обязательно).

esr(config-acl-rule)# match source-address { <ADDR> <MASK> | any }

<ADDR> – IP-адрес отправителя, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<MASK> – маска IP-адреса, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255]. Биты маски, установленные в 0, задают биты IP-адреса, исключаемые из сравнения при поиске.

При указании значения «any» правило будет срабатывать для любого IP-адреса отправителя/получателя.

7

Установить IP-адреса получателя, для которых должно срабатывать правило (не обязательно).

esr(config-acl-rule)# match destination-address { <ADDR> <MASK> | any }

8

Установить MAC-адреса отправителя, для которых должно срабатывать правило (не обязательно).

esr(config-acl-rule)# match source-mac <ADDR><WILDCARD>

<ADDR> – МАС-адрес отправителя, задаётся в виде XX:XX:XX:XX:XX:XX, где каждая часть принимает значения [00..FF];

<WILDCARD> – маска МАС-адреса, задаётся в виде XX:XX:XX:XX:XX:XX, где каждая часть принимает значения [00..FF]. Биты маски, установленные в 0, задают биты MAC-адреса, исключаемые из сравнения при поиске.

9

Установить MAC-адреса получателя, для которых должно срабатывать правило (не обязательно).

esr(config-acl-rule)# match destination-mac <ADDR><WILDCARD>

10

Установить номер TCP/UDP-порта отправителя, для которого должно срабатывать правило (если указан протокол).

esr(config-acl-rule)# match source-port { <PORT> | any }

<PORT> – номер TCP/UDP-порта отправителя, принимает значения [1..65535]. При указании значения «any» правило будет срабатывать для любого TCP/UDP-порта отправителя.

11

Установить номер TCP/UDP-порта получателя, для которого должно срабатывать правило (если указан протокол).

esr(config-acl-rule)# match destination-port { <PORT> | any }

12

Установить значение 802.1p приоритета, для которого должно срабатывать правило (не обязательно).

esr(config-acl-rule)# match с os сos <COS>

<COS> – значение 802.1p приоритета, принимает значения [0..7].

13

Установить значение кода DSCP, для которого должно срабатывать правило (не обязательно). Невозможно использовать совместно с IP Precedence.

esr(config-acl-rule)# match dscp <DSCP>

<DSCP> – значение кода DSCP, принимает значения [0..63].

14

Установить значение кода IP Precedence, для которого должно срабатывать правило (не обязательно). Невозможно использовать совместно с DSCP.

esr(config-acl-rule)# match ip-precedence <IPP>

<IPP> – значение кода IP Precedence, принимает значения [0..7].

15

Установить значение идентификационного номера VLAN, для которого должно срабатывать правило (не обязательно).

esr(config-acl-rule)# match vlan <VID>

<VID> – идентификационный номер VLAN, принимает значения [1..4094].

16

Активировать правило.

esr(config-acl-rule)# enable


17

Указать список контроля доступа к конфигурируемому интерфейсу для фильтрации входящего трафика.

esr(config-if-gi)# service-acl input <NAME>

<NAME> – имя списка контроля доступа, задаётся строкой до 31 символа.

...

Блок кода
esr# configure
esr(config)# ip access-list extended white
esr(config-acl)# rule 1
esr(config-acl-rule)# action permit 
esr(config-acl-rule)# match source-address 192.168.20.0 255.255.255.0
esr(config-acl-rule)# enable 
esr(config-acl-rule)# exit
esr(config-acl)# exit

Scroll Pagebreak

Применим список доступа на интерфейс Gi1/0/19 для входящего трафика:

...

Шаг

Описание

Команда

Ключи

1

Создать политику безопасности IPS/IDS.

esr(config)# security ips policy <NAME>

<NAME> – имя политики безопасности, задаётся строкой до 32 символов.

2

Задать описание политики (не обязательно).

esr(config-ips-policy)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

3

Задать профиль IP-адресов, которые будет защищать IPS/IDS.

esr(config-ips-policy)# protect network-group <OBJ-GROUP-NETWORK_NAME>

<OBJ-GROUP-NETWORK-NAME> – имя профиля защищаемых IP-адресов, задается строкой до 32 символов.

4

Задать профиль IP-адресов, внешних для IPS/IDS (не обязательно).

esr(config-ips-policy)# external network-group <OBJ-GROUP-NETWORK_NAME>

<OBJ-GROUP-NETWORK-NAME> – имя профиля внешних IP-адресов, задается строкой до 32 символов.

5

Перейти в режим конфигурирования IPS/IDS.

esr(config)# security ips


6

Назначить политику безопасности IPS/IDS.

esr(config-ips)# policy <NAME>

<NAME> – имя политики безопасности, задаётся строкой до 32 символов.

7

Использовать все ресурсы ESR для IPS/IDS (не обязательно).

esr(config-ips)# perfomance max

По умолчанию для IPS/IDS отдается половина доступных ядер процессора.

8

Задать параметры удаленного сервера для отправки статистики работы сервиса IPS/IDS в формате EVE (elasticsearch) (не обязательно).

esr(config-ips)# logging remote-server  { <ADDR> | <IPV6-ADDR> } [ <TRANSPORT> ] [ <PORT> ] [ source-address { <SRC-ADDR> | <IPV6-SRC-ADDR> } ]

<ADDR> – IP-адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<IPV6-ADDR> – IPv6-адрес, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF];

<TRANSPORT> – протокол передачи данных, по умолчанию - UDP, принимает значения:

  • TCP – передача данных осуществляется по протоколу TCP;
  • UDP – передача данных осуществляется по протоколу UDP;.

<PORT> – номер TCP/UDP-порта, опциональный параметр, принимает значения [1..65535], по умолчанию 514;

<SRC-ADDR> – IPv4-адрес маршрутизатора, который будет использоваться в качестве IP-адреса источника в отправляемых syslog-пакетах, по умолчанию – IPv4-адрес интерфейса, с которого отправляются пакеты;

<IPV6-SRC-ADDR> – IPv6-адрес маршрутизатора, который будет использоваться в качестве IPv6-адреса источника в отправляемых syslog-пакетах, по умолчанию – IPv6-адрес интерфейса, с которого отправляются пакеты.

9Установить интервал отправки статистики работы сервиса IPS/IDS в формате EVE (elasticsearch) (не обязательно).esr(config-ips)# logging update-interval  <INTERVAL><INTERVAL> – интервал отправки статистики работы сервиса IPS/IDS, задаётся в минутах.
10Заблокировать передачу трафика при начальной загрузке до запуска сервиса IPS/IDS и загрузки хотя бы одного настроенного или существующего правила (не обязательно).esr(config-ips)# fail-close enable

11Установить размер виртуальных очередей  (не обязательно).esr(config-ips)# queue-limit <QUEUE-LIMIT>

<QUEUE-LIMIT> – предельное количество пакетов в виртуальной очереди, принимает значения в диапазоне [32..4096]

Размер очереди по умолчанию 1024

12Активировать сервис IPS.esr(config-ips)# enable

13

Активировать IPS/IDS на интерфейсе.

esr(config-if-gi)# service-ips { inline | monitor }

inline – этот режим устанавливается, когда ESR с сервисом IPS/IDS ставится в разрыв сети.

monitor – этот режим устанавливается, когда ESR с сервисом IPS/IDS мониторит зеркалируемый трафик.

Алгоритм настройки автообновления правил IPS/IDS из внешних источников

Шаг

Описание

Команда

Ключи

1Задать имя внешнего хранилища скачиваемых правил (не обязательно).

esr(config-ips)# storage-path { usb://<USB-NAME>:/ | mmc://<MMC-NAME>:/ }

<USB-NAME> – имя подключенного USB-носителя. Имя можно узнать в выводе команды show storage-devices usb;

<MMC-NAME> – имя подключенного MMC-носителя. Имя можно узнать в выводе команды show storage-devices mmc.

Для использования с системой IPS/IDS на внешнем носителе должен быть создан раздел файловой системы в формате exFAT.

2

Перейти в режим конфигурирования автообновлений.

esr(config-ips)# auto-upgrade


23

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

esr(config-ips-auto-upgrade)# user-server <WORD>

<WORD> – имя сервера, задаётся строкой до 32 символов.

34

Задать описание пользовательского сервера обновлений (не обязательно).

esr(config-ips-upgrade-user-server)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

45

Задать URL.

esr(config-ips-upgrade-user-server)# url <URL>

<URL> – текстовое поле, содержащее URL-ссылку длинной длиной от 8 до 255 символов.

В качестве URL-ссылки может быть указан:

  • файл правил с расширение .rule;
  • файл классификатора правил с именем classification.config;
  • каталог на сервере содержащий файлы правил и/или файл классификатора правил.

56

Задать частоту проверки обновлений (не обязательно).

esr(config-ips-upgrade-user-server)# upgrade interval <HOURS>

<HOURS> – интервал обновлений в часах, от 1 до 240.

Значение по умолчанию: 24 часа.

7Активизировать пользовательский сервер обновлений.esr(config-ips-upgrade-user-server)# enable


Предупреждение

Для правил IPS/IDS, загружаемых из внешних источников, на маршрутизаторах ESR выделена отдельная область энергозависимой памяти.

Размер этой области зависит от модели ESR:

  • ESR-1X – 25 МБ;
  • ESR-2X – 50 МБ;

Для всех остальных моделей – 100 МБ.

Если настроить слишком много источников правил или загружать правила, превышающие указанные лимиты, то маршрутизатор будет выдавать сообщения об ошибке %STORAGE_IPS_MGR-I-ERR: There no free space in rules directory.
В этом случае стоит уменьшить объем запрашиваемых правил или использовать внешнее хранилище.

Scroll Pagebreak

Рекомендуемые открытые источники обновления правил

https://sslbl.abuse.ch/ SSL Blacklist содержит списки «плохих» SSL-сертификатов, т. е. сертификатов, в отношении которых установлен факт их использования вредоносным ПО и ботнетами. В списках содержатся SHA1 отпечатки публичных ключей из SSL-сертификатов.
https://feodotracker.abuse.ch/ Feodo Tracker – список управляющих серверов для троянской программы Feodo. Feodo (также известный как Cridex или Bugat) используется злоумышленниками для кражи чувствительной информации в сфере электронного банкинга (данные по кредитным картам, логины/пароли) с компьютеров пользователей. В настоящее время существует четыре версии троянской программы (версии A, B, C и D), главным образом отличающиеся инфраструктурой управляющих серверов.
https://rules.emergingthreats.net/open/suricata-4.0/rules/botcc.rules Данные правила описывают известные ботнеты и управляющие сервера. Источники: Shadowserver.org, Zeus Tracker, Palevo Tracker, Feodo Tracker, Ransomware Tracker.
https://rules.emergingthreats.net/open/suricata-4.0/rules/ciarmy.rules Данные правила описывают вредоносные хосты по классификации проекта www.cinsarmy.com.
https://rules.emergingthreats.net/open/suricata-4.0/rules-4.0/compromised.rules Данные правила описывают известные скомпрометированные и вредоносные хосты. Источники: Daniel Gerzo’s BruteForceBlocker, The OpenBL, Emerging Threats Sandnet, SidReporter Projects.
https://rules.emergingthreats.net/open/suricata-4.0/rules/drop.rules Данные правила описывают спамерские хосты/сети по классификации проекта www.spamhaus.org.
https://rules.emergingthreats.net/open/suricata-4.0/rules/dshield.rules Данные правила описывают вредоносные хосты по классификации проекта www.dshield.org.
https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-activex.rules Данные правила содержат сигнатуры использования ActiveX-контента.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-attack_response.rules

Правила, детектирующие поведение хоста после успешно проведенных атак.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-chat.rules

Данные правила описывают признаки обращения к популярным чатам.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-current_events.rules

Временные правила, ожидающие возможного включения в постоянные списки правил.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-dns.rules

Данные правила содержат сигнатуры уязвимостей в протоколе DNS, признаки использования DNS вредоносным ПО, некорректного использования протокола DNS.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-dos.rules

Данные правила содержат сигнатуры DOS-атак.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-exploit.rules

Данные правила содержат сигнатуры эксплойтов.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-ftp.rules

Данные правила содержат сигнатуры уязвимостей в протоколе FTP, признаки некорректного использования протокола FTP.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-games.rules

Данные правила описывают признаки обращения к популярным игровым сайтам: World of Warcraft, Starcraft и т.п.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-icmp.rules

Данные правила содержат сигнатуры некорректного использования протокола ICMP.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-icmp_info.rules

Данные правила содержат сигнатуры информационных ICMP-сообщений.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-imap.rules

Данные правила содержат сигнатуры уязвимостей в протоколе IMAP, признаки некорректного использования протокола IMAP.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-inappropriate.rules

Данные правила описывают признаки обращения к нежелательным ресурсам.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-info.rules

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

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-malware.rules

Данные правила содержат сигнатуры вредоносного ПО, использующего в своей работе протокол HTTP.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-misc.rules

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

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-mobile_malware.rules

Данные правила содержат сигнатуры вредоносного ПО для мобильных платформ.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-netbios.rules

Данные правила содержат сигнатуры уязвимостей в протоколе NetBIOS, признаки некорректного использования протокола NetBIOS.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-p2p.rules

Данные правила описывают признаки обращения к P2P-сетям (Bittorrent, Gnutella, Limewire).

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-policy.rules

Данные правила описывают нежелательную сетевую активность (обращение к MySpace, Ebay).

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-poprules

Данные правила содержат сигнатуры уязвимостей в протоколе POP3, признаки некорректного использования протокола POP3.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-rpc.rules

Данные правила содержат сигнатуры уязвимостей в протоколе RPC, признаки некорректного использования протокола RPC.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-scada.rules

Данные правила содержат сигнатуры уязвимостей для SCADA-систем.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-scan.rules

Данные правила описывают признаки активности, связанной с сетевым сканированием (Nessus, Nikto, portscanning).

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-shellcode.rules

Данные правила описывают признаки активности, связанной с попытками получить шелл-доступ в результате выполнения эксплойтов.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-smtp.rules

Данные правила содержат сигнатуры уязвимостей в протоколе SMTP, признаки некорректного использования протокола SMTP.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-sql.rules

Данные правила содержат сигнатуры уязвимостей для СУБД SQL.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-telnet.rules

Данные правила содержат сигнатуры уязвимостей для протокола TELNET, признаки некорректного использования протокола TELNET.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-tftp.rules

Данные правила содержат сигнатуры уязвимостей в протоколе TFTP, признаки некорректного использования протокола TFTP.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-trojan.rules

Данные правила содержат признаки сетевой активности троянских программ.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-user_agents.rules

Данные правила содержат признаки подозрительных и потенциально опасных HTTP-клиентов (идентифицируются по значениям в HTTP-заголовке User-Agent).

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-l.rules

Данные правила содержат сигнатуры уязвимостей в VoIP-протокола.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-web_client.rules

Данные правила содержат сигнатуры уязвимостей для веб-клиентов.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-web_server.rules

Данные правила содержат сигнатуры уязвимостей для веб-серверов.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-web_specific_apps.rules

Данные правила содержат сигнатуры эксплуатации уязвимостей веб-приложений.

https://rules.emergingthreats.net/open/suricata-4.0/rules/emerging-worm.rules

Данные правила описывают признаки активности сетевых червей.

...

Блок кода
esr(config-ips)# auto-upgrade
esr(config-auto-upgrade)# user-server ET-Open
esr(config-ips-upgrade-user-server)# description "emerging threats open rules"
esr(config-ips-upgrade-user-server)# url https://rules.emergingthreats.net/open/suricata-4.0/emerging-all.rules
esr(config-ips-upgrade-user-server)# enable
esr(config-ips-upgrade-user-server)# exit
esr(config-auto-upgrade)# user-server Aggressive
esr(config-ips-upgrade-user-server)# description "Etnetera aggressive IP blacklist"
esr(config-ips-upgrade-user-server)# url https://security.etnetera.cz/feeds/etn_aggressive.rules
esr(config-ips-upgrade-user-server)# upgrade interval 4
esr(config-ips-upgrade-user-server)# enable
esr(config-ips-upgrade-user-server)# exit
esr(config-auto-upgrade)# user-server SSL-BlackList
esr(config-ips-upgrade-user-server)# description "Abuse.ch SSL Blacklist"
esr(config-ips-upgrade-user-server)# url https://sslbl.abuse.ch/blacklist/sslblacklist.rules
esr(config-ips-upgrade-user-server)# upgrade interval 4
esr(config-ips-upgrade-user-server)# enable
esr(config-ips-upgrade-user-server)# exit
esr(config-auto-upgrade)# user-server C2-Botnet
esr(config-ips-upgrade-user-server)# description "Abuse.ch Botnet C2 IP Blacklist"
esr(config-ips-upgrade-user-server)# url https://sslbl.abuse.ch/blacklist/sslipblacklist.rules
esr(config-ips-upgrade-user-server)# upgrade interval 4
esr(config-ips-upgrade-user-server)# enable
esr(config-ips-upgrade-user-server)# exit

Алгоритм настройки базовых пользовательских правил

Шаг

Описание

Команда

Ключи

1

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

esr(config)# security ips-category user-defined <WORD>

<WORD> – имя набора пользовательских правил, задаётся строкой до 32 символов.

2

Задать описание набора пользовательских правил (не обязательно).

esr(config-ips-category)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

3

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

esr(config-ips-category)# rule <ORDER>

<ORDER> – номер правила, принимает значения [1..512].

4

Задать описание правила (не обязательно).

esr(config-ips-category-rule)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

5

Указать действие данного правила.

esr(config-ips-category-rule)# action { alert | reject | pass | drop }

  • alert – прохождение трафика разрешается, и сервис IPS/IDS генерирует сообщение;
  • reject – прохождение трафика запрещается. Если это TCP-трафик, отправителю и получателю посылается пакет TCP-RESET, для остального типа трафика посылается пакет ICMP-ERROR. Сервис IPS/IDS генерирует сообщение;
  • pass – прохождение трафика разрешается;
  • drop – прохождение трафика запрещается, и сервис IPS/IDS генерирует сообщение.

6

Установить имя IP-протокола, для которого должно срабатывать правило.

esr(config-ips-category-rule)# protocol <PROTOCOL>

<PROTOCOL> – принимает значения any/ip/icmp/http/tcp/udp.

При указании значения «any» правило будет срабатывать для любых протоколов.

7

Установить IP-адреса отправителя, для которых должно срабатывать правило.

esr(config-ips-category-rule)# source-address
{ip <ADDR> | ip-prefix <ADDR/LEN> |
object-group <OBJ_GR_NAME> | policy-object-group
{ protect | external } | any }

<ADDR> – IP-адрес отправителя, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<ADDR/LEN> – IP-подсеть отправителя, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и LEN принимает значения [1..32].

< OBJ_GR_NAME> – имя профиля IP-адресов, который содержит IP-адреса отправителя, задаётся строкой до 31 символа.

  • protect – устанавливает в качестве адресов отправителя и protect-адреса определенные адреса в политике IPS/IDS;
  • external – устанавливает в качестве адресов отправителя и external- адреса определенные адреса в политике IPS/IDS.

При указании значения «any» правило будет срабатывать для любого IP-адреса отправителя.

8

Установить номера TCP/UDP-портов отправителя, для которых должно срабатывать правило.

Для значения protocol icmp, значение source-port может быть только any.

esr(config-ips-category-rule)# source-port {any | <PORT> | object-group <OBJ-GR-NAME> }

<PORT> – номер TCP/UDP-порта отправителя, принимает значения [1..65535].

<OBJ_GR_NAME> – имя профиля TCP/UDP-портов отправителя, задаётся строкой до 31 символа.

При указании значения «any» правило будет срабатывать для любого TCP/UDP-порта отправителя.

9

Установить IP-адреса получателя, для которых должно срабатывать правило.

esr(config-ips-category-rule)# destination-address
{ip <ADDR> | ip-prefix <ADDR/LEN> | object-group <OBJ_GR_NAME> |
policy-object-group { protect | external } | any }

<ADDR> – IP-адрес получателя, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<ADDR/LEN> – IP-подсеть получателя, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и LEN принимает значения [1..32].;

<OBJ_GR_NAME> – имя профиля IP-адресов, который содержит IP-адреса получателя, задаётся строкой до 31 символа.

  • protect – устанавливает в качестве адресов получателя protect-адреса, определенные в политике IPS/IDS;
  • external – устанавливает в качестве адресов получателя external-адреса, определенные в политике IPS/IDS.

При указании значения «any» правило будет срабатывать для любого IP-адреса получателя.

10

Установить номера TCP/UDP-портов получателя, для которых должно срабатывать правило.

Для значения protocol icmp, значение destination-port может быть только any.

esr(config-ips-category-rule)# destination-port
{any | <PORT> | object-group <OBJ-GR-NAME> }

<PORT> – номер TCP/UDP-порта получателя, принимает значения [1..65535].;

<OBJ_GR_NAME> – имя профиля TCP/UDP-портов получателя, задаётся строкой до 31 символа.

При указании значения «any» правило будет срабатывать для любого TCP/UDP-порта получателя.

11

Установить направление потока трафика, для которого должно срабатывать правило.

esr(config-ips-category-rule)# direction { one-way | round-trip }

  • one-way – трафик передаётся в одну сторону.
  • round-trip – трафик передаётся в обе стороны.

12

Определить сообщение, которое IPS/IDS будет записывать в лог, при срабатывании этого правила.

esr(config-ips-category-rule)# meta log-message <MESSAGE>

<MESSAGE> – текстовое сообщение, задаётся строкой до 129 символов.

13

Определить классификацию трафика, которая будет записывать в лог, при срабатывании этого правила (не обязательно).

esr(config-ips-category-rule)# meta classification-type
{ not-suspicious | unknown | bad-unknown | attempted-recon |
successful-recon-limited | successful-recon-largescale |
attempted-dos | successful-dos | attempted-user |
unsuccessful-user | successful-user | attempted-admin |
successful-admin | rpc-portmap-decode | shellcode-detect |
string-detect | suspicious-filename-detect | suspicious-login |  system-call-detect | tcp-connection | trojan-activity |
unusual-client-port-connection | network-scan |
denial-of-service | non-standard-protocol |
protocol-command-decode | web-application-activity |
web-application-attack | misc-activity | misc-attack |
icmp-event | inappropriate-content | policy-violation |
default-login-attempt }

  • not-suspicious – не подозрительный неподозрительный трафик.
  • unknown – неизвестный трафик.
  • bad-unknown – потенциально плохой трафик.
  • attempted-recon – попытка утечки информации.
  • successful-recon-limited – утечка информации.
  • successful-recon-largescale – масштабная утечка информации.
  • attempted-dos – попытка отказа в обслуживании.
  • successful-dos – отказ в обслуживании.
  • attempted-user – попытка получения привилегий пользователя.
  • unsuccessful-user – безуспешная попытка получения привилегий пользователя.
  • successful-user – успешная попытка получения привилегий пользователя.
  • attempted-admin – попытка получения привилегий администратора.
  • successful-admin – успешная попытка получения привилегий администратора.
  • rpc-portmap-decode – декодирование запроса RPC.
  • shellcode-detect – обнаружен исполняемый код.
  • string-detect – обнаружена подозрительная строка.
  • suspicious-filename-detect – было обнаружено подозрительное имя-файла.
  • suspicious-login – была обнаружена попытка входа с использованием подозрительного имени пользователя.
  • system-call-detect – обнаружен системный вызов.
  • tcp-connection – обнаружено TCP-соединение.
  • trojan-activity – был обнаружен сетевой троян.
  • unusual-client-port-connection – клиент использовал необычный порт.
  • network-scan – обнаружение сетевого сканирования.
  • denial-of-service – обнаружение атаки отказа в обслуживании.
  • non-standard-protocol – обнаружение нестандартного протокола или события.
  • protocol-command-decode – обнаружена попытка шифрования.
  • web-application-activity – доступ к потенциально уязвимому веб-приложению.
  • web-application-attack – атака на веб-приложение.
  • misc-activity – прочая активность.
  • misc-attack – прочие атаки.
  • icmp-event – общее событие ICMP.
  • inappropriate-content – обнаружено неприемлемое содержание.
  • policy-violation – потенциальное нарушение корпоративной конфиденциальности.
  • default-login-attempt – попытка входа с помощью стандартного логина/пароля.

14

Установить значение кода DSCP, для которого должно срабатывать правило (не обязательно).

esr(config-ips-category-rule)# ip dscp <DSCP>

<DSCP> – значение кода DSCP, принимает значения [0..63].

15

Установить значение времени жизни пакета (TTL), для которого должно срабатывать правило (не обязательно).

esr(config-ips-category-rule)# ip ttl <TTL>

<TTL> – значение TTL, принимает значения в диапазоне [1..255].


16

Установить номер IP-протокола, для которого должно срабатывать правило (не обязательно).

Применимо только для значения protocol any.

esr(config-ips-category-rule)# ip protocol-id <ID>

<ID> – идентификационный номер IP-протокола, принимает значения [1..255].

17

Установить значения ICMP CODE, для которого должно срабатывать правило (не обязательно).

Применимо только для значения protocol icmp.

esr(config-ips-category-rule)# ip icmp code <CODE>

<CODE> – значение CODE протокола ICMP, принимает значение в диапазоне [0..255].

esr(config-ips-category-rule)# ip icmp code comparison-operator
{ greater-than | less-than }

Оператор сравнения для значения ip icmp code:

  • greater-than – больше чем..
  • less-than –меньше – меньше чем..

18

Установить значения ICMP ID, для которого должно срабатывать правило (не обязательно).

Применимо только для значения protocol icmp.

esr(config-ips-category-rule)# ip icmp id <ID>

<ID> – значение ID протокола ICMP, принимает значение в диапазоне [0.. 65535].

19

Установить значения ICMP Sequence-ID, для которого должно срабатывать правило (не обязательно).

Применимо только для значения protocol icmp.

esr(config-ips-category-rule)# ip icmp sequence-id <SEQ-ID>

<SEQ-ID> – значение Sequence-ID протокола ICMP, принимает значение в диапазоне [0.. 4294967295].

20

Установить значения ICMP TYPE, для которого должно срабатывать правило (не обязательно).

Применимо только для значения protocol icmp.

esr(config-ips-category-rule)# ip icmp type <TYPE>

<TYPE> – значение TYPE протокола ICMP, принимает значение в диапазоне [0..255].

esr(config-ips-category-rule)# ip icmp type comparison-operator
{ greater-than | less-than }

Оператор сравнения для значения ip icmp type:

  • greater-than – больше чем.
  • less-than –меньше – меньше чем.

21

Установить значения TCP Acknowledgment-Number, для которого должно срабатывать правило (не обязательно).

Применимо только для значения protocol tcp.

esr(config-ips-category-rule)# ip tcp acknowledgment-number <ACK-NUM>

<ACK-NUM> – значение Acknowledgment-Number протокола TCP, принимает значение в диапазоне [0.. 4294967295].

22

Установить значения TCP Sequence-ID, для которого должно срабатывать правило (не обязательно).

Применимо только для значения protocol tcp.

esr(config-ips-category-rule)# ip tcp sequence-id <SEQ-ID>

<SEQ-ID> – значение Sequence-ID протокола TCP, принимает значение в диапазоне [0.. 4294967295].

23

Установить значения TCP Window-Size, для которого должно срабатывать правило (не обязательно).

Применимо только для значения protocol tcp.

esr(config-ips-category-rule)# ip tcp window-size <SIZE>

<SIZE> – значение Window-Size протокола TCP, принимает значение в диапазоне [0.. 65535].

24

Установить ключевые слова протокола HTTP, для которых должно срабатывать правило (не обязательно).

Применимо только для значения protocol http.

esr(config-ips-category-rule)# ip http { accept | accept-enc |
accept-lang | client-body | connection | content-type | cookie |  file-data | header | header-names | host | method | protocol |
referer | request-line | response-line | server-body | start |
start-code | start-msg | uri | user-agent }

Значение ключевых слов см. в документации Suricata 4.X.

https://suricata.readthedocs.io/en/suricata-4.1.4/rules/http-keywords.html


25

Установить значение ключевого слова URI LEN протокола HTTP, для которых должно срабатывать правило (не обязательно).

Применимо только для значения protocol http.

esr(config-ips-category-rule)# ip http urilen <LEN>

<LEN> – принимает значение в диапазоне [0.. 65535].

esr(config-ips-category-rule)# ip http urilen comparison-operator
{ greater-than | less-than }

Оператор сравнения для значения ip http urilen:

  • greater-than – больше чем..
  • less-than –меньше – меньше чем..

26

Установить значение содержимого пакетов (Payload content), для которых должно срабатывать правило (не обязательно).

esr(config-ips-category-rule)# payload content <CONTENT>

<CONTENT> – текстовое сообщение, задаётся строкой до 1024 символов.

27

Не различать прописные и заглавные буквы в описании содержимого пакетов (не обязательно).

Применимо только совместно с командой payload content.


esr(config-ips-category-rule)# payload no-case


28

Установить, сколько байтов с начала содержимого пакета будет проверено (не обязательно).

Применимо только совместно с командой payload content.

esr(config-ips-category-rule)# payload depth <DEPTH>

<DEPTH> – число байт с начала содержимого пакета, принимает значение в диапазоне [1.. 65535].

По умолчанию проверяется все содержимое пакета.

29

Установить число байт смещения от начала содержимого пакета для проверки (не обязательно).

Применимо только совместно с командой payload content.

esr(config-ips-category-rule)# payload offset <OFFSET>

<OFFSET> – число байт смещения от начала содержимого пакета, принимает значение в диапазоне [1.. 65535].

По умолчанию проверяется с начала содержимого.

30

Установить размер содержимого пакетов, для которых должно срабатывать правило (не обязательно).

esr(config-ips-category-rule)# payload data-size <SIZE>

<SIZE> – размер содержимого пакетов, принимает значение в диапазоне [0.. 65535].

esr(config-ips-category-rule)# payload data-size
comparison-operator { greater-than | less-than }

Оператор сравнения для значения payload data-size:

  • greater-than – больше чем..
  • less-than –меньше – меньше чем.

31

Указать пороговое значение количества пакетов, при котором сработает правило (не обязательно).

esr(config-ips-category-rule)# threshold count <COUNT>

<COUNT> – число пакетов, принимает значение в диапазоне [1.. 65535].

32

Указать интервал времени, для которого считается пороговое количество пакетов.

(Обязательно, если включен threshold count).

esr(config-ips-category-rule)# threshold second <SECOND>

<SECOND> – интервал времени в секундах, принимает значение в диапазоне [1.. 65535].

33

Указать по адресу отправителя или получателя будут считаться пороги.

(Обязательно, если включен threshold count).

esr(config-ips-category-rule)# threshold track
{ by-src | by-dst }

  • by-src – считать пороговое значение для пакетов с одинаковым IP-отправителя.
  • by-dst – считать пороговое значение для пакетов с одинаковым IP-получателя.

34

Указать метод обработки пороговых значений.

esr(config-ips-category-rule)# threshold type
{threshold | limit | both }

  • threshold – выдавать сообщение каждый раз по достижении порога.
  • limit – выдавать сообщение не чаще <COUNT> раз за интервал времени <SECOND>.
  • both – комбинация threshold и limit.

Сообщение будет генерироваться, если в течении интервала времени <SECOND> было <COUNT> или более пакетов подходящих под условия правила, и сообщение будет отправлено только один раз в течении интервала времени <SECOND>.

35Активировать правило.

esr(config-ips-category-rule)# enable


...

Правило будет срабатывать, если нагрузка на сервер будет превышать 3 Мбит/с, при этом сообщение об атаке будет генерироваться не чаше чаще одного раза в минуту:

Блок кода
3 Мб/с = 3145728 бит в сек
Пакет размером 1Кбайт = 8192 бита
3145728 / 8192 = 384 пакета в сек
384 * 60 = 23040 пакетов в минуту

...

Блок кода
esr(config-ips-category-rule)# threshold count 23040
esr(config-ips-category-rule)# threshold second 60
esr(config-ips-category-rule)# threshold track by-dst
esr(config-ips-category-rule)# threshold type both

Активизируем правило:

Блок кода
esr(config-ips-category-rule)# enable

Алгоритм настройки расширенных пользовательских правил

Шаг

Описание

Команда

Ключи

1

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

esr(config)# security ips-category user-defined <WORD>

<WORD> – имя набора пользовательских правил, задаётся строкой до 32 символов.

2

Задать описание набора пользовательских правил (не обязательно).

esr(config-ips-category)# description <DESCRIPTION>

<DESCRIPTION> –описание – описание задаётся строкой до 255 символов.

3

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

esr(config-ips-category)# rule-advanced <SID>

<SID> – номер правила, принимает значения [1.. 4294967295].

4

Задать описание правила (не обязательно).

esr(config-ips-category-rule-advanced)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

5

Указать действие данного правила.

esr(config-ips-category-rule-advanced)# rule-text <LINE>

<CONTENT> – текстовое сообщение в формате SNORT 2.X / Suricata 4.X, задаётся строкой до 1024 символов.

Примечание

При написании правил в тексте правила необходимо использовать только двойные кавычки (символ "), а само правило необходимо заключать в одинарные кавычки (символ ').


6Активировать правило.

esr(config-ips-category-rule-advanced)# enable


...

Блок кода
esr(config-ips-category)# rule-advanced 1
esr(config-ips-category-rule-advanced)# description "Slow Loris rule 1"
esr(config-ips-category-rule-advanced)# rule-text 'alert tcp any any -> any 80 (msg:"Possible Slowloris Attack Detected"; flow:to_server,established; content:"X-a|3a|"; distance:0; pcre:"/\d\d\d\d/"; distance:0; content:"|0d 0a|"; sid:10000001;)'
esr(config-ips-category-rule-advanced)# enable
esr(config-ips-category-rule-advanced)# exit

Создадим ещё одно расширенное правило, работающее по схожему алгоритму, чтобы определить, какое из правил будет эффективнее:

Блок кода
esr(config-ips-category)# rule-advanced 2
esr(config-ips-category-rule-advanced)# description "Slow Loris rule 2"
esr(config-ips-category-rule-advanced)# rule-text 'alert tcp $EXTERNAL_NET any -> $HOME_NET $HTTP_PORTS (msg:"SlowLoris.py DoS attempt"; flow:established,to_server,no_stream; content:"X-a:"; dsize:<15; detection_filter:track by_dst, count 3, seconds 30; classtype:denial-of-service; sid: 10000002; rev:1; )'
esr(config-ips-category-rule-advanced)#

Якорь
#EDM
#EDM
Настройка взаимодействия с Eltex Distribution Manager

...

ШагОписаниеКомандаКлючи

1

Перейти в конфигурирование контент- провайдера.

esr (config)# content-provider

2

Задать IP-адрес edm-сервера.

esr (config-content-provider)# host address <A.B.C.D | WORD | X:X:X:X::X>

<IP-ADDR> – IP-адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<IPV6-ADDR> – IPv6-адрес, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF].

WORD(1-31) – DNS-имя сервера.

3

Задать порт для подключения к edm-серверу.

esr (config-content-provider)# host port <PORT> 

<PORT> – номер TCP/UDP-порта отправителя, принимает значения [1..65535].

4

Задать тип и раздел внешнего устройства для создания крипто-хранилища.

esr (config-content-provider)# storage-path <DEVICE>

<DEVICE> – лейбл и имя раздела на внешнем носителе информации в формате usb://Partion_name:/

mmc://Partion_name:/.

На внешнем носителе должна быть создана файловая система в формате exFAT.

5

Установить время перезагрузки устройства после получения сертификата.

esr (config-content-provider)# reboot immediately | [time <HH:MM:SS> | <WEEK_DAY>]

Перезагрузить устройство после получения сертификата.

time <HH:MM:SS> – время, в которое ESR перезагрузится <Часы:минуты:секунды>.

<WEEK_DAY> - день недели, принимает значения: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday.

6

Включить контент провайдер.

enable

7

Установить интервал обращения к edm-серверу в часах.

esr (config-content-provider)# upgrade interval <1-240>

8

Установить описание (не обязательно).

esr (config-content-provider)# description < LINE >

LINE (1-255) String describing server

9Задать текстовое имя устройства, которое передаётся на сервер EDM-Issue (не обязательно).esr (config-content-provider)# system-name < WORD ><WORD> – имя, задаётся строкой до 255 символов.
10Задать текстовое описание, которое передаётся на сервер EDM-Issue  Issue (не обязательно).esr (config-content-provider)# location < WORD ><WORD> – описание, задаётся строкой до 255 символов.

11

Создать списки IP-адресов, которые будут использоваться при фильтрации.

esr (config)# object-group network <WORD>esr (config-object-group-network)# ip prefix <ADDR/LEN>

<WORD> – имя сервера, задаётся строкой до 32 символов.

<ADDR/LEN> – подсеть, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32].

10

На интерфейсе включить service-ips.

esr (config)# interface gigabitethernet 1/0/Xesr (config-if-gi)# service-ips enable

11

Создать политику безопасности IPS/IDS.

esr (config)# security ips policy WORD(1-31)

WORD(1-31)

12

Задать профиль IP-адресов, которые будет защищать IPS/IDS.

esr(config-ips-policy)# protect network-group <OBJ-GROUP-NETWORK_NAME>

<OBJ-GROUP-NETWORK-NAME> – имя профиля защищаемых IP-адресов, задается строкой до 32 символов.

13

Войти в раздел конфигурирования вендора.

esr (config-ips-policy)# vendor kaspersky

14

Подключить необходимую категорию.

esr (config-ips-vendor)# category WORD(1-64)

Phishing URL Data Feed – потоки данных Phishing URL

Malicious URL Data Feed – потоки данных Malicious URL

Botnet C&C URL Data Feed – потоки данных Botnet C&C URL

Malicious Hash Data Feed – потоки данных Malicious Hashes

Mobile Malicious Hash Data Feed – потоки данных мобильных Malicious Hashes

IP Reputation Data Feed – потоки данных IP-адресов

Mobile Botnet Data Feed – потоки данных о мобильных Botnet

Ransomware URL Data Feed – поток данных Ransomware URL

Botnet C&C URL Exact Data Feed – поток данных Botnet C&C URL Exact

Phishing URL Exact Data Feed – поток данных Phishing URL Exact

Malicious URL Exact Data Feed – поток данных Malicious URL Exact

Iot URL Data Feed – поток данных IoT URL

Категории, доступные по текущей подписке, можно посмотреть в контекстной подсказке или командой:

show security ips content-provider rules-info

15

Задать тип правил.

esr (config-ips-vendor-category)# rules action <ACTION>

<ACTION> - drop | reject | alert | pass – действия, которые будут применяться к пакетам.

  • alert – прохождение трафика разрешается, и сервис IPS/IDS генерирует сообщение;

  • reject – прохождение трафика запрещается. Если это TCP-трафик, отправителю и получателю посылается пакет TCP-RESET, для остального типа трафика посылается пакет ICMP-ERROR. Сервис IPS/IDS генерирует сообщение;

  • pass – прохождение трафика разрешается;

  • drop – прохождение трафика запрещается, и сервис IPS/IDS генерирует сообщение.

16

Задать количество скачиваемых правил.

esr (config-ips-vendor-category)# rules count <number>

<number>

rules { all | count <COUNT> | percent <PERCENT> | recomended }
  • all – данной командой указывается, что система IPS/IDS будет работать с полным набором правил данной категории;
  • count <COUNT> – данной командой указывается действующее число правил данной категории, с которым будет работать система IPS/IDS:
    • <COUNT> – число правил. Минимальное значение 1, максимальное значение зависит от категории правил.
  • percent <PERCENT> – данной командой указывается процентное соотношение от общего числа правил данной категории, с которым будет работать система IPS/IDS:
    • <PERCENT> – процент от общего числа правил.

  • recomended – данной командой указывается, что система IPS/IDS будет использовать рекомендованное количество правил в данной категории. Рекомендованное количество составляет 42% от общего числа правил.

Максимальное число правил по категориям можно посмотреть в контекстной подсказке или командой:

show security ips content-provider rules-info

17

Включить категорию.

enable

18

Перейти в режим конфигурирования IPS/IDS.

esr (config)# security ips

19

Назначить политику безопасности IPS/IDS.

esr(config-ips)# policy <NAME>

<NAME> – имя политики безопасности, задаётся строкой до 32 символов.

20

Использовать все ресурсы ESR для IPS/IDS (не обязательно).

esr(config-ips)# perfomance max


21

Задать параметры удаленного сервера для отправки статистики работы сервиса IPS/IDS в формате EVE (elasticsearch) (не обязательно).

esr(config-ips)# logging remote-server  { <ADDR> | <IPV6-ADDR> } [ <TRANSPORT> ] [ <PORT> ] [ source-address { <SRC-ADDR> | <IPV6-SRC-ADDR> } ]

<ADDR> – IP-адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<IPV6-ADDR> – IPv6-адрес, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF];

<TRANSPORT> – протокол передачи данных, по умолчанию – UDP, принимает значения:

  • TCP – передача данных осуществляется по протоколу TCP;
  • UDP – передача данных осуществляется по протоколу UDP;.

<PORT> – номер TCP/UDP-порта, опциональный параметр, принимает значения [1..65535], по умолчанию 514;

<SRC-ADDR> – IPv4-адрес маршрутизатора, который будет использоваться в качестве IP-адреса источника в отправляемых syslog-пакетах, по умолчанию – IPv4-адрес интерфейса, с которого отправляются пакеты;

<IPV6-SRC-ADDR> – IPv6-адрес маршрутизатора, который будет использоваться в качестве IPv6-адреса источника в отправляемых syslog-пакетах, по умолчанию – IPv6-адрес интерфейса, с которого отправляются пакеты.

22Установить интервал отправки статистики работы сервиса IPS/IDS в формате EVE (elasticsearch) (не обязательно).esr(config-ips)# logging update-interval  <INTERVAL><INTERVAL> – интервал отправки статистики работы сервиса IPS/IDS, задаётся в минутах.

23

Активировать IPS/IDS.

esr(config- ips )# enable


...

После перезагрузки устройства , можно начинать настраивать сервис IPS.

...

Блок кода
interface gigabitethernet 1/0/1
  service-ips enable
exit

Scroll Pagebreak

Настроить политику безопасности:

Блок кода
security ips policy policy0
  protect network-group objectgroup0
  vendor kaspersky
    category MaliciousURLsDF
      rules action alert
      rules countall
100       enable
    exit
    category MobileBotnetCAndCDF
      rules action alert
      rules countrecomended
1000       enable
    exit
    category APTIPDF
      rules action alert
      rules count 1000
      enable
    exit
Блок кода
    category APTURLsDF
      rules action alert
      rules count 1000
      enable
    exit
    category BotnetCAndCURLsDF
      rules action alert
      rules countpercent 100050
      enable
    exit
    category IPReputationDF
      rules action alert
      rules countrecomended
1000       enable
    exit
    category IoTURLsDF
      rules action alert
      rules countpercent 100015
      enable
    exit
    category MaliciousHashDF
      rules action alert
      rules count 1
      enable
    exit
    category MobileMaliciousHashDF
      rules action alert
      rules count 1
      enable
    exit
    category PSMSTrojanDF
      rules action alert
      rules count 1
      enable
    exit
    category PhishingURLsDF
      rules action alert
      rules count 1000
      enable
    exit
    category RansomwareURLsDF
      rules action alert
      rules count 1000
      enable
    exit
  exit
exit

...

Шаг

Описание

Команда

Ключи

1Определить IP-адрес DNS-сервера, используемого для разрешения DNS-имен.

esr(config)# domain name-server <IP>

<IP> – IP-адрес используемого DNS-сервера, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255].
2Включить разрешение DNS-имен на устройстве.

esr(config)# domain lookup enable


3

Создать политику безопасности IPS/IDS.

esr(config)# security ips policy <NAME>

<NAME> – имя политики безопасности, задаётся строкой до 32 символов.

4

Задать описание политики (не обязательно).

esr(config-ips-policy)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

5

Создать списки IP-адресов, которые будут использоваться при фильтрации.

esr (config)# object-group network <WORD>

esr (config-object-group-network)# ip prefix <ADDR/LEN>

<WORD> – имя сервера, задаётся строкой до 32 символов.

<ADDR/LEN> – подсеть, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и EE принимает значения [1..32].

6

Задать профиль IP-адресов, которые будет защищать IPS/IDS.

esr(config-ips-policy)# protect network-group <OBJ-GROUP-NETWORK_NAME>

<OBJ-GROUP-NETWORK-NAME> – имя профиля защищаемых IP-адресов, задается строкой до 32 символов.

7

Задать профиль IP-адресов, внешних для IPS/IDS (не обязательно).

esr(config-ips-policy)# external network-group <OBJ-GROUP-NETWORK_NAME>

<OBJ-GROUP-NETWORK-NAME> – имя профиля внешних IP-адресов, задается строкой до 32 символов.

8Создать профиль категорий контентной фильтрации

esr(config)# object-group content-filter <NAME>

<NAME> – имя профиля контентной фильтрации, задается строкой до 31 символа.

9

Задать описание профиля категорий контентной фильтрации (не обязательно).

esr(config-object-group-content-filter)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

10Задать поставщика категорий контентной фильтрации.

esr(config-object-group-content-filter)# vendor <CONTENT-FILTER-VENDOR>

<CONTENT-FILTER-VENDOR> – название поставщика категорий контентной фильтрации. В текущей версии ПО в качестве поставщика категорий контентной фильтрации может выступать только Лаборатория Касперского.
11Задать необходимые категории контентной фильтрации.

esr(config-object-group-cf-kaspersky)# category <CATEGORY>

<CATEGORY> – имя категории. Описание доступных категорий приведено в справочнике команд.

12

Перейти в режим конфигурирования IPS/IDS.

esr(config)# security ips


13

Назначить политику безопасности IPS/IDS.

esr(config-ips)# policy <NAME>

<NAME> – имя политики безопасности, задаётся строкой до 32 символов.

14

Использовать все ресурсы ESR для IPS/IDS (не обязательно).

esr(config-ips)# perfomance max

По умолчанию для IPS/IDS отдается половина доступных ядер процессора.

15

Задать параметры удаленного сервера для отправки статистики работы сервиса IPS/IDS в формате EVE (elasticsearch) (не обязательно).

esr(config-ips)# logging remote-server  { <ADDR> | <IPV6-ADDR> } [ <TRANSPORT> ] [ <PORT> ] [ source-address { <SRC-ADDR> | <IPV6-SRC-ADDR> } ]

<ADDR> – IP-адрес, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<IPV6-ADDR> – IPv6-адрес, задаётся в виде X:X:X:X::X, где каждая часть принимает значения в шестнадцатеричном формате [0..FFFF];

<TRANSPORT> – протокол передачи данных, по умолчанию - UDP, принимает значения:

  • TCP – передача данных осуществляется по протоколу TCP;
  • UDP – передача данных осуществляется по протоколу UDP;

<PORT> – номер TCP/UDP-порта, опциональный параметр, принимает значения [1..65535], по умолчанию 514;

<SRC-ADDR> – IPv4-адрес маршрутизатора, который будет использоваться в качестве IP-адреса источника в отправляемых syslog-пакетах, по умолчанию – IPv4-адрес интерфейса, с которого отправляются пакеты;

<IPV6-SRC-ADDR> – IPv6-адрес маршрутизатора, который будет использоваться в качестве IPv6-адреса источника в отправляемых syslog-пакетах, по умолчанию – IPv6-адрес интерфейса, с которого отправляются пакеты;.

16Установить интервал отправки статистики работы сервиса IPS/IDS в формате EVE (elasticsearch) (не обязательно).esr(config-ips)# logging update-interval  <INTERVAL><INTERVAL> – интервал отправки статистики работы сервиса IPS/IDS, задаётся в минутах.

17

Активировать IPS/IDS.

esr(config-ips )# enable


18

Активировать IPS/IDS на интерфейсе.

esr(config-if-gi)# service-ips enable


19

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

esr(config)# security ips-category user-defined <WORD>

<WORD> – имя набора пользовательских правил, задаётся строкой до 32 символов.

20

Задать описание набора пользовательских правил (не обязательно).

esr(config-ips-category)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

21

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

esr(config-ips-category)# rule <ORDER>

<ORDER> – номер правила, принимает значения [1..512].

22

Задать описание правила (не обязательно).

esr(config-ips-category-rule)# description <DESCRIPTION>

<DESCRIPTION> – описание задаётся строкой до 255 символов.

23

Указать действие данного правила.

esr(config-ips-category-rule)# action { alert | reject | pass | drop }

  • alert – прохождение трафика разрешается, и сервис IPS/IDS генерирует сообщение;
  • reject – прохождение трафика запрещается. Если это TCP-трафик, отправителю и получателю посылается пакет TCP-RESET, для остального типа трафика посылается пакет ICMP-ERROR. Сервис IPS/IDS генерирует сообщение;
  • pass – прохождение трафика разрешается;
  • drop – прохождение трафика запрещается, и сервис IPS/IDS генерирует сообщение.

24

Установить в качестве IP-протокола протокол HTTP.

esr(config-ips-category-rule)# protocol http


25

Установить IP-адреса отправителя, для которых должно срабатывать правило.

esr(config-ips-category-rule)# source-address
{ip <ADDR> | ip-prefix <ADDR/LEN> |  object-group <OBJ_GR_NAME> | policy-object-group  { protect | external } | any }

<ADDR> – IP-адрес отправителя, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<ADDR/LEN> – IP-подсеть отправителя, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и LEN принимает значения [1..32].

<OBJ_GR_NAME> – имя профиля IP-адресов, который содержит IP-адреса отправителя, задаётся строкой до 31 символа.

  • protect – устанавливает в качестве адресов отправителя protect-адреса, определенные в политике IPS/IDS;
  • external – устанавливает в качестве адресов отправителя external-адреса. определенные в политике IPS/IDS.

При указании значения «any» правило будет срабатывать для любого IP-адреса отправителя.

26

Установить номера TCP-портов отправителя, для которых должно срабатывать правило.


esr(config-ips-category-rule)# source-port {any | <PORT> | object-group <OBJ-GR-NAME> }

<PORT> – номер TCP/UDP-порта отправителя, принимает значения [1..65535].

<OBJ_GR_NAME> – имя профиля TCP/UDP портов отправителя, задаётся строкой до 31 символа.

При указании значения «any» правило будет срабатывать для любого TCP/UDP-порта отправителя.

27

Установить IP-адреса получателя, для которых должно срабатывать правило.

esr(config-ips-category-rule)# destination-address
{ip <ADDR> | ip-prefix <ADDR/LEN> | object-group <OBJ_GR_NAME> |
policy-object-group { protect | external } | any }

<<ADDR> – IP-адрес получателя, задаётся в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения [0..255];

<ADDR/LEN> – IP-подсеть получателя, задаётся в виде AAA.BBB.CCC.DDD/EE, где каждая часть AAA – DDD принимает значения [0..255] и LEN принимает значения [1..32].

< OBJ_GR_NAME> – имя профиля IP-адресов, который содержит IP-адреса получателя, задаётся строкой до 31 символа.

  • protect – устанавливает в качестве адресов получателя protect-адреса, определенные в политике IPS/IDS;
  • external – устанавливает в качестве адресов получателя external-адреса, определенные в политике IPS/IDS.

При указании значения «any» правило будет срабатывать для любого IP-адреса получателя.

28

Установить номера TCP-портов получателя, для которых должно срабатывать правило.

Обычно для протокола http используется значение TCP-порт 80.

В случаях когда когда используются web-сервера на нестандартных портах надо пописывать эти порты тоже.

esr(config-ips-category-rule)# destination-port  {any | <PORT> | object-group <OBJ-GR-NAME> }

<PORT> – номер TCP/UDP-порта получателя, принимает значения [1..65535].

<OBJ_GR_NAME> – имя профиля TCP/UDP портов получателя, задаётся строкой до 31 символа.

При указании значения «any» правило будет срабатывать для любого TCP/UDP-порта получателя.

29

Установить направление потока трафика, для которого должно срабатывать правило.

esr(config-ips-category-rule)# direction { one-way | round-trip }

  • one-way – трафик передаётся в одну сторону.
  • round-trip – трафик передаётся в обе стороны.

30

Определить сообщение которое IPS/IDS будет записывать в лог, при срабатывании этого правила.

esr(config-ips-category-rule)# meta log-message <MESSAGE>

<MESSAGE> –  текстовое сообщение, задаётся строкой до 129 символов.

31Назначить профиль категорий контентной фильтрации.

esr(config-ips-category-rule)# ip http content-filter <NAME>

<NAME> – имя профиля контентной фильтрации задаётся строкой до 31 символа.

any – правило будет срабатывать для http-сайтов любой категории.

32Активировать правило.

esr(config-ips-category-rule)# enable


...

Запретить доступ к http-сайтам, относящимся к категориям adult-content, casino, online-betting, online-lotteries из локальной сети 192.168.1.0/24 24.

Drawio
bordertrue
viewerToolbartrue
fitWindowfalse
diagramNameESR-Antispam-Usage
simpleViewerfalse
width
diagramWidth931
revision1

...

В качестве TCP-порта назначения для протокола http обычно используется 80 порт, но интернет-сайты могут работать и на нестандартных портах, поэтому укажем any:

...

ШагОписаниеКомандаКлючи
1Настроить сетевое имя маршрутизатора.esr(config)# hostname <NAME><NAME> – до 64 символов.
2Назначить имя домена для маршрутизатора.esr(config)# domain name <NAME><NAME> – до 255 символов.
3Назначить IP-адрес DNS-сервера, используемого для разрешения DNS-имен.esr(config)# domain name-server <IP><IP> – в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения от 0 до 255.
4Включить разрешение имен DNS.esr(config)# domain lookup enable
5Создать профиль сервиса «Антиспам»esr(config)# security antispam profile <NAME><NAME> – до 31 символа.
6Задать описание профиля сервиса «Антиспам» (необязательно).esr(config-antispam-profile)# description <DESCRIPTION><DESCRIPTION> – до 255 символов.
7Задать тип маркировки электронных писем, которые сервис «Антиспам» отнес к категории «Спам».esr(config-antispam-profile)# mark-type <MARK-TYPE>

<MARK-TYPE> – тип маркировки писем, отнесенных к категории «Спам». Возможные значения:- header –

  • header – добавить X-Spam заголовок к заголовкам электронного письма;
- subject –
  • subject – добавить тег [SPAM] перед темой электронного письма.
8Создать профиль почтовых доменов и адресов почтовых ящиков (необязательно).esr(config)# object-group email <NAME><NAME> – до 31 символа.
9Задать описание профиля почтовых доменов и адресов почтовых ящиков (необязательно).esr(config-object-group-email)# description <DESCRIPTION><DESCRIPTION> – до 255 символов.
10Внести в профиль почтовый домен или адрес почтового ящика (необязательно).esr(config-object-group-email)# email <NAME><NAME> – до 63 символов.
11Создать правило в профиле сервиса «Антиспам» (необязательно).esr(config-antispam-profile)# rule <ORDER><ORDER> – номер правила, принимает значения от 1 до 100.
12Задать описание правила профиля сервиса «Антиспам» (необязательно).esr(config-antispam-profile)# description <DESCRIPTION><DESCRIPTION> – до 255 символов.
13Установить профиль IP-адресов отправителя, для которых должно срабатывать правило (не обязательно).esr(config-antispam-profile-rule)# sender ip <NAME><NAME> – до 31 символа.
14Установить профиль почтовых доменов и адресов почтовых ящиков, для которых должно срабатывать правило (не обязательно).esr(config-antispam-profile-rule)# sender email <NAME><NAME> – до 31 символа.
15Указать действие для правила.esr(config-antispam-profile-rule)# action <ACTION>

<ACTION> – назначаемое действие. Возможные значения:- reject – Принимает значение reject – дальнейшая доставка письма запрещена, отправителю письма высылается ответ об ошибке.

16Включить правило в профиле сервиса «Антиспам» (необязательно).esr(config-antispam-profile-rule)# enable
17Создать почтовый домен.esr(config)# mailserver domain <DOMAIN-NAME><DOMAIN-NAME> – до 31 символа.
18Задать описание почтового домена (необязательно).esr(config-mailserver-domain)# description <DESCRIPTION><DESCRIPTION> – до 255 символов.
19Задать имя обслуживаемого домена электронной почты.esr(config-mailserver-domain)# mail domain <NAME><NAME> – до 63 символов.
20Задать IP-адрес почтового сервера, для которого сервис «Антиспам» на ESR выступает в качестве SMTP Proxy.esr(config-mailserver-domain)# mail server ip <ADDR><ADDR> – в виде AAA.BBB.CCC.DDD, где каждая часть принимает значения от 0 до 255.
21Задать профиль сервиса «Антиспам», настройки которого будут применены к текущему почтовому домену.esr(config-mailserver-domain)# profile antispam <NAME><NAME> – до 63 символов.
22Включить почтовый домен.esr(config-mailserver-domain)# enable
23Перейти в конфигурирование почтового сервера.esr(config)# mailserver
24Задать имя почтового домена.esr(config-mailserver)# domain <NAME><NAME> – до 63 символов.
25Указать сертификаты и ключи для работы протокола TLS (необязательно).esr(config-mailserver)# tls keyfile <TYPE> <NAME>

<TYPE> – Тип тип файла сертификата или ключа. Возможные значения:

  • ca – сертификат удостоверяющего центра;
  • server-key – приватный ключ сервера;
  • server-crt – публичный сертификат сервера;
  • dh – ключ Диффи-Хеллмана.

<NAME> – имя файла сертификата, задаётся строкой до 31 символа. 

26Включить поддержку TLS на почтовом сервере (необязательно). При включении TLS обязательно наличие в конфигурации прописанного сертификата удостоверяющего центра, приватного ключа сервера и публичного сертификата сервера.esr(config-mailserver)# tls enable
27Задать максимальный размер заголовков письма в КБ (необязательно).esr(config-mailserver)# headers max-size <SIZE><SIZE> – максимальный размер заголовков письма в КБ, принимает значения от 50 до 200.
28Задать максимальный размер письма в КБ (необязательно).esr(config-mailserver)# mail max-size <SIZE><SIZE> – максимальный размер письма в КБ, принимает значения от 5120 до 51200.
29Включить обязательное требование SMTP-команды HELO или EHLO при установлении SMTP-сессии (необязательно).esr(config-mailserver)# smtp helo-required
30Разрешить SMTP команду VRFY на почтовом сервере во время SMTP-сессии (необязательно).esr(config-mailserver)# smtp vrfy-enable
31Включить почтовый сервер.esr(config-mailserver)# enable

...

Настроим сетевое имя, имя домена и настройки DNS. Сетевое имя и имя домена должны образовать FQDN (англ. Fully Qualified Domain Name — полностью определённое имя домена), прописанное в MX-записи для домена eltex-co.ru:

...

Примечание
В firewall необходимо разрешить протокол SMTP (TCP-порт 25).