Wazuh
Installation de Wazuh SIEM
Nous avons utilisé une VM Debian 12 avec 3 Cores CPU et 8Gb de RAM.
Ou avec l’installation automatisée:
curl -sO https://packages.wazuh.com/4.11/wazuh-install.sh && sudo bash ./wazuh-install.sh -a
1. Installation de l’Indexeur
1.1 Configuration initiale
Il faut tout d’abord télécharger le fichier de configuration et le script d’installation officiel.
curl -sO https://packages.wazuh.com/4.11/wazuh-install.sh
curl -sO https://packages.wazuh.com/4.11/config.yml
Dans le fichier de config on modifie l’addresse IP du serveur
indexer:
- name: node-1
ip: "192.168.150.130"
server:
- name: wazuh-1
ip: "192.168.150.130"
dashboard:
- name: dashboard
ip: "192.168.150.130"
Dans notre cas c’est la même VM qui fera l’indexeur, le serveur et le dashboard.
# On créer le fichier de conf a partir de la configuration ecrite juste avant.
bash wazuh-install.sh --generate-config-files
1.2 Installation de l’indexeur
curl -sO https://packages.wazuh.com/4.11/wazuh-install.sh
Enfin on installe le noeud à l’aide du script
bash wazuh-install.sh --wazuh-indexer node-1
Puis on démarre le cluster bien qu’il n’y ait qu’un seul noeud ici:
bash wazuh-install.sh --start-cluster
1.3 On teste
Pour finir, il nous faut les id/mdp admin que l’on obtient comme suit:
tar -axf wazuh-install-files.tar wazuh-install-files/wazuh-passwords.txt -O | grep -P "\'admin\'" -A 1
On vérifie que tout fonctionne:
curl -k -u admin:7+fuE37FehACvKeLDFaCZHqY7X0t2bOi https://192.168.150.130:9200
2. Installation du Serveur
curl -sO https://packages.wazuh.com/4.11/wazuh-install.sh
# Installation du serveur wazuh en précisent le noeud
bash wazuh-install.sh --wazuh-server wazuh-1
Le conseil de Wazuh est de désactiver les mises à jour pour éviter d’éventuels problèmes de compatibilité à l’avenir.
sed -i "s/^deb /#deb /" /etc/apt/sources.list.d/wazuh.list
apt update
3. Installation du Dashboard
3.1 Téléchargement des paquets
curl -sO https://packages.wazuh.com/4.11/wazuh-install.sh
# Installation du dashboard
bash wazuh-install.sh --wazuh-dashboard dashboard
Si tous ce passe bien il n’y a pas d’erreur et l’identifiant et le mot de passe sont affiché, ce sont les même que l’installation de l’indexeur. →
4. Installation des Agents
4.1 Téléchargements
# Pour Windows
https://packages.wazuh.com/4.x/windows/wazuh-agent-4.11.0-1.msi
# Pour Linux
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
apt-get update
4.2 Installation
Pour Windows:
# Ouvrir un invite de commande (CMD)
cd Downloads
# On démarre avec l'addresse IP du serveur WAZUH
wazuh-agent-4.11.0-1.msi /q WAZUH_MANAGER="192.168.150.130"
#On démarre l'agent
NET START Wazuh
Pour Linux
apt-get install wazuh-agent
WAZUH_MANAGER="192.168.150.130"
# Il faut aussi modifier le fichier
/var/ossec/etc/ossec.conf
<ossec_config>
<client>
<server>
<address>192.168.150.130</address>
<port>1514</port>
...
# Puis redemarrer les services
systemctl daemon-reload
systemctl enable wazuh-agent
systemctl start wazuh-agent
5. Utilisation
5.1 Endpoint (EDR)
Par defaut Wazuh se comporte comme un EDR et remonte les CVE, et d’aures alertes de manière individuelle. Il suffit juste d’ajouter les filtres
5.2 Network (IDS)
Nous pouvons utiliser Snort
SSL Wazuh
Génération des certificats sur la PKI
cd /etc/pki/private/
openssl genrsa -out wazuh.key 2048
cd /etc/pki/newcerts/
sudo openssl req -new -key ../private/wazuh.key -out wazuh.csr -subj "/C=FR/ST=PACA/L=Avignon/O=ITWay/OU=IT/CN=wazuh.itway.corp" -addext "subjectAltName=DNS:wazuh.itway.corp"
nano ext-wazuh.cnf -> subjectAltName=DNS:wazuh.itway.corp
sudo openssl x509 -req -in wazuh.csr -CA ../certs/ca.crt -CAkey ../private/ca.key -CAcreateserial -out wazuh.crt -days 365 -extfile ext-wazuh.cnf
# On vérifie que le certificat est bien signé par l'autorité de cert
openssl verify -CAfile /etc/pki/certs/ca.crt wazuh.crt
Il faut garder le root-ca.crt de wazuh donner les bonne permissions au wazuh-dashboard
chown -R root:wazuh-dashboard ./itway-certs/
nano /etc/wazuh-dashboard/opensearch_dashboards.yml
server.host: 0.0.0.0
opensearch.hosts: https://127.0.0.1:9200
server.port: 443
opensearch.ssl.verificationMode: certificate
# opensearch.username: kibanaserver
# opensearch.password: kibanaserver
opensearch.requestHeadersAllowlist: ["securitytenant","Authorization"]
opensearch_security.multitenancy.enabled: false
opensearch_security.readonly_mode.roles: ["kibana_read_only"]
server.ssl.enabled: true
#server.ssl.key: "/etc/wazuh-dashboard/certs/wazuh-dashboard-key.pem"
#server.ssl.certificate: "/etc/wazuh-dashboard/certs/wazuh-dashboard.pem"
opensearch.ssl.certificateAuthorities: ["/etc/wazuh-dashboard/certs/root-ca.pem"]
uiSettings.overrides.defaultRoute: /app/wz-home
opensearch_security.cookie.secure: true
server.ssl.key: "/etc/wazuh-dashboard/itway-certs/wazuh.key"
server.ssl.certificate: "/etc/wazuh-dashboard/itway-certs/wazuh.crt"
#opensearch.ssl.certificateAuthorities: ["./itway-certs/ca.crt"]
l’autorité est déja déployé par GPO il suffit donc juste de rafraichir la page.