From 09ec8a80bd9f869fe2a1c1630ade629902ef7bb8 Mon Sep 17 00:00:00 2001 From: phil Date: Sun, 2 Feb 2025 11:33:01 +0100 Subject: [PATCH] wazuh + doc --- README.md | 4 ++-- wazuh/README.md | 27 ++++++++++++--------------- wazuh/Vagrantfile | 7 +++---- wazuh/provision/setup-wazuh-cli.yml | 25 +++++++++++++++++++++++++ wazuh/provision/setup-wazuh.yml | 14 ++++++++++++++ 5 files changed, 56 insertions(+), 21 deletions(-) create mode 100644 wazuh/provision/setup-wazuh-cli.yml create mode 100644 wazuh/provision/setup-wazuh.yml diff --git a/README.md b/README.md index 7a04b44..4960edd 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # vagrant -le 2024-12-14 21h30 - ps +le 2025-02-02 11h30 - ps Ce dépôt héberge des **Vagrantfile** dont : * **dns** : Vagrantfile pour 2 serveurs **Bind9** (1 maitre et un esclave), tests **goss** chainés @@ -26,7 +26,7 @@ Ce dépôt héberge des **Vagrantfile** dont : * **netbox** : Vagrantfile pour Netbox dockerisée * **rundeck** : Vagrantfile + playbook pour installation avec Mariadb * **samba-ad-dc** : Vagrantfile + playbook pour **Samba 4.17 ad-dc** sur **Debian 12 Bookworm** - + * **wazuh** : Vagrantfile + playbook pour serveur **wazuh** 4.10 et client Debian * **wp-lb** : Wordpress web1 et web2, lb HaProxy, nfs, db Mariadb - Vagrantfile + playbooks * **zabbix** : Vagrantfile pour VM Debian 12 **zabbix7** Srv et VM Debian 12 **web1** apache, zabbix agent2 diff --git a/wazuh/README.md b/wazuh/README.md index a01218b..e79bc45 100644 --- a/wazuh/README.md +++ b/wazuh/README.md @@ -8,29 +8,26 @@ Cette `Vagrantfile` permet d'installer : La Vagrantfile utilise les playbooks ansible suivants : * **provision/setup-wazuh.yml** qui: + * coupe le service **unattended-upgrades** * recupère le script **wazuh-install.sh** et le lance * **provision/setup-wazuh-cli.yml** qui: * installe les dépots pour wazuh - * installe les paquets **wazuh-agent**, - * installe les dépots ISC pour stork - * installe le paquet **stork-agent** - * genére les fichiers de configuration pour chacun des services - * relance les services - * enregistre (`stork-agent register`) le serveur auprès du serveur stork - -## Les services et ports - * serveur **stork** : - * service **stork-server:8080** - * serveur **kea1** et **kea2** : - * service **isc-kea-dhcp4-server:8000** (utilisé par la HA) - * service **kea-ctrl-agent:8001** - * service **isc-stork-agent:8080** + * installe le paquet **wazuh-agent** en enregistrant la machine **wazuh-cli** + * relance le service **wazuh-agent** ## Utilisation de la Vagrantfile + +L'installation du serveur **wazuh** est assez longue ( ~ 15 minutes ). ````shell vagrant up wazuh - vagrant up wazuh-cli + vagrant up wazuhcli +```` + +Le mot de passe du compte **admin** se trouve dans le fichier `wazuh-install-files/wazuh-passwords.txt`, lui-même contenu dans le ficher `wazuh-install-files.tar` à extraire avec la commande : + +````shell + sudo tar xvf wazuh-install-file.tar ```` On peut alors se connecter au serveur **wazuh** avec un navigateur : http://adresse (admin/mdp) diff --git a/wazuh/Vagrantfile b/wazuh/Vagrantfile index ffc6143..4cbabe2 100644 --- a/wazuh/Vagrantfile +++ b/wazuh/Vagrantfile @@ -39,18 +39,17 @@ Vagrant.configure("2") do |config| end # wazuh-cli. - config.vm.define "wazucli" do |wazucli| + config.vm.define "wazuhcli" do |wazucli| wazucli.vm.hostname = "wazuh-cli" wazucli.vm.network :private_network, ip: "192.168.56.2" wazucli.vm.provider :virtualbox do |v| v.customize ["modifyvm", :id, "--memory", 1024] end wazucli.vm.provision "shell", - inline: "sudo apt-get update ; sudo apt-get install -y vim curl wgeti gnupg" + inline: "timedatectl set-timezone Europe/Paris ; apt-get update ; apt-get install -y vim curl wget gnupg" wazucli.vm.provision "ansible" do |ansible| ansible.extra_vars = { - srv_name: "wazu-cli", - srv_ip: "192.168.56.2", + srv_ip: "192.168.56.5", } ansible.playbook = "provision/setup-wazuh-cli.yml" end diff --git a/wazuh/provision/setup-wazuh-cli.yml b/wazuh/provision/setup-wazuh-cli.yml new file mode 100644 index 0000000..2a3d978 --- /dev/null +++ b/wazuh/provision/setup-wazuh-cli.yml @@ -0,0 +1,25 @@ +--- +- hosts: all + become: true + tasks: + - name: Recup clefs depot + ansible.builtin.shell: 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 + + - name: Ajoute depot + ansible.builtin.shell: 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 + + - name: Update apt + ansible.builtin.apt: + update_cache: yes + + - name: Installation wazuh-agent et liaison wazuh-server + ansible.builtin.shell: "WAZUH_MANAGER={{ srv_ip }} apt-get install wazuh-agent" + + - name: Relance wazuh-agent + ansible.builtin.systemd: + name: wazuh-agent + state: restarted + enabled: true + daemon_reload: true + + diff --git a/wazuh/provision/setup-wazuh.yml b/wazuh/provision/setup-wazuh.yml new file mode 100644 index 0000000..71b04b2 --- /dev/null +++ b/wazuh/provision/setup-wazuh.yml @@ -0,0 +1,14 @@ +--- +- hosts: all + become: true + tasks: + - name: Arrete service unattended-upgrades + ansible.builtin.service: + name: unattended-upgrades + state: stopped + + - name: Recup script install et lance wazuh-installl.sh en mode AIO - 15 min + ansible.builtin.shell: + cmd: curl -s -O https://packages.wazuh.com/4.10/wazuh-install.sh && bash wazuh-install.sh -a + +