Установка Wazuh SIEM: Управление информацией и событиями безопасности
Установка Wazuh через Docker, развёртывание агентов, анализ логов, мониторинг целостности файлов, сканирование уязвимостей, аудит соответствия и дашборд.
Содержание
Установка Wazuh SIEM: Управление информацией и событиями безопасности
Wazuh — это платформа безопасности с открытым исходным кодом. Она предоставляет комплексные функции безопасности, включая SIEM, IDS, сканирование уязвимостей, мониторинг целостности файлов и аудит соответствия в единой платформе.
Что такое Wazuh?
Основные компоненты и возможности:
- Wazuh Server: Центральный сервер управления и анализа
- Wazuh Indexer: Индексация и поиск логов на базе OpenSearch
- Wazuh Dashboard: Веб-интерфейс на базе Kibana
- Wazuh Agent: Лёгкий агент на конечных точках
- Анализ логов: Сбор и анализ логов в реальном времени
- FIM: Мониторинг целостности файлов
- Обнаружение уязвимостей: Сканирование уязвимостей
- Соответствие: Аудит PCI DSS, GDPR, HIPAA
- Active Response: Автоматический ответ на угрозы
Установка через Docker
git clone https://github.com/wazuh/wazuh-docker.git -b v4.9.0
cd wazuh-docker/single-node
docker compose -f generate-indexer-certs.yml run --rm generator
docker compose up -d
Доступ к дашборду:
https://IP_СЕРВЕРА:443
Пользователь: admin
Пароль: SecretPassword
Установка агента
Linux Agent
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/wazuh.gpg --import && chmod 644 /usr/share/keyrings/wazuh.gpg
echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list
sudo apt update
sudo WAZUH_MANAGER='IP_СЕРВЕРА_WAZUH' apt install wazuh-agent -y
sudo systemctl daemon-reload
sudo systemctl enable --now wazuh-agent
Windows Agent
Invoke-WebRequest -Uri https://packages.wazuh.com/4.x/windows/wazuh-agent-4.9.0-1.msi -OutFile wazuh-agent.msi
msiexec.exe /i wazuh-agent.msi /q WAZUH_MANAGER='IP_СЕРВЕРА_WAZUH'
NET START WazuhSvc
Управление агентами
sudo /var/ossec/bin/agent_control -l
sudo /var/ossec/bin/agent_control -i AGENT_ID
Анализ логов
Сбор Syslog
<ossec_config>
<remote>
<connection>syslog</connection>
<port>514</port>
<protocol>udp</protocol>
<allowed-ips>192.168.1.0/24</allowed-ips>
</remote>
</ossec_config>
Мониторинг пользовательских лог-файлов
<ossec_config>
<localfile>
<log_format>syslog</log_format>
<location>/var/log/myapp/app.log</location>
</localfile>
<localfile>
<log_format>json</log_format>
<location>/var/log/myapp/access.json</location>
</localfile>
</ossec_config>
Пользовательские декодеры и правила
<decoder name="myapp">
<program_name>myapp</program_name>
</decoder>
<decoder name="myapp-auth">
<parent>myapp</parent>
<regex>Authentication (\S+) for user (\S+) from (\S+)</regex>
<order>status, user, srcip</order>
</decoder>
<group name="myapp,">
<rule id="100001" level="5">
<decoded_as>myapp-auth</decoded_as>
<match>Authentication failed</match>
<description>MyApp: Неудачная попытка входа</description>
</rule>
<rule id="100002" level="10" frequency="5" timeframe="120">
<if_matched_sid>100001</if_matched_sid>
<same_source_ip />
<description>MyApp: Обнаружена атака brute force</description>
</rule>
</group>
Мониторинг целостности файлов (FIM)
<ossec_config>
<syscheck>
<disabled>no</disabled>
<frequency>43200</frequency>
<scan_on_start>yes</scan_on_start>
<directories check_all="yes" realtime="yes">/etc,/usr/bin,/usr/sbin</directories>
<directories check_all="yes" realtime="yes">/var/www/html</directories>
<ignore>/etc/mtab</ignore>
<ignore type="sregex">.log$|.swp$</ignore>
</syscheck>
</ossec_config>
Обнаружение уязвимостей
<ossec_config>
<vulnerability-detector>
<enabled>yes</enabled>
<interval>5m</interval>
<run_on_start>yes</run_on_start>
<provider name="canonical">
<enabled>yes</enabled>
<os>focal</os>
<os>jammy</os>
</provider>
<provider name="nvd">
<enabled>yes</enabled>
<update_interval>1h</update_interval>
</provider>
</vulnerability-detector>
</ossec_config>
Active Response
<ossec_config>
<active-response>
<command>firewall-drop</command>
<location>local</location>
<rules_id>100002</rules_id>
<timeout>3600</timeout>
</active-response>
</ossec_config>
Аудит соответствия
Wazuh обеспечивает аудит соответствия различным стандартам безопасности: PCI DSS, GDPR, HIPAA, NIST 800-53, TSC SOC2.
Wazuh API
TOKEN=$(curl -k -X POST 'https://localhost:55000/security/user/authenticate' \
-u wazuh-wui:MyS3cr37P450r.*- | jq -r '.data.token')
curl -k -X GET "https://localhost:55000/agents?pretty=true" \
-H "Authorization: Bearer $TOKEN"
Обновление и резервное копирование
# Обновление
cd wazuh-docker/single-node
docker compose down
docker compose pull
docker compose up -d
# Резервное копирование
docker exec wazuh-manager tar -czf /tmp/wazuh-backup.tar.gz /var/ossec/etc /var/ossec/logs
docker cp wazuh-manager:/tmp/wazuh-backup.tar.gz ./wazuh-backup-$(date +%Y%m%d).tar.gz
Установив Wazuh SIEM на серверах REXE, вы сможете выполнять комплексный мониторинг безопасности, анализ логов, сканирование уязвимостей и аудит соответствия. Агентная архитектура позволяет управлять всеми серверами из централизованного дашборда.
Связанные статьи
Инструменты мониторинга серверов: Grafana, Prometheus и Netdata
Настройка стека Prometheus + Grafana, Netdata, node_exporter, правила оповещений, создание дашбордов и мониторинг метрик сервера.
Настройка прокси-сервера: руководство по Squid и HAProxy
Squid forward proxy, HAProxy балансировщик нагрузки, SSL-терминация, правила ACL, кэширование, проверки состояния и высокая доступность.
Установка Nginx Proxy Manager: Reverse Proxy с веб-интерфейсом
Установка Nginx Proxy Manager через Docker, автоматическое обновление SSL-сертификатов, настройка proxy host, списки доступа, редиректы, потоки и пользовательские locations.