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
-
В веб-интерфейсе продукта перейдите в раздел "Система" > "Основные настройки" > "Журналирование" > "Сервер веб-интерфейса" и установите флажок "Журналировать действия пользователей в syslog". Затем сохраните и примените конфигурацию (см. рисунок 1).
Рисунок 1 -- Журналирование действий пользователей
-
Далее отредактируйте файл
/etc/rsyslog.conf
, добавив в него следующую строку (в качестве разделителя междуlocal0.*
и/var/log/messages
необходимо использовать символ табуляции):local0.* /var/log/messages
-
Затем, для отправки событий в Платформу Радар, на узле с ролью "Сервер управления" создайте файл конфигурации:
/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. -
После корректировки настроек rsyslog перезагрузите службу, выполнив следующую команду:
# systemctl restart rsyslog
Настройка журналирования веб-запросов пользователей прокси (skvt-wizor)
Для выбора формата записи журналов перейдите в раздел настроек “Система” > “Расширенные настройки” > “Фильтрация и кэширование трафика”, затем выберите секцию "Фильтрация и анализ трафика пользователей" > "Форматы записи в syslog" (см. рисунок 2).
Рисунок 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-трафика" и "Обратный прокси-сервер":
-
Создайте файл
/var/log/skvt.log
:# touch /var/log/skvt.log
-
Ограничьте доступ к файлу:
# 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