Перехват трафика на ICAP-сервере

Введение

Сервер, реализующий ICAP-протокол, позволяет фильтровать и изменять HTTP(S)-запросы и HTTP(S)-ответы. Например, для антивирусной защиты, мониторинга и фильтрации нежелательного трафика, запрета доступа к определённым ресурсам и т.д.

Начиная с версии 5.2, в  Staffcop Enetrprise доступен перехват следующих событий, зарегистрированных на ICAP-сервере:

  • файлы в POST-запросах;

  • посещение сайтов;

  • данные веб-форм;

  • чаты MS Teams;

  • чаты Bitrix24.

Предварительная настройка

Для перехвата трафика на ICAP-сервере понадобятся:

  • установленный и настроенный сервер Staffcop Enterprise;

  • прокси-сервер или UTM, настроенный для работы в сети пользователя;

  • ICAP-клиент, настроенный на прокси-сервере и передающий сведения на ICAP-сервер Staffcop.

Сервер Staffcop

Установка и подготовка к работе сервера Staffcop описаны в разделе Pуководство администратора.

Прокси-сервер

Работа модуля перехвата трафика на ICAP-сервере не зависит от прокси-сервера, который используется в системе заказчика.

В статье будет описана настройка перехвата трафика в случае, когда в сети используется Ideco UTM или Squid Proxy. При этом использовать можно любой другой прокси-сервер.

В отдельных статьях описаны процессы установки и настройки Ideco UTM и Squid Proxy. Установка и настройка UserGate UTM подробно описаны в пользовательской документации

При возникновении проблем с настройками других прокси, обратитесь в нашу службу технической поддержки.

Настройка ICAP-клиента

Чтобы настроить UserGate UTM в качестве ICAP-клиента

  1. В веб-интерфейсе UserGate UTM в разделе Политики безопасности - ICAP-серверы добавьте новый сервер

../_images/usergate_1.png
  1. В открывшемся окне Свойства ICAP-сервера на вкладке Общие укажите:

    • в строке Адрес сервера - IP-адрес сервера Staffcop;

    • в строке Порт - номер порта (по умолчанию - 13440);

    • активируйте опцию Пропускать при ошибках;

    • заполните значения в полях Название, Описание, Максимальный размер пакета и Период проверки доступности….

    ../_images/usergate_2.png
  2. На вкладке Данные заполните поля Reqmod путь и Pespmod путь. Полный путь имеет вид icap://ip_address:13440/staffcop. Поскольку IP-адрес и номер порта указаны на вкладке Общие, в строках Reqmod путь и Pespmod путь укажите только /staffcop.

    ../_images/usergate_3.png
  3. В разделе Политик безопасности - ICAP-правила создайте новое правило, по которому будет работать ICAP-сервер.

  4. В окне создания нового правила на вкладке Общие укажите его название, описание и добавьте действие Переслать и игнорировать.

    ../_images/usergate_4.png
  5. На вкладке ICAP-серверы выберите только что созданный ICAP-сервер.

    ../_images/usergate_5.png
  6. На вкладке HTTP-метод укажите методы GET и POST.

    ../_images/usergate_6.png
  7. На вкладке Сервисы в окне выбора добавляемых сервисов выберите только протокол HTTP.

    ../_images/usergate_7.png
  8. Сохраните созданное правило и в окне ICAP-серверы дождитесь зелёного значка установления связи с сервером.

    ../_images/usergate_8.png
  9. Готово! ICAP-сервер настроен и работает.

Теперь настройте правила расшифровки трафика на сервере:

  1. В разделе Политики безпасности - Инспектирование SSL создайте новое правило:

    • в строке Действие укажите Расшифровать;

    • Профиль SSL оставьте без изменений;

    • включите Запись в журнал правил по желанию.

    ../_images/usergate_9.png
  2. На вкладке Сервисы добавьте только HTTPS.

    ../_images/usergate_10.png
  3. Настройте правила расшифровки трафика под свои требования согласно официальной документации UserGate UTM

  4. В настройках межсетевого экрана разрешите трафик между локальной и внешней сетью. Также, если в локальной сети есть серверы с веб-интерфейсом (например, Staffcop) и пользователи, которые к нему подключаются, укажите в назначении саму локальную сеть.

    ../_images/usergate_11.png
  5. Включите NAT из локальной сети во внешнюю для корректной работы прокси-сервера.

    ../_images/usergate_12.png

Готово! Настройка UserGate UTM завершена.

Перехват ICAP

Чтобы настроить перехват на сервере Staffcop, обновите список доступных пакетов и установите дополнительную библиотеку:

sudo apt-get update
sudo apt-get install libatomic1

Запустите ICAP-службу сервера Staffcop и проверьте её на ошибки:

staffcop enable-icap
staffcop icap dev

Чтобы служба ICAP работала не только на IPv6, в конфигурационном файле /etc/staffcop/icap.conf в строке Port укажите IP-адрес сервера:

Port ip_address:13440

Сохраните внесённые изменения и перезапустите службы строго в указанном порядке:

systemctl daemon-reload
staffcop icap stop
staffcop icap start

Проверить, что запуск перехвата прошёл успешно можно в логе событий. Для этого в консоли сервера Staffcop выполните команду:

sudo tail -n 10 /var/log/staffcop/icap-access.log

Если перехват запущен и работает в штатном режиме, запись в логах будет примерно такой:

../_images/icap_logs.png

В веб-интерфейсе Staffcop должен появиться новый пользователь ICAP. События для этого пользователя начнут генерироваться, как только поступят первые данные с прокси-сервера.

../_images/icap_1.png

Готово! Трафик с ICAP-сервера перехватывается сервером Staffcop. Все события присваиваются пользователю ICAP.