В этой статье рассказывается, как установить сервер Wazuh на CentOS 8.
Бесплатный инструмент Host & Endpoint Security: Wazuh
Сервер Wazuh – это бесплатный инструмент мониторинга безопасности с открытым исходным кодом, который использует elasticsearch (ELK).
Он используется для отслеживания событий безопасности на уровне приложений и ОС.
Таким образом, вы можете получить информацию об обнаружении угроз, реагировании на инциденты и мониторинге целостности.
В этом руководстве мы развернем Wazuh на одной ноде CentOS с установленным ELK на том же хосте.
altprobe: сборщик событий для Suricata NIDS, Wazuh HIDS, Modsecurity WAF, Elastic Metricbeat
Вы можете использовать Wazuh в следующих целях:
- Анализ безопасности
- Анализ логов
- Обнаружение уязвимостей
- Безопасность контейнеров
- Облачная безопасность
Следующие шаги помогут нам настроить сервер Wazuh на CentOS 8.
Шаг 1 – Установка Wazuh Server на CentOS 8
Убедитесь, что ваша система обновлена:
sudo dnf update -y
Добавим ключ Wazuh GPG
sudo rpm --import https://packages.wazuh.com/key/GPG-KEY-WAZUH
Добавим репо Wazuh
sudo tee /etc/yum.repos.d/wazuh.repo <<EOF
[wazuh]
gpgcheck=1
gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH
enabled=1
name=EL-Wazuh
baseurl=https://packages.wazuh.com/4.x/yum/
protect=1
EOF
Установим сервер Wazuh:
sudo dnf -y install wazuh-manager
Запустим сервер Wazuh
sudo systemctl enable --now wazuh-manager
Отключите обновления, чтобы избежать проблем с контролем версий.
sudo sed -i "s/^enabled=1/enabled=0/" /etc/yum.repos.d/wazuh.repo
Шаг 2 – Установим Elastic Stack на CentOS 8
Мы продолжим установку стека ELK на нашем экземпляре CentOS 8.
Elasticsearch, Logstash и Kibana составляют стек ELK, который используется для анализа логов.
Эти инструменты работают в сотрудничестве с сервером Wazuh, обеспечивая анализ инцидентов безопасности и управление ими.
Установим Java на CentOS 8
Elasticsearch – это приложение Java, это означает, что нам необходимо установить JDK.
sudo dnf install java-11-openjdk-devel
Подтвердите, что он у вас установлен
openjdk version "11.0.5" 2019-10-15 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.5+10-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.5+10-LTS, mixed mode, sharing)
Установим Elasticsearch на CentOS 8
Добавим ключ GPG Elasticsearch
sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Добавим файл репо Elasticsearch
sudo tee /etc/yum.repos.d/elasticsearch.repo << EOF
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
Установим Elasticsearch:
sudo dnf install elasticsearch
Запустим и включим Elasticsearch
sudo systemctl enable elasticsearch.service --now
Установим Kibana на CentOS 8
Kibana используется как дашборд в ELK.
sudo dnf -y install kibana
Настроим KIbana – файл конфигурации kibana – /etc/kibana/kibana.yml.
Настройте хост сервера так, чтобы он указывал на приложение localhost elasticsearch.
$ sudo vim /etc/kibana/kibana.yml
# Kibana is served by a back end server. This setting specifies the port to use.
# server.port: 5601
server.port: 5601
...
# To allow connections from remote users, set this parameter to a non-loopback address.
#server.host: "localhost"
server.host: "localhost"
# The URL for the elasticsearch instance
elasticsearch.hosts: [http://localhost:9200]
Запустите и включите сервис:
sudo systemctl enable --now kibana
Установим Filebeat на CentOS 8
Filebeat – это отправитель логов, который используется для отправки в Easticsearch из указанных каталогов логов.
sudo yum install filebeat
Настроим Filebeat в CentOS 8
Настройте Flebeat для работы с Wazuh.
Сделайте резервную копию существующего файла конфигурации Filebeat, затем замените его загруженным предварительно настроенным файлом.
sudo mv /etc/filebeat/filebeat.yml{,.bak}
sudo curl -so /etc/filebeat/filebeat.yml https://raw.githubusercontent.com/wazuh/wazuh/v4.0.3/extensions/filebeat/7.x/filebeat.yml
Отредактируйте загруженный файл в соответствии с вашими настройками
$ sudo vim /etc/filebeat/filebeat.yml
#output.elasticsearch.hosts: ['http://YOUR_ELASTIC_SERVER_IP:9200']
output.elasticsearch.hosts: ['http://localhost:9200']
Также добавьте следующие строки в файл конфигурации, если вы хотите указать путь, из которого filebeat должен получать логи.
logging.level: info
logging.to_files: true
logging.files:
path: /var/log/filebeat
name: filebeat
keepfiles: 7
permissions: 0644
Проверьте вывод, как показано ниже:
$ sudo filebeat test output
elasticsearch: http://localhost:9200...
parse url... OK
connection...
parse host... OK
dns lookup... OK
addresses: 192.168.1.83
dial up... OK
TLS... WARN secure connection disabled
talk to server... OK
version: 7.9.3
Шаг 3 – Установите модуль Filebeat Wazuh
Скачайте и установите модуль wazuh для Filebeat, используя следующие команды:
wget https://packages.wazuh.com/4.x/filebeat/wazuh-filebeat-0.1.tar.gz -P /tmp/
sudo mkdir /usr/share/filebeat/module/wazuh
sudo tar xzf /tmp/wazuh-filebeat-0.1.tar.gz -C /usr/share/filebeat/module/wazuh/ --strip-components=1
Загрузите шаблон alerts index Wazuh Elasticsearch и настройте его.
$ sudo curl -so /etc/filebeat/wazuh-template.json https://raw.githubusercontent.com/wazuh/wazuh/v4.0.3/extensions/elasticsearch/7.x/wazuh-template.json
$ sudo filebeat setup --path.config /etc/filebeat --path.home /usr/share/filebeat --path.data /var/lib/filebeat --index-management -E setup.template.json.enabled=false
Перезапустим Filebeat
sudo systemctl restart filebeat
Шаг 4 – Установите плагин Kibana для Wazuh
Установим права владения каталогами /usr/share/kibana/optimize/ и /usr/share/kibana/plugins пользователю kibana.
sudo chown -R kibana: /usr/share/kibana/{optimize,plugins}
Установите плагин Kibana для wazuh.
$ cd /usr/share/kibana
$ sudo -u kibana bin/kibana-plugin install https://packages.wazuh.com/4.x/ui/kibana/wazuh_kibana-4.0.3_7.9.3-1.zip
По завершении проверьте установленные плагины
$ sudo -u kibana /usr/share/kibana/bin/kibana-plugin list
wazuh@4.0.3
Перезапустите требуемую службу, чтобы изменения вступили в силу.
sudo systemctl restart kibana
sudo systemctl restart elasticsearch
sudo systemctl restart wazuh-manager
Шаг 5 – Настройте Firewalld
Настройте брандмауэр, чтобы разрешить доступ к Kibana с удаленного хоста.
Вам также может потребоваться разрешить Elasticsearch, если у вас установлены Kibana и Elasticsearch на разных хостах.
sudo firewall-cmd --zone=public --add-port=5601/tcp --permanent
sudo firewall-cmd --reload
Теперь вы можете получить доступ к своему интерфейсу кибаны, используя адрес http://server-IP: 5601
Далее вы сможете контролировать свои системы с помощью сервера Wazuh, настроив агентов на своих клиентских системах.
см. также: