Wazuh Wazuh

Intégrez Wazuh pour récupérer vos agents, leurs logiciels, leurs vulnérabilités, leurs alertes et leurs résultats de conformité

Le connecteur Wazuh récupère dans OverView les postes surveillés par vos agents Wazuh : leur système d'exploitation, leur matériel (processeur, mémoire, numéro de série) et leurs interfaces réseau, leurs logiciels installés (paquets, mises à jour Windows, services, extensions de navigateur), leurs ports ouverts et comptes utilisateurs locaux, les vulnérabilités détectées sur ceux-ci (CVE, sévérité, score CVSS), les alertes de sécurité qu'ils ont levées et, en option, les résultats de leurs scans de conformité SCA (benchmarks CIS). Les comptes de la console Wazuh et leurs rôles sont également importés.

Un déploiement Wazuh expose deux API et le connecteur lit les deux : la Wazuh server API porte le registre des agents, les groupes et les résultats de conformité, tandis que le Wazuh indexer porte l'inventaire des postes, les vulnérabilités et les alertes. Chacune a sa propre URL et son propre compte.

Prérequis

  • Wazuh 4.13 ou ultérieur, première version qui stocke l'inventaire des postes dans le Wazuh indexer
  • Un compte administrateur du Wazuh dashboard, pour créer les deux comptes en lecture seule ci-dessous
  • Un accès réseau depuis OverView vers :
    • la Wazuh server API (HTTPS, port 55000 par défaut)
    • le Wazuh indexer (HTTPS, port 9200 par défaut)

Sur une installation sur un seul serveur (all-in-one), le Wazuh indexer n'écoute généralement que sur 127.0.0.1 : il refuse alors les connexions venant de l'extérieur du serveur, même lorsque le pare-feu autorise le port 9200. L'adresse d'écoute est le paramètre network.host de /etc/wazuh-indexer/opensearch.yml : indiquez-y une adresse joignable par OverView, puis redémarrez le service wazuh-indexer.

Informations à fournir dans OverView

ChampDescription
Server API URL*URL de la Wazuh server API, avec son port (ex. https://wazuh.example.com:55000)
Server API Username*Nom de l'utilisateur de la Wazuh server API créé pour OverView
Server API Password*Mot de passe de cet utilisateur
Indexer URL*URL du Wazuh indexer, avec son port (ex. https://wazuh.example.com:9200). Sur une installation sur un seul serveur, c'est le même hôte que la server API, sur un autre port.
Indexer Username*Nom de l'utilisateur interne du Wazuh indexer créé pour OverView
Indexer Password*Mot de passe de cet utilisateur

Paramètres

Ces paramètres sont optionnels. Laissez-les à leur valeur par défaut sauf raison particulière.

ParamètreDescriptionDéfaut
Verify SSL CertificateVérifie les certificats TLS présentés par la Wazuh server API et le Wazuh indexer. Ne le désactivez que s'ils utilisent encore les certificats auto-signés fournis par Wazuh.Activé
Agent GroupN'importe que les agents de ce groupe Wazuh. Laissez vide pour importer tous les agents.Vide
Agent StatusN'importe que les agents dans les états sélectionnés : Active, Disconnected, Pending, Never connected. Laissez vide pour importer tous les agents. Ce sont les agents déconnectés qui révèlent les postes qui ne remontent plus.Vide
Include AlertsImporte les alertes de sécurité Wazuh de chaque agent.Activé
Alert Retrieval DaysNombre de jours d'alertes récupérés à chaque import.7
Minimum Alert LevelN'importe que les alertes dont le niveau de règle Wazuh (0 à 15) est au moins égal à cette valeur. Les niveaux 12 et plus sont ceux de haute importance. L'abaisser peut importer des millions d'alertes sur un déploiement chargé.12
Include ComplianceImporte les résultats de conformité SCA (benchmarks CIS) avec leurs contrôles. Ils sont récupérés agent par agent, ce qui allonge nettement l'import sur les grands parcs.Désactivé

Un déploiement dont les règles produisent beaucoup de faux positifs aux niveaux 12 et plus peut renvoyer des centaines de milliers d'alertes par semaine. Relever Minimum Alert Level réduit ce volume ; désactiver Include Alerts laisse l'inventaire et les vulnérabilités intacts.

Procédure

La procédure crée deux comptes en lecture seule : un utilisateur de la Wazuh server API et un utilisateur interne du Wazuh indexer. Ce sont deux comptes distincts, stockés dans deux bases d'utilisateurs distinctes ; ils peuvent partager le même nom et le même mot de passe.

Créer la politique et le rôle de la server API

Le rôle intégré readonly couvre les agents, les groupes, la conformité et l'inventaire, mais pas les comptes de la console Wazuh. Un rôle dédié ajoute cet accès en lecture.

  1. Dans le Wazuh dashboard, ouvrez le menu (☰) et allez dans Server management > Security.
  2. Dans l'onglet Policies, cliquez sur Create policy et renseignez :
    • Policy name : overview-security-read
    • Action : security:read
    • Resource : user:id, role:id et policy:id, chacune avec l'identifiant de ressource *
    • Select an effect : Allow
  3. Cliquez sur Create policy.
  4. Dans l'onglet Roles, cliquez sur Create Role, saisissez le Role name overview-security-read, sélectionnez la politique overview-security-read dans Policies, puis cliquez sur Create role.

Créer l'utilisateur de la server API

  1. Dans Server management > Security, créez un utilisateur (ex. overview-connector) avec un mot de passe.
  2. Attribuez-lui deux rôles : readonly et overview-security-read.

Reportez le nom d'utilisateur et le mot de passe dans Server API Username et Server API Password dans OverView.

Créer l'utilisateur de l'indexer

  1. Ouvrez le menu (☰) et allez dans Indexer management > Security > Internal users.
  2. Cliquez sur Create internal user, saisissez un nom d'utilisateur (ex. overview-connector) et un mot de passe, puis cliquez sur Create.
  3. Allez dans Indexer management > Security > Roles et cliquez sur Create role :
    • Name : overview-read
    • Cluster permissions : cluster_composite_ops_ro
    • Index : *
    • Index permissions : read
  4. Cliquez sur Create.
  5. Dans l'onglet Mapped users du nouveau rôle, cliquez sur Manage mapping, ajoutez l'utilisateur interne créé à l'étape 2, puis cliquez sur Map.

Sans l'étape 5, l'utilisateur s'authentifie mais ne peut lire aucun index : l'import échoue alors sur les vulnérabilités et l'inventaire.

Reportez le nom d'utilisateur et le mot de passe dans Indexer Username et Indexer Password dans OverView.

Configurer le connecteur dans OverView

  1. Dans OverView, allez à Data Sources Settings > Sources.
  2. Sélectionnez Wazuh et cliquez sur Configure.
  3. Renseignez les deux URL et les deux comptes, ajustez les paramètres si besoin, puis cliquez sur Save Configuration.

Permissions requises

Le connecteur ne fait que lire des données ; il ne modifie jamais la configuration, les agents ni les règles de Wazuh.

Données récupéréesAPIPrérequis
Agents et informations du managerServer API, GET /agents, GET /manager/infoagent:read, manager:read (rôle readonly)
Groupes d'agentsServer API, GET /groupsgroup:read (rôle readonly)
Résultats de conformité (optionnel)Server API, GET /sca/{agent_id}sca:read (rôle readonly)
Comptes et rôles de la console WazuhServer API, GET /security/users, /roles, /policiessecurity:read (rôle overview-security-read)
VulnérabilitésIndexer, wazuh-states-vulnerabilities-*read sur l'index
Inventaire des postesIndexer, wazuh-states-inventory-*read sur l'index
Alertes (optionnel)Indexer, wazuh-alerts-*read sur l'index
Lectures paginéesIndexercluster_composite_ops_ro
Note

Sans security:read, la Wazuh server API ne refuse pas la requête : elle renvoie une liste vide. L'import réussit alors sans aucun compte de la console Wazuh.

Vérifier l'accès

Depuis une machine qui accède au serveur Wazuh, exécutez :

# Server API : renvoie un jeton, puis les agents visibles par l'utilisateur
TOKEN=$(curl -sk -u "SERVER_USER:SERVER_PASSWORD" -X POST \
  "https://wazuh.example.com:55000/security/user/authenticate?raw=true")
curl -sk -H "Authorization: Bearer $TOKEN" \
  "https://wazuh.example.com:55000/agents?limit=1"

# Indexer : nombre de vulnérabilités lisibles par l'utilisateur
curl -sk -u "INDEXER_USER:INDEXER_PASSWORD" \
  "https://wazuh.example.com:9200/wazuh-states-vulnerabilities-*/_count"

Les deux appels doivent renvoyer des données. Un 401 signale un mauvais nom d'utilisateur ou mot de passe ; un 403 sur l'indexer signale que le rôle n'est pas associé à l'utilisateur.

Bonnes pratiques de sécurité

  • Utilisez des comptes dédiés à l'intégration OverView plutôt que les comptes admin ou wazuh
  • Gardez les deux comptes en lecture seule : les rôles ci-dessus n'accordent aucune action d'écriture
  • Le rôle de l'indexer peut être restreint aux motifs d'index wazuh-states-vulnerabilities-*, wazuh-states-inventory-* et wazuh-alerts-* au lieu de *
  • Renouvelez les mots de passe régulièrement selon la politique de sécurité de votre organisation
Alternative : import par fichiers via DropPoint

L'accès API décrit plus haut est la méthode recommandée pour ce connecteur. Lorsqu'il n'est pas disponible (réseau cloisonné, version ou licence sans API, export déjà produit par ailleurs), OverView accepte des exports de fichiers, à déposer dans le bucket dédié à Wazuh.

Où déposer les fichiers ?

Bucket : s3://wazuh/

Exemple : s3://wazuh/export.csv

La procédure est décrite dans le guide OverView DropPoint : génération des credentials, configuration du client, puis envoi des fichiers depuis l'interface web OverView, l'AWS CLI ou un SDK. Les exemples y sont préremplis avec ce bucket lorsque vous suivez ce lien.

Documentation officielle