Создание и настройка ICAP-правил производится на уровне security-policy icap-rules. Подробнее о структуре команд читайте в разделе Настройка правил с использованием UPL.
Необходимо указать:
Параметр
Описание
PASS
OK
Действие правила ICAP:
PASS — Пропустить — не посылать данные на ICAP-сервер. Создав правило с таким действием, администратор может явно исключить определенный трафик из пересылки на серверы ICAP.
OK — Переслать — переслать данные на ICAP-сервер и ожидать ответа ICAP-сервера (стандартный режим работы большинства ICAP-серверов).
OK ... ignore — Переслать и игнорировать — переслать данные ICAP-сервер и игнорировать ответ от ICAP-сервера (вне зависимости от ответа ICAP-сервера, данные к пользователю уходят без модификации, но сервер ICAP получает полную копию пользовательского трафика); ignore указывается среди свойств правила.
enabled
Включение/отключение правила:
enabled(yes) или enabled(true).
enabled(no) или enabled(false).
name
Название правила ICAP.
Для указания названия правила: name("ICAP rule example").
desc
Описание правила.
Например: desc("ICAP rule example set via CLI").
profile
ICAP-серверы, куда UserGate будет пересылать запросы; указывается в формате: profile("Example ICAP server").
Для указания зоны источника, например, 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
Пользователи и группы пользователей, для которых применяется правило ICAP (локальные или LDAP).
Для добавления LDAP групп и пользователей необходим корректно настроенный LDAP-коннектор (о настройке LDAP-коннектора через CLI читайте в разделе Настройка LDAP-коннектора).
В следующей строке описано добавление локальных пользователя (local_user) и группы (Local Group), пользователя (example.local\AD_user) и группы LDAP (AD group):
user = (local_user, "CN=Local Group, DC=LOCAL", "example.loc\\AD_user", "CN=AD group, OU=Example, DC= example, DC=loc")
Заранее был настроен домен Active Directory example.loc. При добавлении пользователей и групп LDAP можно указать список путей на сервере, начиная с которых система будет осуществлять поиск пользователей и групп.
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.
response.header.Content-Type
Списки типов контента, к которым будут применяться правила.
Для задания списка:
response.header.Content-Type = lib.mime(); в скобках необходимо указать название списка типов контента.
Подробнее о создании и настройке собственных списков с использованием интерфейса командной строки читайте в разделе Настройка типов контента.
category
Список категорий или категории URL-фильтрации, для которых будет применяться правило. Для URL-фильтрации необходимо иметь соответствующую лицензию.
Для указания списка категорий URL: category = lib.category(); в скобках необходимо указать название списка категорий URL.
Подробнее о создании и настройке категорий URL с использованием интерфейса командной строки читайте в разделе Настройка категорий URL.
Для указания категории URL: category = "URL category name".
url
Списки URL, для которых будет применяться правило.
Для указания списка URL: url = lib.url(); в скобках необходимо указать название списка URL.
Подробнее о создании и настройке списков URL читайте в разделе Настройка списков URL.
http.method
Метод, используемый в HTTP-запросах.
Чтобы указать HTTP метод, например, GET: http.method = GET.
service
Тип сервиса: HTTP, SMTP или POP3.
Чтобы указать сервис: service = "service name"; для указания нескольких сервисов: service = (service-name1, service-name2, ...).