...
Шаг | Описание | Команда | Ключи |
---|---|---|---|
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 } |
|
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 | <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 символа.
При указании значения «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 | <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 символа.
При указании значения «any» правило будет срабатывать для любого IP-адреса получателя. |
10 | Установить номера TCP/UDP-портов получателя, для которых должно срабатывать правило. Для значения protocol icmp, значение destination-port может быть только any. | esr(config-ips-category-rule)# destination-port | <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 } |
|
12 | Определить сообщение которое IPS/IDS будет записывать в лог, при срабатывании этого правила. | esr(config-ips-category-rule)# meta log-message <MESSAGE> | <MESSAGE> – текстовое сообщение, задаётся строкой до 129 символов. |
13 | Определить классификацию трафика, которая будет записывать в лог, при срабатывании этого правила (не обязательно). | esr(config-ips-category-rule)# meta classification-type |
|
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 | Оператор сравнения для значения ip icmp code:
| ||
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 | Оператор сравнения для значения ip icmp type:
| ||
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 | | Значение ключевых слов см в документации 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 | Оператор сравнения для значения ip http urilen:
| ||
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 | Оператор сравнения для значения payload data-size:
| ||
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 |
|
34 | Указать метод обработки пороговых значений. | esr(config-ips-category-rule)# threshold type |
Сообщение будет генерироваться, если в течении интервала времени <SECOND> было <COUNT> или более пакетов подходящих под условия правила, и сообщение будет отправлено только один раз в течении интервала времени <SECOND>. |
35 | Активировать правило. | 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 |
Scroll Pagebreak |
---|
...
Блок кода |
---|
esr(config)# security ips-category user-defined ADV |
Scroll Pagebreak |
---|
Создадим расширенное правило:
...