Правила межсетевого экрана настраиваются на уровне network-policy firewall с помощью синтаксиса UPL. Подробнее о структуре команд — в разделе «UserGate Policy Language».
Для создания правила межсетевого экрана используется команда:
Admin@nodename# create network-policy firewall
Далее необходимо указать параметры правила.
Параметр
Описание
PASS
DENY
Действие правила межсетевого экрана:
PASS — разрешить трафик.
DENY — запретить трафик
enabled
Включение/отключение правила:
enabled(yes) или enabled(true).
enabled(no) или enabled(false)
name
Название правила межсетевого экрана.
Например: name("Rule example")
desc
Описание правила.
Например: desc("Firewall rule example configured in CLI")
reject_with
Настройка доступна для правил с действием «Запретить»:
Запись в журнал информации о трафике при срабатывании правила. Возможны варианты:
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) — журналировать начало сессии
fragmented
Указание пакетов, к которым применяется правило межсетевого экрана:
fragmented(yes) или fragmented(true) — применить правило к только фрагментированным пакетам.
fragmented(no) или fragmented(false) — применить правило к только нефрагментированным пакетам.
fragmented(all) — применить правило ко всем пакетам.
Если не указать fragmented при создании правила, то правило межсетевого экрана применяется ко всем пакетам
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).
Пользователи и группы пользователей, для которых применяется правило межсетевого экрана (локальные или LDAP).
Для добавления LDAP групп и пользователей необходим корректно настроенный LDAP-коннектор (о настройке LDAP-коннектора через CLI читайте в разделе Настройка LDAP-коннектора).
Примеры добавления пользователей в правило:
user = known
user = "user"
user = "testd.local\\user1"
user = ("user", "testd.local\\user1")
dst.zone
Зона назначения трафика.
Для указания зоны источника, например, Untrusted: dst.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).
Для установки расписания: time = lib.time(); в скобках необходимо указать название группы календарей. Подробнее о настройке календарей — в разделе «Настройка календарей»
Пример создания правила межсетевого экрана с использованием UPL: