Перейти к содержанию

Proxy-серверы

Подключение источника Solar webProxy

Solar webProxy - продукт класса SWG (Secure Web Gateway) российской компании Ростелеком-Солар.

Для настройки необходимо выполнить несколько шагов (дополнительно процедура настройки описана в руководстве по установке и настройке).

Настройка журналирования службы веб-интерфейса пользователя (smap-play-server)

Данная настройка позволяет журналировать действия администраторов в веб-интерфейсе системы Solar webProxy. События по умолчанию сохраняются в файл /var/log/messages на узле с ролью "Сервер управления".

Пример событий:

Mar 29 11:59:48 swp01-main java: webserver: admin@/192.168.11.2: get filter hosts [swp01-filter.test.lab,swp01-reverse.test.lab]
Mar 29 12:00:06 swp01-main java: webserver: admin@/192.168.11.2: get list of all categories
Mar 29 12:00:06 swp01-main java: webserver: admin@/192.168.11.2: Action: 'read layer'; Layer: 'Вскрытие HTTPS'
Mar 29 12:00:10 swp01-main java: webserver: admin@/192.168.11.2: get list of all categories
Mar 29 12:00:22 swp01-main java: webserver: admin@/192.168.11.2: get list of all categories
  1. В веб-интерфейсе продукта перейдите в раздел "Система" > "Основные настройки" > "Журналирование" > "Сервер веб-интерфейса" и установите флажок "Журналировать действия пользователей в syslog". Затем сохраните и примените конфигурацию (см. рисунок 1).

    Журналирование действий пользователей

    Рисунок 1 -- Журналирование действий пользователей

  2. Далее отредактируйте файл /etc/rsyslog.conf, добавив в него следующую строку (в качестве разделителя между local0.* и /var/log/messages необходимо использовать символ табуляции):

    local0.*            /var/log/messages
    
  3. Затем, для отправки событий в Платформу Радар, на узле с ролью "Сервер управления" создайте файл конфигурации:

    /etc/rsyslog.d/03-send_skvt_master.conf

    со следующим содержимым:

    module(load="imfile" PollingInterval="10")
    input(type="imfile"
          reopenOnTruncate="on"
          File="/var/log/messages"
          )
    
    if $programname == 'java' and $msg contains 'webserver' then @@<pangeo-log-collector>:<port>
    

    здесь - это адрес лог-коллектора, а - номер порта, предназначенного для приема событий. Отправка будет выполняться по протоколу TCP.

  4. После корректировки настроек rsyslog перезагрузите службу, выполнив следующую команду:

    # systemctl restart rsyslog

Настройка журналирования веб-запросов пользователей прокси (skvt-wizor)

Для выбора формата записи журналов перейдите в раздел настроек “Система” > “Расширенные настройки” > “Фильтрация и кэширование трафика”, затем выберите секцию "Фильтрация и анализ трафика пользователей" > "Форматы записи в syslog" (см. рисунок 2).

Форматы записи в syslog

Рисунок 2 -- Форматы записи в syslog

Пример событий:

Mar 29 15:24:11 swp01-filter java: [acc-domain:TEST.LAB] [acc-groups:] [acc-ip:192.168.2.70] [acc-name:da] [acc-port:51380] [bytes-in:3147] [bytes-out:781] [flt-categories:21004] [flt-codes:11,0,0,0,0] [flt-policy:Завершение обработки политики] [flt-rules:Вскрывать HTTPS по умолчанию,Переход к слою Icap Request,Переход к слою Запрет доступа к сайтам,Переход к слою Icap Response,Переход к слою Завершение обработки политики] [flt-status:200] [flt-time:125] [req-hostname:safebrowsing.googleapis.com] [req-method:GET] [req-pathname:/v4/threatListUpdates:fetch] [req-protocol:https] [req-query:$ct=application/x-protobuf&key=AIzaSyC7jsptDS3am4tPx4r3nxis7IMjBc5Dovo&$httpMethod=POST&$req=ChUKE25hdmNsaWVudC1hdXRvLWZmb3gaJwgFEAEaGwoNCAUQBhgBIgMwMDEwARC3nRAaAhgFyU6KeiICIAIoARonCAEQARobCg0IARAGGAEiAzAwMTABENWDDBoCGAUyxlEzIgIgAigBGicIAxABGhsKDQgDEAYYASIDMDAxMAEQ8_oLGgIYBVB30G4iAiACKAEaJwgHEAEaGwoNCAcQBhgBIgMwMDEwARC81AwaAhgFLhmniCICIAIoARolCAkQARoZCg0ICRAGGAEiAzAwMTABECAaAhgF-13fQCICIAIoAQ==] [req-referer:] [req-time:2023-03-29T12:24:11.471Z] [res-datatype:application/x-protobuf] [res-ip:108.177.14.95] [traf-mode:forward] [x-virus-id:] [req-port:443] [flt-reason:]
Mar 28 11:35:59 swp01-filter java: [acc-domain:] [acc-groups:] [acc-ip:192.168.2.70] [acc-name:] [acc-port:55073] [bytes-in:0] [bytes-out:0] [flt-categories:] [flt-codes:0] [flt-policy:policy.xml] [flt-rules:] [flt-status:407] [flt-time:1] [req-hostname:secure.eicar.org] [req-method:CONNECT] [req-pathname:] [req-protocol:https] [req-query:] [req-referer:] [req-time:2023-03-28T08:35:59.399Z] [res-datatype:application/skvt-unchecked] [res-ip:] [traf-mode:forward] [x-virus-id:] [req-port:443] [flt-reason:]

Для интеграции с Платформой Радар необходимо активировать опции "Запись журнала (формат SIEM)" и "Запись преобразования IP-адреса источника (формат SIEM)".

После выбора опций сохраните и примените конфигурацию.

По умолчанию запись событий происходит в /var/log/messages, однако предпочтительно настроить журналирование в отдельный файл. Для этого выполните следующие действия на узлах с ролью "Фильтр HTTP-трафика" и "Обратный прокси-сервер":

  1. Создайте файл /var/log/skvt.log:

    # touch /var/log/skvt.log

  2. Ограничьте доступ к файлу:

    # chmod 600 /var/log/skvt.log

Отключение записи событий в /var/log/messages и запись событий в отдельный файла журнала - /var/log/skvt.log

Выполните настройку перенаправления событий в файл /var/log/skvt.log. Для этого внесите в файл /etc/rsyslog.conf соответствущую конфигурацию. Так как события будут записываться в файл /var/log/skvt.log, отключите дублирование в /var/log/messages (оператор stop):

$template rawSkvt,"%syslogtag% %msg%\n"

local0.*                                                /var/log/skvt.log; rawSkvt
& stop
*.info;mail.none;authpriv.none;cron.none                /var/log/messages

После внесенных изменений файл конфигурации сохраните, затем перезапустите службу rsyslog:

# systemctl restart rsyslog

Настройка ротации

Ротацию файла /var/log/skvt.log можно настроить с помощью logrotate. Для этого создайте файл

/etc/logrotate.d/skvt

со следующим содержимым:

/var/log/skvt.log {
    weekly
    rotate 4
    missingok
    notifempty
    nomail
    compress
    create 0600 dozor dozor
    minsize 10M
}

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

logrotate -df /etc/logrotate.d/skvt

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

logrotate -f /etc/logrotate.d/skvt

Отправка событий в Платформу Радар

Для отправки событий в Платформу Радар создайте файл конфигурации

/etc/rsyslog.d/03-send_skvt.conf

со следующим содержимым:

module(load="imfile" PollingInterval="10")
input(type="imfile"
      reopenOnTruncate="on"
      File="/var/log/skvt.log"
      Tag="skvt_wizor_log"
     )

if $syslogtag == 'skvt_wizor_log' then @@<pangeo-log-collector>:<port>
& stop

После внесенных изменений сохраните файл конфигурации, затем перезапустите службу rsyslog:

# systemctl restart rsyslog

Пример конфигурации PANGEO-LOG-COLLECTOR

tcp_input: &wp_input
  id: "wp_input"
  host: "0.0.0.0"
  port: <port>
  sock_buf_size: 0
  format: "json"
  buf_size: 16384
  log_level: "INFO"

tcp_output: &wp_output
  id: "wp_output"
  target_host: "<radar-balancer-fqdn>"
  port: 2592
  sock_buf_size: 0
  log_level: "INFO"

collectors:
  tcp_receiver:
    - <<: *wp_input

senders:
  port: 48003
  tcp:
    - <<: *wp_output

route_1: &route_1
  collector_id:
    - "wp_input"
  sender_id:
    - "wp_output"

routers:
  - <<: *route_1