Wazuh

Installation et utilisation de wazuh

Doc officielle wazuh

Wazuh est une plateforme de sécurité open-source qui offre des fonctionnalités de surveillance des menaces, de détection des intrusions, de gestion de la conformité et de réponse aux incidents. Elle combine des capacités d'analyse de sécurité, comme la détection des malwares, le monitoring de l'intégrité des fichiers, l'analyse des logs, et la gestion des vulnérabilités, pour fournir une visibilité complète sur l'infrastructure informatique. Wazuh est conçu pour être extensible et scalable, ce qui le rend adapté à une variété d'environnements, des petites entreprises aux grandes organisations.

Installation via package manager APT

L'installation via package manager est disponible sur le blog de FIKARA Bilal sur une verison 4.8 de wazuh

Install wazuh on debian using apt

Installation via Docker

Installation de Docker

Exécuter le script d'installation de Docker

Démarrez le service Docker

Télécharger le binaire Docker Compose

Accorder des autorisations d'exécution

Tester l'installation pour vous assurer que tout va bien

Installation de Wazuh Docker

Cloner le référentiel Wazuh

Entrez ensuite dans le single-noderépertoire pour exécuter toutes les commandes décrites ci-dessous dans ce répertoire.

Fournir un groupe de certificats pour chaque nœud de la pile afin de sécuriser la communication entre les nœuds

Les noeuds Wazuh sont Wazuh_Indexer, Wazuh_Manager et Wazuh_Dashboard . Notre install Wazuh est en single node ( tout en un )

Editer le generate-indexer-certs.yml avec un éditeur de votre choix.

Le fichier devrait ressembler à ça

Si votre système utilise un proxy, ajoutez ce qui suit au generate-indexer-certs.ymlfichier. Sinon, ignorez cette étape particulière

Sinon, ignorez cette étape particulière

Exécuter la commande suivante pour obtenir les certificats souhaités

Cela enregistre les certificats dans le config/wazuh_indexer_ssl_certsrépertoire.

Démarrer le single node à l'aide de docker compose en arrière plan

Pour savoir quand l'indexeur Wazuh est opérationnel, le conteneur du tableau de bord Wazuh utilise curlpour exécuter plusieurs requêtes vers l'API de l'indexeur Wazuh. Vous pouvez vous attendre à voir plusieurs messages de journal ou «Wazuh dashboard server is not ready yet » jusqu'au démarrage de l'indexeur Wazuh. Ensuite, le processus de configuration se poursuit normalement. Le démarrage de l'indexeur Wazuh prend environ 1 minute. Vous pouvez trouver les informations d'identification par défaut de l'indexeur Wazuh dans le fichier docker-compose.ymldu conteneur

Wazuh est maintenant accessible sur https://<ip_de_votre_serveur>

Utilise les identifiants admin

Modification et ajout d'accès

Le nom d'utilisateur et le mot de passe par défaut du tableau de bord Wazuh sont adminet SecretPassword. Chose qui sera modifiée

Il existe deux types d'utilisateurs Wazuh : Utilisateurs de l'indexeur Wazuh et Utilisateurs de l'API Wazuh : Wazuh off

Pour changer le mot de passe de ces utilisateurs Wazuh, les étapes suivantes doivent être exécutées depuis le répertoire single-node/

Utilisateurs de l'indexeur Wazuh

Les users qu'on modifiera seront admin et kibanaserver ( les users par défaut )

  • admin : nom d'utilisateur pour l'indexer ( pourra se connecter à l'interface web avec tous les droits )

  • kibanaserver : nom d'utilisateur pour le dashboard ( se connecte également à l'interface web en droit limité si restreint )

  • wazuh-wui : username pour l'api ( ne pourra pas se connecter en web )

S'il y a des users personnalisés il faut les ajouter internal_users.ymlfichier. Dans le cas contraire, l'exécution de cette procédure les supprime

Définir un nouveau hachage

Arrêter la pile de déploiement si elle est en cours d'exécution

Exécuter cette commande pour générer le hachage de votre nouveau mot de passe. Une fois le conteneur lancé, saisissez le nouveau mot de passe et appuyez sur Entrée

Copier le hachage généré

Ouvrir le config/wazuh_indexer/internal_users.yml fichier. Localisez le bloc correspondant à l'utilisateur pour lequel vous modifiez le mot de passe

Remplacez le hachage

adminutilisateur :

Remplacez la ligne hash surlignée par le hash généré précédemment à l'intérieur des ""

kibanaserverutilisateur

Définition du nouveau mot de passe

Utilisateur de l'Indexer et du Dashboard

Ouvrez le docker-compose.ymlfichier. Remplacez toutes les occurrences de l'ancien mot de passe par le nouveau

adminutilisateur :

Modifier SecretPassword par le mot de passe défini lors de la génération du hash

kibanaserverutilisateur

Modifier kibanaserver par le mot de passe défini lors de la génération du hash

Appliquer les modifications

Démarrer la pile de déploiement

Exécuter et noter le nom du premier conteneur de l'indexeur Wazuh : single-node-wazuh.indexer-1

Entrer dans le conteneur

Définir les variables suivantes

Attendre que l'indexeur Wazuh s'initialise correctement.

Ensuite, exécutez le securityadmin.shscript pour appliquer toutes les modifications.

Quitter le conteneur de l'indexeur Wazuh

Se connecter avec les nouvelles informations d'identification sur le tableau de bord Wazuh

La connexion se fera sans certificat ssl. Pour configurer le https il faut configurer Nginx

Utilisateurs de l'API Wazuh

wazuh-wui est l'utilisateur qui se connecte à l'API Wazuh par défaut. Suivez ces étapes pour modifier le mot de passe.

Le mot de passe des utilisateurs de l'API Wazuh doit comporter entre 8 et 64 caractères. Il doit contenir au moins une lettre majuscule et une lettre minuscule, un chiffre et un symbole.

Ouvrir le fichier config/wazuh_dashboard/wazuh.ymlet modifiez la valeur du passwordparamètre

Modifier le mot de passe surligné par celui souhaité

Ouvrir le docker-compose.ymlfichier. Remplacez toutes les occurrences de l'ancien mot de passe par le nouveau.

Modifier le mot de passe surligné par celui défini au dessus pour le user wazuh-wui

Par défaut, le docker-composer expose les ports suivants :

1514

Wazuh TCP

1515

Wazuh TCP

514

Wazuh UDP

55000

API Wazuh

9200

Wazuh indexeur HTTPS

443

Tableau de bord Wazuh HTTPS

Installation et configuration de Nginx

Nous opterons pour la solution qui est de modifier le port d'écoute de l'hôte du conteneur. il passera de 443 à 5601 afin que Nginx puisse écouter en 443

On stoppe le conteneur Dashboard, on le supprime des conteneurs actifs et on arrête l'instance Docker en cours

On change le port d'écoute

On ouvre le fichier docker-compose. yml et on modifie le port d'écoute sur notre hôte :

On redémarre notre instance docker compose

On passe maintenant à la configuration de notre nginx

Dissocier le fichier de configuration NGINX par défaut

Si certificat, le configurer au préalable et faire pointer dans le fichier de conf du site

Extraire clé du pfx :

Extraire certif

Configurer maintenant le site

On lie le fichier de configuration.

tester le site

redémarrer nginx

Connexion LDAP

Config connexion et authentification

Les commandes ici nécessitent de se connecter en bash à l'intérieur de conteneurs. les option -u 0 des commandes dcokers spécifie une connexion avec l'user root

Si des commandes ne s'effectuent pas ( introuvable par exemple ) installez les.

Lancez un apt-get update puis installez les paquets dont vous avez besoin

Le ldap se configure dans le wazuh indexer

Config du fichier conf config.yml


Attribuer les droits du certificats au user wazuh-indexer


Configurer le fichier de config comme suit :

Regarder la doc officielle Opensearch pour plus d'info : Opensearch

La Doc officielle Wazuh n'explique pas la conf de LDAP avec Docker, mais elle est très utile. Les chemins de répertoires diffèrent lors d'une install docker : Wazuh DOC LDAP

Exécuter le securityadmin.sh pour charger les modifs apporter au config.yml

Map role à wazuh-dashboard

Config role d'admin

Configurer le fichier roles_mapping.yml pour mapper le rôle (CN) que nous avons dans notre serveur LDAP au rôle du Wazuh_indexer approprié. Dans notre cas, nous mappons les utilisateurs du groupe Sys dans notre AD au all_accessrôle sur le wazuh indexer.

Ne modifiez que la ligne all_acces. Si vous avez besoin de toucher aux autres blocs connaissez en les conséquences

Exécuter le securityadminscript pour charger les modifications de configuration apportées dans le roles_mapping.ymlfichier

Vérifier la valeur de run_asdans le /usr/share/wazuh-dashboard/data/wazuh/config/wazuh.ymlfichier de configuration et passez le à false s'il ne l'est pas

Pour cette vérification il faut changer de conteneur :

La conf ressemble à ca. Le mdp est celui du user pour l'API défini au plus haut ( wazuh-wui )

Sortir du conteneur et le relancer

Se connecter maintenant avec un user de Sys.

Last updated

Was this helpful?