18. Служба wcf

18.1. Общие сведения

Служба wcf – это HTTP(S) прокси-сервер, позволяющий фильтровать содержимое веб-ресурсов на основе списков-ограничений для различных групп пользователей сети.

Настройка данной службы осуществляется на следующем уровне конфигурации:

[edit service wcf]

На данном уровне конфигурации осуществляются настройки групп пользователей, политик, журнала службы, MITM и сетевые настройки.

18.2. Глобальный MITM и фильтр mitm

По умолчанию MITM в службе wcf отключён. Настройка MITM осуществляется двумя способами:

  • через глобальный MITM;

  • через фильтр mitm, применяемый к группе.

18.2.1. Настройки глобального MITM

Настройки глобального MITM позволяют включить MITM, выбрать политику проверки сертификатов сайтов на ПАК “Фортикс”, указать сертификаты и ключи, используемые для MITM, указать сайты-исключения, для которых MITM не применяется.

Настройка глобального MITM осуществляется на следующем уровне конфигурации:

[edit service wcf mitm]

На данном уровне конфигурации доступны следующие настройки:

  • enable – включить глобальный MITM;

  • root-path <file-path> – задать путь к файлу, содержащему корневой сертификат, устанавливаемый как корневой в цепочке доверия MITM-сертификата, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • root-key-path <file-path> – задать путь к файлу, содержащему закрытый ключ корневого сертификата, указанного в настройке root-path, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • cert-keypair <file-path> – задать путь к файлу, содержащему ключевую пару, используемую в сертификатах сайтов при включённом MITM, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • no-mitm <file-path> – задать путь к файлу(ам) со списком(ами) сайтов/IP-адресов, для которых MITM не применяется, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf, формат определения списков приведён в пункте 18.4.1 Правила составления списков;

  • process-site-cert check on|off – включить/отключить проверку сертификатов сайта;

  • process-site-cert check-exception <file-path> – задать путь к файлу с IP-адресами/сайтами, для которых проверка сертификатов сайта не осуществляется, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf.

Если для настройки process-site-cert check указан параметр off, настройка process-site-cert check-exception игнорируется.

18.2.2. Настройки фильтра mitm

Настройки фильтра mitm позволяют включить MITM для определённых групп (см. ниже) и указать сайты, для которых применяется MITM.

Настройка фильтра mitm осуществляется на следующем уровне конфигурации:

[edit service wcf filter mitm <filter-mitm-name>]

где <filter-mitm> – строка длиной от 1 до 128 символов.

На данном уровне конфигурации доступны следующие настройки:

  • enable – включить фильтр mitm;

  • grey-ssl-list <address>|<host-name> – указать сайт/IP-адрес, для которого применяется MITM, где <address> – IPv4-адрес в формате A.B.C.D[/mask] или IPv6-адрес в формате A:B:...:H[/mask], <host-name> – доменное имя сайта, возможно определение нескольких настроек данного уровня конфигурации.

При определении настройки grey-ssl-list и ассоциации фильтра с политикой (при условии, что глобальный MITM и фильтр mitm включены), MITM применяется исключительно к сайтам/IP-адресам, содержащимся в наборе пользователей группы политики.

18.3. Служба wcf как ICAP-клиент

В ПАК “Фортикс” возможно использование службы wcf как ICAP-клиента посредством режима icap. Настройка данного режима осуществляется на следующем уровне конфигурации:

[edit service wcf icap]

На данном уровне конфигурации доступны следующие настройки:

  • enable – включить режим icap;

  • url <url-address> – задать URL-адрес ICAP-сервера RESPMODE, где <url-address> – строка в формате icap://<IP>:<PORT><optional path>;

  • max-content-scan-size <max-content-scan-size-value> – задать максимальный размер файлов/страниц, которые могут быть обработаны с помощью ICAP, где <max-content-scan-size-value> – число килобайт от 0 до 4294967295, по умолчанию – 2048.

Пример конфигурации службы wcf в режиме icap:

# edit service wcf
# edit icap
# set enable
# set url "icap://192.168.56.1:1344/respmod"
# diff
service {
  wcf {
+   icap {
+     enable
+     url icap://192.168.56.1:1344/respmod
+   }
  }
}

Если размер загружаемого на ICAP-сервер файла/страницы превышает значение аргумента настройки max-content-scan-size, он обрезается с конца до размера, указанного в настройке. Параметр настройки max-content-scan-size влияет на быстродействие, так как содержимое файла/страницы заданного размера хранится в RAM ПАК “Фортикс”.

ICAP-сервер получает оригинальный IP-адрес клиента (заголовок X-Client-IP) и имя группы, к которой принадлежит клиент (заголовок X-Client-Username).

При блокировке URL-адреса или файла ICAP-сервер отправляет причину блокировки со следующими заголовками:

  • X-Infection-Found – время, когда файл был заражен;

  • X-Response-Info – время, когда файл/URL-адрес был заблокирован из-за локальных правил ICAP-сервера.

Если данные HTTP-заголовки не отправлены ICAP-сервером, в качестве причины блокировки указывается “Unknown”.

18.4. Фильтры

В службе wcf фильтром (filter) является набор списков для фильтрации или изменения содержимого HTTP-запросов. Каждый фильтр имеет имя, по которому он может быть ассоциирован с политикой (policy, см. подраздел 18.6 Политики). С одной политикой возможно ассоциировать несколько фильтров (исключение: фильтр mitm). В этом случае содержимое фильтров объединяется и обрабатывается в том порядке, в котором они были ассоциированы с политикой в конфигурации. Подробная механика работы фильтров описана в подразделе 18.7 Алгоритм анализа http(s) трафика службой.

18.4.1. Правила составления списков

Предусмотрены следующие типы списков:

  1. список IP-адресов/сайтов/URL-адресов;

  2. список фраз;

  3. список регулярных выражений.

18.4.1.1. Списки IP-адресов/сайтов/URL-адресов

Списки IP-адресов/сайтов/URL-адресов формируются в файлах, где каждый из IP-адресов/сайтов/URL-адресов записывается с новой строки без указания протокола (HTTP(S)).

Для группировки IP-адресов/сайтов/URL-адресов в категорию перед группируемым набором применяется конструкция:

#listcategory: "Category"

Пример группировки IP-адресов/сайтов/URL-адресов в категории:

#listcategory: "Category 1"
website1.com
website2.ru
we.b.ru/s/i/te
22.11.22.11
#listcategory: "Category 2"
website3.ru
website4.ru
web.com/site

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

При формировании и объединении списков необходимо учитывать механизм их объединения (см. пункт 18.4.8 Объединение списков).

18.4.1.2. Списки фраз

Списки фраз формируются в файлах, где каждая фраза записывается с новой строки и ограничивается <>. Категории формируются аналогично категориям в подпункте 18.4.1.1 Списки IP-адресов/сайтов/URL-адресов.

Поиск совпадений осуществляется без учёта регистра, все знаки препинания заменяются на пробелы (или игнорируются во избежание двойных пробелов).

При указании нескольких фраз в одной строке через запятую проверяется наличие всех фраз из набора на странице/в запросе.

Для применения фильтров относительно количества вхождений искомых фраз на странице/в запросе используются накопленный и предельный веса фразы: при обнаружении фразы на странице/в запросе её накопленный вес увеличивается (отрицательное значение веса уменьшает накопленный вес); если накопленный вес превышает предельный вес фразы, страница/запрос с данной фразой блокируется. Вес указывается в <> после фразы. В случае указания нескольких фраз через запятую вес применяется ко всему набору фраз, при этом учитывается вхождение всего набора (см. пункты 18.4.5 Фильтр phrase и 18.4.6 Фильтр search).

Пример составления списков фраз без весов:

#listcategory: "Category 1"
<phrase 1>
<phrase with white space in the end >
<phrase 2>,<phrase 3>

#listcategory: "Category 2"
<phrase 4>
< Phrase with white space in the begin>

Пример составления списков фраз с весами:

#listcategory: "Category 1"
<phrase 1><80>
<phrase with white space in the end ><100>
<phrase 2><-100>
<phrase 3>,<phrase 4>,<phrase 5><200>

#listcategory: "Category 2"
<phrase 6><40>
< Phrase with white space in the begin><100>
<phrase 7><-80>

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

При формировании и объединении списков необходимо учитывать механизм их объединения (см. пункт 18.4.8 Объединение списков).

18.4.1.3. Списки регулярных выражений

Списки регулярных выражений формируются в файлах, где каждое регулярное выражение начинается с новой строки и указывается в «». Категории формируются аналогично категориям в подпункте 18.4.1.1 Списки IP-адресов/сайтов/URL-адресов.

При работе с регулярными выражениями применяется синтаксис PCRE-библиотеки (и синтаксис yang, в случае указания регулярного выражения непосредственно в конфигурации: например, для экранирования PCRE с помощью символа \ необходимо данный символ дополнительно экранировать для yang (тоже с помощью \)). При этом символ / экранировать необязательно.

Например:

"google.com/search\\\?client=firefox"

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

<regex-1>-><regex-2>

где

  • <regex-1> – заменяемое регулярное выражение;

  • <regex-2> – регулярное выражение-замена.

Пример применения регулярного выражения для отключения safe-поиска в поиске по картинкам google:

"(^http://[0-9a-z]+\\.google\\.[a-z]+[-/%.0-9a-z]*/images\\\?)(.*)(&?)(safe=[^&]*)->\\1\\2\\3"

18.4.2. Фильтр url

Фильтр url позволяет осуществлять различные действия над запросами в зависимости от хоста запроса. Настройка данного фильтра осуществляется на следующем уровне конфигурации:

[edit service wcf filter url <filter-url-name>]

где <filter-url-name> – строка длиной от 1 до 128 символов.

На данном уровне конфигурации доступны следующие настройки:

  • banned-list <file-path> – указать файл со списком IP-адресов/URL-адресов/сайтов, которые блокируются без последующих проверок, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • exception-list <file-path> – указать файл со списком IP-адресов/URL-адресов/сайтов, которые пропускаются без последующих проверок, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • grey-list <file-path> – указать файл со списком IP-адресов/URL-адресов/сайтов, содержимое при запросе к которым проверяется, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • semi-exception-list <file-path> – указать файл со списком IP-адресов/сайтов, которые пропускаются без последующих проверок, если они не содержатся в списке настройки banned-list, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf.

Пример конфигурации фильтра url:

# edit service wcf
# edit filter url test
# set banned-list ban1
# set banned-list /system/wcf/ban2
# set exception-list good_sites
# diff
service {
  wcf {
    filter {
+      url test {
+        exception-list good_sites
+        banned-list /system/wcf/ban2
+        banned-list ban1
+      }
    }
  }
}

18.4.3. Фильтр ban

Фильтр ban позволяет блокировать HTTP-запросы на основе регулярных выражений. Настройка данного фильтра осуществляется на следующем уровне конфигурации:

[edit service wcf filter ban <filter-ban-name>]

где <filter-ban-name> – строка длиной от 1 до 128 символов.

Для применения фильтра ban применяется команда:

# set <http-method> <regex-name> regex <regex-value>

где

  • <http-method> – один из методов HTTP-запроса: delete, get, head, options, patch, post, put, trace;

  • <regex-name> – строка длиной от 1 до 128 символов;

  • <regex-value> – строка в кавычках, допустимо указание одного слова без кавычек.

Пример настройки фильтра ban:

[edit]
# set service wcf filter ban test get 1 regex "google.com/search\\\?client=firefox"

Метод connect в фильтре не предусмотрен. Для фильтрации с помощью данного метода применима настройка banned-list фильтра url.

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

Регулярные выражения в данном фильтре указываются без протокола HTTP(S).

18.4.4. Фильтр file-type

Фильтр file-type позволяет блокировать скачивание файлов с определённым расширением или MIME-типом. Настройка данного фильтра осуществляется на следующем уровне конфигурации:

[edit service wcf filter file-type <filter-file-type-name>]

где <filter-file-type-name> – строка длиной от 1 до 128 символов.

На данном уровне конфигурации доступны следующие настройки:

  • banned-extensions <extension> – указать расширение, файлы с которым блокируются, где <extension> – строка с точкой в начале, возможно определение нескольких настроек данного уровня конфигурации;

  • banned-mime <mime> – указать MIME-тип, файлы с которым блокируются, где <mime> – MIME-тип, указанный полностью (регулярные выражения, например text/*, не поддерживаются);

  • trusted-download-sites <site> – указать URL-адрес/сайт/IP-адрес, для которого блокировка согласно параметрам настроек banned-mime/banned-extensions не применяется, где <site> – URL-адрес/сайт/IP-адрес, возможно определение нескольких настроек данного уровня конфигурации.

Пример конфигурации фильтра file-type:

# edit service wcf
# edit filter file-type test
# set banned-extensions .rar
# set banned-extensions .zip
# set banned-mime image/webp
# set trusted-download-sites web.com
# diff
service {
  wcf {
    filter {
+      file-type test {
+        banned-extensions .rar
+        banned-extensions .zip
+        banned-mime image/webp
+        trusted-download-sites web.com
+      }
    }
  }
}

18.4.5. Фильтр phrase

Фильтр phrase позволяет блокировать страницы по их содержимому. Настройка фильтра осуществляется на следующем уровне конфигурации:

[edit service wcf filter phrase <filter-phrase-name>]

где <filter-phrase-name> – строка длиной от 1 до 128 символов.

На данном уровне конфигурации доступны следующие настройки:

  • banned-list <file-path> – указать файл со списком фраз (без веса), наличие которых приведёт к блокировке страницы, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • exception-list <file-path> – указать файл со списком фраз-исключений (без веса) для списка из параметра настройки banned-list (т.е. если страница блокируется по настройке banned-list, но в ней содержится фраза из списка данной настройки, блокировка к странице не применяется), где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • weighted-list <file-path> – указать файл со списком фраз (c весами), где <file-path> – полное имя файла или имя файла относительно директории /system/wcf.

При ассоциации с одной политикой фильтров, содержащих списки фраз с весами и без, или при указании в фильтре списков, содержащих фразы с весами и без, необходимо учитывать, что фразы из списка настройки banned-list имеют положительный “бесконечный” вес, а фразы из списка настройки exception-list – отрицательный “бесконечный” вес (но больший, чем вес фраз из списка в banned-list). Таким образом, при единовременном использовании списков с весами и без, списки с весами приоритетнее.

18.4.7. Фильтр modify

Фильтр modify позволяет изменять запрос клиента в режиме реального времени. Настройка данного фильтра осуществляется на следующем уровне конфигурации:

[edit service wcf filter modify <filter-modify-name>]

где <filter-modify-name> – строка длиной от 1 до 128 символов.

На данном уровне конфигурации доступны следующие настройки:

  • redirect <regex-name> regex <regex-value> – перенаправить клиента на другой URL-адрес согласно регулярному выражению, где <regex-name> – строка длиной от 1 до 128 символов, <regex-value> – регулярное выражение, в котором после “->” указан URL-адрес;

  • regex-replace <regex-name> regex <regex-value> – изменить HTTP-запрос с помощью регулярного выражения, где <regex-name> – строка длиной от 1 до 128 символов, <regex-value> – регулярное выражение.

Пример конфигурации фильтра modify:

# edit service wcf
# edit filter modify test
# set redirect sport regex "championat.com->sports.ru"
# set regex-replace 1 "(^http://[0-9a-z]+\\.google\\.[a-z]+[-/%.0-9a-z]*/images\\?)(.*)(&?)(safe=[^&]*)->\\1\\2\\3"

18.4.8. Объединение списков

Объединение списков осуществляется в порядке их определения в конфигурации. Пример 1 конфигурации объединения двух списков:

service {
  wcf {
    filter {
       url test {
         banned-list ban2
         banned-list ban1
    }

Содержимое списков примера 1:

ban1:

#listcategory: "Category 1"
web1.com
web2.com

ban2:

site1.com
site2.ru

Содержимое объединения данных списков в том порядке, в котором они объявлены в конфигурации:

ban2 + ban1:

site1.com
site2.ru
#listcategory: "Category 1"
web1.com
web2.com

При данном порядке объединения списков сайты site1.com и site2.ru категории не имеют.

Пример 2 конфигурации объединения списков:

service {
  wcf {
    filter {
       url test {
         banned-list ban1
         banned-list ban2
    }

Содержимое объединения списков примера 2 в том порядке, в котором они объявлены в конфигурации:

ban1 + ban2:

#listcategory: "Category 1"
web1.com
web2.com
site1.com
site2.ru

При данном порядке объединения списков сайты site1.com и site2.ru имеют категорию “Category 1”.

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

18.5. Фильтр main-filter

Настройка фильтра main-filter осуществляется на следующем уровне конфигурации:

[edit service wcf main-filter]

Настройки данного уровня конфигурации повторяют настройки уровня конфигурации фильтра url со следующими дополнениями:

  • banned-regex-list <file-path> – указать файл со списком регулярных выражений для сайтов/URL-адресов/IP-адресов, которые блокируются без последующих проверок, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf;

  • exception-regex-list <file-path> – указать файл со списком регулярных выражений для сайтов/URL-адресов/IP-адресов, которые пропускаются без последующих проверок, где <file-path> – полное имя файла или имя файла относительно директории /system/wcf.

Назначение данного фильтра см. в подразделе 18.7 Алгоритм анализа http(s) трафика службой.

18.6. Политики

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

18.6.1. Настройки группы

Настройка группы осуществляется на следующем уровне конфигурации:

[edit service wcf policy group <group-name>]

где <group-name> – строка длиной от 1 до 128 символов.

По умолчанию предусмотрена группа “default”, особенности настройки и назначение которой описаны в пункте 18.6.3 Группа default.

На данном уровне конфигурации доступны следующие настройки:

  • ban <filter-ban-name> – указать имя(ена) фильтра(ов) ban, который(ые) должен(ы) применятся к пользователям группы, где <filter-ban-name> – имя существующего фильтра ban;

  • modify <filter-modify-name> – указать имя(ена) фильтра(ов) modify, который(ые) должен(ы) применятся к пользователям группы, где <filter-modify-name> – имя существующего фильтра modify;

  • file-type <filter-file-type-name> – указать имя(ена) фильтра(ов) file-type, который(ые) должен(ы) применятся к пользователям группы, где <filter-file-type-name> – имя существующего фильтра file-type;

  • search <filter-search-name> – указать имя(ена) фильтра(ов) search, который(ые) должен(ы) применятся к пользователям группы, где <filter-search-name> – имя существующего фильтра search;

  • phrase <filter-phrase-name> – указать имя(ена) фильтра(ов) phrase, который(ые) должен(ы) применятся к пользователям группы, где <filter-phrase-name> – имя существующего фильтра phrase;

  • url <filter-url-name> – указать имя(ена) фильтра(ов) url, который(ые) должен(ы) применятся к пользователям группы, где <filter-url-name> – имя существующего фильтра url;

  • mitm <filter-mitm-name> – указать имя фильтра mitm, который должен применятся к пользователям группы, где <filter-mitm-name> – имя существующего фильтра mitm;

  • search-weight-limit <search-weight-limit-value> – указать предельный вес поискового запроса, при достижении которого запрос блокируется, где <search-weight-limit-value> – число от 0 до 65535, по умолчанию – 50;

  • phrase-weight-limit <phrase-weight-limit-value> – указать предельный вес содержимого страницы, при достижении которого страница блокируется, где <weight> – число от 0 до 65535, по умолчанию – 150;

  • user ip <ip> – указать IP-адрес, подсеть или диапазон IP-адресов, который принадлежит группе, где <ip> – IPv4-адрес в формате A.B.C.D/[mask] или диапазон IP-адресов в формате A.B.C.D-A.B.C.D, возможно определение нескольких настроек данного уровня конфигурации.

В аргументе настройки user ip указываются уникальные адреса/подсети/диапазоны адресов для каждой группы.

18.6.2. Аутентификация пользователей

Аутентификация пользователей осуществляется по их IP-адресам при присоединении к службе (как автоматически с помощью прозрачного режима, так и напрямую): пользователь ассоциируется с группой, которая содержит его IP-адрес, или с группой default, если ни одна группа не содержит его IP-адрес.

18.6.3. Группа default

По умолчанию с группой default ассоциируется только фильтр main-filter. Для ассоциации других фильтров с данной группой применяются настройки следующего уровня конфигурации:

[edit service wcf policy group default]

Настройки данного уровня конфигурации повторяют настройки уровня конфигурации группы, при этом настройка user ip неприменима.

18.7. Алгоритм анализа http(s) трафика службой

Схема работы службы wcf с входящим трафиком (от пользователя) представлена на рис. 18.1.

Схема работы службы wcf с входящим трафиком (от сайта) представлена на рис. 18.2.

Далее по тексту в данном подразделе HTTP-трафик и HTTPS-трафик (с включённым MITM для сайта, на который посылается запрос, у данного пользователя) называются открытым трафиком, остальные – закрытым; все фильтры url данного пользователя обозначаются одним фильтром local.

Схема работы службы wcf с входящим трафиком от пользователя

Рис. 18.1 Схема работы службы wcf с входящим трафиком от пользователя

Схема работы службы wcf с входящим трафиком от сайта

Рис. 18.2 Схема работы службы wcf с входящим трафиком от сайта

Алгоритм прохождения трафика с вышеуказанными обозначениями:

  1. Если хост запроса содержится в списке semi-exception фильтра local, этапы 2, 3 пропускаются.

  2. Если хост запроса содержится в списке exception фильтра local, запрос проходит без последующей проверки.

  3. Если хост запроса содержится в списке grey фильтра local, страница запроса загружается и проверяется её содержимое (этапы 5 и 11).

  4. Если хост запроса содержится в списке banned фильтра local, запрос блокируется без последующей проверки.

  5. Запрос проверяется по фильтру(ам) ban, ассоциированным(и) с данным пользователем.

  6. Если хост запроса содержится в списке semi-exception фильтра main-filter, этапы 7, 8, 9 пропускаются.

  7. Если хост запроса содержится в списке exception фильтра main-filter, запрос проходит без последующей проверки.

  8. Если хост запроса содержится в списке exception-regex фильтра main-filter, страница запроса проходит без последующей проверки.

  9. Если хост запроса содержится в списке grey фильтра main-filter, страница запроса загружается и проверяется её содержимое (этап 12).

  10. Если хост запроса содержится в списке banned фильтра main-filter, запрос блокируется без последующей проверки.

  11. Если хост запроса содержится в списке banned-regex фильтра main-filter, страница запроса блокируется без последующей проверки.

  12. Страница запроса загружается, и проверяется её содержимое фильтрами phrase, file-type, search, modify.

Этап, фильтр или содержимое фильтра которого не задан, пропускается.

URL-адреса из списков фильтров local и main-filter в случае закрытого трафика службе не видны.

Фильтры ban, file-type, search, modify, phrase применяются исключительно для открытого трафика.

18.8. Настройки журнала службы

Настройка журнала службы осуществляется на следующем уровне конфигурации:

[edit service wcf log]

На данном уровне конфигурации доступны следующие настройки:

  • format <format-value> – задать формат журнала, где <format-value> – число от 1 до 8, по умолчанию – 7;

  • verbosity <verbosity-value> – указать, какие сообщения от службы записываются в журнал, где <verbosity-value> – число от 0 до 3, по умолчанию – 1;

  • level info|warning – указать уровень события, по умолчанию – info.

Для передачи информации об инцидентах на удалённый сервер указываются значение warning аргумента настройки level и значение 1 аргумента настройки verbosity в комбинации с настройками service journal.

18.9. Настройка портов и адресов службы

По умолчанию служба ожидает трафик на всех IP-адресах и на порте 8080 на данных адресах.

Настройка портов и адресов службы осуществляется на следующем уровне конфигурации:

[edit service wcf listen]

На данном уровне конфигурации доступны следующие настройки:

  • http-port <port-number> – указать порт(ы) для приёма HTTP(S)-трафика, где <port-number> – число от 1 до 65535;

  • thttps-port <port> – указать порт(ы) для приёма HTTP(S)-трафика при работе в прозрачном режиме, где <port-number> – число от 1 до 65535;

  • ipv4 address <address> – указать IP-адрес(а), на которых служба ожидает трафик, где <address> – IPv4-адрес в формате A.B.C.D.

Все IP-адреса и порты, указанные в аргументах данных настроек, должны быть доступны.

Пример конфигурации портов и адресов службы:

# edit service wcf
# edit listen
# set http-port 8082
# set thttps-port 8143
# set ipv4 address 192.168.56.101
# diff
service {
  wcf {
+    listen {
+      ipv4 {
+        address 192.168.56.101
+      }
+      http-port 8082
+      thttps-port 8143
+    }
  }
}

Служба wcf работает как в прозрачном, так и в непрозрачном режиме. Для настройки прозрачного режима HTTP(S)-порты перенаправляются на порты, на которых принимает трафик служба wcf. Для HTTP-трафика (80 порт) возможно перенаправление трафика на порт, указанный в настройке http-port <port-number>, для HTTPS-трафика рекомендуется перенаправление на порт, указанный в настройке thttps-port <port-number>.

18.10. Настройка страницы блокировки

Для изменения страницы, демонстрируемой пользователям при их попытке получения доступа к нежелательной информации, в директорию /system/wcf/ban-page/ помещается файл template.html, содержащий необходимую для демонстрации пользователям страницу (размер файла не может превышать 1 МБ).

На данной странице возможно указание некоторых переменных окружения, полученных из причины блокировки:

  • URL – полный URL-адрес, который пользователь пытался получить;

  • REASONGIVEN – краткая причина блокировки;

  • REASONLOGGED – причина блокировки с детализацией;

  • FILTERGROUP – имя группы пользователя;

  • IP – IP-адрес пользователя;

  • CATEGORIES – категория заблокированного ресурса (#listcategory).