Настройка правил защиты от DoS атак производится на уровне security-policy dos-rules. Подробнее о структуре команд читайте в разделе UserGate Policy Language.
Структура команды для создания правила защиты от DoS атак:
Запись в журнал информации о трафике при срабатывании правила. Возможны варианты:
rule_log(no) или rule_log(false) — отключить журналирование. Если при создании правила rule_log не указано, функция журналирования отключена.
rule_log(yes) или rule_log(true) — журналировать все сетевые пакеты без установки лимитов. Для установки лимитов необходимо указать число событий, записываемых в журнал за единицу времени (s — секунда; min — минута; h — час; d — день, нельзя установить лимит журналирования менее 5-ти пакетов в день) и максимальное количество пакетов, журналируемых на событие. Например, rule_log(yes, "3/h", 5) — включение журналирования с установкой лимитов: в журнал записывается 3 события в час; максимальное количество пакетов, журналируемых на событие равно 5.
rule_log(session) — журналировать начало сессии.
src.zone
Зона источника трафика.
Для указания зоны источника, например, Trusted: src.zone = Trusted.
Подробнее о настройке зон с использованием интерфейса командной строки читайте в разделе Зоны.
src.ip
Добавление списков IP-адресов или доменов источника.
Для указания списка IP-адресов: src.ip = lib.network(); в скобках необходимо указать название списка. Подробнее о создании и настройке списков IP-адресов с использованием CLI читайте в разделе Настройка IP-адресов.
Для указания списка доменов источника: src.ip = lib.url(); в скобках необходимо указать название URL, в который были добавлены необходимые домены. Подробнее о создании и настройке списков URL с использованием интерфейса командной строки читайте в разделе Настройка списков URL.
src.geoip
Указание GeoIP источника; необходимо указать код страны (например, src.geoip = RU).
Коды названий стран доступны по ссылке ISO 3166-1.
Важно! Существует ограничение на количество GeoIP, которое может быть указано: не более 15.
user
Пользователи и группы пользователей, для которых применяется правило защиты DoS (локальные или LDAP).
Для добавления LDAP групп и пользователей необходим корректно настроенный LDAP-коннектор (о настройке LDAP-коннектора через CLI читайте в разделе Настройка LDAP-коннектора).
Примеры добавления пользователей в правило:
user = known
user = "user"
user = "testd.local\\user1"
user = ("user", "testd.local\\user1")
dst.zone
Зона назначения трафика.
Для указания зоны источника, например, Untrusted: src.zone = Untrusted.
Подробнее о настройке зон с использованием интерфейса командной строки читайте в разделе Зоны.
dst.ip
Добавление списков IP-адресов или доменов назначения.
Для указания списка IP-адресов: dst.ip = lib.network(); в скобках необходимо указать название списка. Подробнее о создании и настройке списков IP-адресов с использованием CLI читайте в разделе Настройка IP-адресов.
Для указания списка доменов назначения: dst.ip = lib.url(); в скобках необходимо указать название URL-списка, в который были добавлены необходимые домены. Подробнее о создании и настройке списков URL с использованием интерфейса командной строки читайте в разделе Настройка списков URL.
dst.geoip
Указание GeoIP назначения; необходимо указать код страны (например, dst.geoip = RU).
Коды названий стран доступны по ссылке ISO 3166-1.
Важно! Существует ограничение на количество GeoIP, которое может быть указано: не более 15.
Чтобы указать сервис: service = "service name"; для указания нескольких сервисов: service = (service-name1, service-name2, ...).
Чтобы указать группу сервисов: service = lib.service(); в скобках необходимо указать название группы сервисов.
time
Настройка расписания работы правила.
Для установки расписания: time = lib.time(); в скобках необходимо указать название группы календарей. Подробнее о настройке календарей читайте в разделе Настройка календарей.
Структура команды для редактирования правила защиты от DoS атак:
Admin@nodename# set security-policy dos-rules <position> upl-rule <parameters>
Структура команды для просмотра правил защиты от DoS атак:
Admin@nodename# show security-policy dos-rules
Admin@nodename# show security-policy dos-rules <position>
Пример создания правила защиты от DoS атак с помощью UPL:
Admin@nodename# create security-policy dos-rules 1 upl-rule WARNING \
...src.zone = Untrusted \
...dst.zone = DMZ \
...service = (HTTP, HTTPS) \
...profile("Test DoS profile") \
...rule_log(session) \
...name("Test DoS rule") \
...desc("Test DoS rule description") \
...enabled(true)
...
Admin@nodename# show security-policy dos-rules 1
% ----------------- 1 -----------------
WARNING \
src.zone = Untrusted \
dst.zone = DMZ \
service = (HTTP, HTTPS) \
desc("Test DoS rule description") \
rule_log(session) \
profile("Test DoS profile") \
enabled(true) \
id("68da2f83-59ae-4a7d-b595-f6ff31bf34c6") \
name("Test DoS rule")
Структура команды для удаления правила защиты от DoS атак: