0% ont trouvé ce document utile (0 vote)
189 vues22 pages

Lab Cybersécurité

Le document décrit un devoir pratique sur la sécurité et le contrôle du trafic réseau, incluant la simulation d'une architecture de monitoring avec Wazuh, Nagios et Squid/Squidguard. Il détaille les étapes d'installation et de configuration de Wazuh et Nagios sur un serveur Ubuntu, ainsi que le déploiement d'agents sur des machines Windows et Kali Linux. En raison de limitations de ressources, l'architecture complète n'a pas pu être déployée, mais les étapes nécessaires sont expliquées en détail.

Transféré par

Priscille GANKIA
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
189 vues22 pages

Lab Cybersécurité

Le document décrit un devoir pratique sur la sécurité et le contrôle du trafic réseau, incluant la simulation d'une architecture de monitoring avec Wazuh, Nagios et Squid/Squidguard. Il détaille les étapes d'installation et de configuration de Wazuh et Nagios sur un serveur Ubuntu, ainsi que le déploiement d'agents sur des machines Windows et Kali Linux. En raison de limitations de ressources, l'architecture complète n'a pas pu être déployée, mais les étapes nécessaires sont expliquées en détail.

Transféré par

Priscille GANKIA
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Devoir pratique de Sécurité et contrôle du traffic réseau (Supervision)

Lab cybersécurité :
KIBOULA GANKIA
Priscille Theophilia

Objectif : Simuler l’architecture de monitoring sur Gns3 avec un serveur wazuh, Nagios et
proxy Squid Squidguard.

Préréquis :
- Un routeur
- Un switch
- Un serveur Ubuntu-server 24.04 (faisant office de serveur Wazuh, Serveur Nagios et
Server Proxy Squidguard)
- Une machine virtuelle Kali-linux
- Un pc Windows (par défaut de performance, j’ai utilisé ma propre machine hôte
windows)

Malheureusement suite à des problèmes de manque de performances et de capacité des


ressources de ma machine, nous ne pouvons pas aller jusqu’à déployer l’architecture au
complet sur gns3 et faire fonctionner à la fois Gns3 et les machines virtuelles. Toutefois,
nous expliquerons les différentes étapes pour aboutir à cette architecture.

Partie 1 : Installation et configuration de Wazuh


a) Adressage des machines :
Nous avons commencé par nous assurer que les trois machines communiquent bel et bien et
sont configurés dans le même réseau [Link]/24.

- Machine windows :
- Machine Kali-linux :

- Ubuntu-Server :

Comme nous le savons, les principaux composants d’une infrastructure Wazuh sont :

• L’indexer : il stocke et indexe (répertorie) les alertes générées et évènements


remontés. C’est également lui qui permet la réalisation de recherche sur les données et
les capacités d’analyse et corrélation. L’indexer utilise principalement le format JSON
pour le stockage clé-valeur, facilitant ainsi la recherche et l'analyse des données.
• Le Wazuh server (ou manager) : Il traite en temps réel les données reçues des agents,
en utilisant des décodeurs et des règles pour détecter les indicateurs de compromission
(IoC). Il gère également les communications, configurations et mises à jour des agents.
• Le dashboard : c'est l'interface web qui permet la visualisation en temps réel des
données et leur analyse, ainsi que de nombreuses autres fonctionnalités comme les
alertes et les rapports.
• Les agents : ce sont les services Wazuh installés et exécutés sur
chaque endpoint (postes de travail, serveurs, machines virtuelles). Ils collectent les
activités locales et envoient la télémétrie et les alertes au manager pour analyse,
corrélation et visualisation.

Pour des soucis de performance des ressources, j’ai opté pour un deploiement de wazuh via
docker en single-node. C’est-à-dire avec les trois rôles sur un même système ce qui rendra le
déploiement très rapide et très simple, parfait pour ce lab.

b) Deploiement de wazuh en mode single-node via Docker sur ubuntu server :

Dans mon cas, j’ai utilisé la version 4.11.0 de wazuh pour le déploiement :

git clone [Link] -b v4.11.0

Il faut ensuite se rendre dans le dossier wazuh-docker/single-node/, dans lequel nous trouverons
le fichier [Link]. C’est celui qui permet le déploiement des différents composants
de Wazuh (indexer, manager, dashboard), chacun dans un conteneur dédié. C’est dans ce fichier
que sont stockés les éléments de configuration relatifs à l’exposition des ports, aux relations
entre les conteneurs, aux volumes permettant le stockage de fichiers persistants sur le système
hôte, etc:

De plus, il nous faut générer les certificats SSL/TLS nécessaires au bon fonctionnement et à la
confidentialité des échanges entre les différents composants de Wazuh, ce que l’on peut faire à
l’aide de la commande suivante :

docker compose -f [Link] up

Cette commande a pour effet de créer différents certificats dans le dossier suivant :
Maintenant que nos certificats SSL/TLS sont prêts, nous pouvons créer et démarrer nos 3
conteneurs Wazuh à l’aide du fichier de configuration principal :

docker compose -f [Link] up

Dans les logs qui seront affichés dans votre terminal (si vous n’avez pas utilisé l’option -d),
vous pourrez constater l’activité des trois conteneurs différents.

Quelques secondes après l’exécution de cette commande, vous pourrez saisir (dans un autre
terminal) la commande suivante pour vérifier l’état des conteneurs démarrés :

docker ps -a

Voici la vue et les statuts qui sont attendus :

À présent, nous pouvons nous rendre sur l’URL suivante via un navigateur
: [Link]
Après avoir accepté d’utiliser une connexion non sécurisée (certificat auto-signé), vous vous
retrouverez avec la page de login de Wazuh. Il suffit de rentrer les identifiants à utiliser
: admin:SecretPassword et voilà le tout est joué !

Et voilà, notre Wazuh est installé !Nous pouvons à présent naviguer dans l’interface de gestion
et de configuration.

c) Ajouter des agents Wazuh Windows et Linux

- Déploiement de l’agent Wazuh sous Windows :

Passons à présent au déploiement d’un agent Wazuh sur notre machine Windows. Voici la
procédure à suivre.

Dans le dashboard, rendez-vous dans Agents Management > Summary, vous aurez alors accès
à une page contenant un bouton Deploy new agent.

Puis sur cette nouvelle page, il vous faudra saisir l’adresse IP du Wazuh Server : [Link],
dans notre cas.

Optionnellement, vous pourrez également saisir le nom que vous souhaitez donner à l’agent
lorsqu’il apparaitra dans l’interface.

Ensuite nous devons copier/coller la ligne de commande PowerShell affichée en bas de la page,
dans un terminal lancé en tant qu’administrateur. Elle se chargera de :
• Télécharger l’agent Wazuh depuis la source officielle et dans la bonne version ;
• Lancer l’installateur avec en paramètre le serveur Wazuh à contacter.

N.B : Si vous faite une installation manuelle de l’agent, Il est nécessaire de demander une clé
d’enregistrement au serveur à l’aide de la commande suivante (à exécuter via un terminal
PowerShell) :

&"C:\Program Files (x86)\ossec-agent\[Link]" -m <IP Wazuh Server>

Cette commande permet à l’agent Wazuh de s’enregistrer auprès du serveur Wazuh et ensuite
il faudra aller exécuter le programme win32ui qui se situe dans le dossier C:\Program Files
(x86)\ossec-agent. Dans la fenêtre qui s’ouvre, la clé d’authentification est déjà saisie. Il nous
reste à renseigner l’adresse IP du Wazuh Server et cliquer sur Save :

Dernière étape, démarrer le serveur Wazuh avec la ligne de commande suivante depuis un
terminal PowerShell sur windows lancé en tant qu’administrateur et faire l’ensemble des
vérifications pour s’assurer que notre agent Wazuh est déployé et bien actif via quelques
commandes de debug :

PS C:\WINDOWS\system32> NET START WazuhSvc


Le service Wazuh a démarré.
Nous pouvons à présent aller visualiser et gérer notre agent Wazuh de windows sur le
tableau de bord. Les informations collectées apparaissent comme suit :
- Déploiement de l’agent Wazuh sous la machine virtuelle Kali-linux

Pour le déploiement sous Linux, retournons à nouveau dans Agents Management > Summary
> Deploy New Agent. Nous allons ici cliquer sur Deb amd64 dans l’encart Linux , remplir
l’adresse IP du serveur comme précédemment sous Windows, et récupérer la ligne de
commande en bas de page :
Dans un terminal de notre machine Kali linux :

Il nous reste à générer une clé qui servira pour l’authentification de notre agent et le chiffrement
des échanges :

Une fois cela fait, il nous faut démarrer le service wazuh-agent. Nous allons exécuter ces trois
lignes de commandes depuis un terminal privilégié (root) :

sudo systemctl daemon-reload


sudo systemctl enable wazuh-agent
sudo systemctl start wazuh-agent

Comme sous Windows, vous pourrez confirmer que votre agent est bien en cours d’exécution
avec les quelques commandes de debug suivantes :

# Vérifier la communication réseau entre l’agent et le Wazuh Server


# Vérifier l’activité du processus wazuh-agentd

L’esprit tranquille, nous pouvons à présent visualiser et gérer nos agents dans le
menu Agents Management > Summary :
Partie 2 : Installation et configuration de Nagios
Dans cette partie, nous allons juste résumer l’installation et la configuration globale de Nagios,
tant sur Ubuntu server que sur les clients windows et kali-linux.

d) Installer et configurer Nagios Core 4 sur Ubuntu server :

1. Prérequis pour l’installation :

- Installez tous les packages de dépendances requis.

# sudo apt install -y autoconf gcc libc6 make wget unzip apache2 php libapache2-
mod-php libgd-dev openssl libssl-dev

- Téléchargez le dernier code source de Nagios Core via le lien :

# sudo wget -O [Link]


[Link]

Extraire les fichiers de l'archive téléchargée.

- Créer un nouvel hôte virtuel Nagios pour Apache.


# sudo ./configure --with-httpd-conf = /etc/apache2/sites-enabled

- Installez un nouveau nagiosgroupe et un nouveau utilisateur : sudo make install-


groups-users

- Ajoutez l’ www-data utilisateur au groupe Nagios pour permettre à Apache de


servir le tableau de bord de surveillance Web via la commande : sudo usermod -a
-G nagios www-data

2. Installation et configuration de Nagios :

- Installez Nagios : sudo make install

- Initialisez tous les scripts de configuration requis et le démon Nagios : sudo make
install-daemoninit

- Installez le package de mode de commande Nagios pour permettre l'accès aux


commandes Web externes : sudo make install-commandmode

- Installez tous les fichiers de configuration Nagios : sudo make install-config

- Installez tous les fichiers de configuration Apache : sudo make install-webconf

- Activez le module de réécriture Apache : sudo a2enmod rewrite

- Activez le module Apache CGI : sudo a2enmod cgi

- Créez un nouvel nagiosadmin utilisateur d'authentification de base pour accéder


au tableau de bord de surveillance Web Nagios et définissez un mot de passe fort
lorsque vous y êtes invité : sudo htpasswd -c /usr/local/nagios/etc/[Link]
nagiosadmin

- Redémarrez Apache pour appliquer les modifications de configuration : sudo


systemctl restart apache2

- Installer les plugins Nagios : sudo apt install -y autoconf gcc libc6 libmcrypt-dev
make libssl-dev wget bc gawk dc build-essential snmp libnet-snmp-perl gettext

- Configurez les plugins pour qu'ils s'exécutent sur votre serveur : sudo ./configure

- Compiler les plugins : sudo make

- Installez les plugins compilés : sudo make install


- Testez la configuration de Nagios pour détecter les erreurs : sudo
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/[Link].

- N.B : la sortie « Total Warnings: 0 Total Errors: 0 » signifie qu’il n’y a pas d’erreur.
N’oublions pas de vérifer que le parefeu est actif et ne bloque pas.

- Enfin, nous pouvons accéder au tableau de bord de surveillance Web de Nagios


via le lien : http:://[Link]/nagios.
Nous nous connectons au tableau de bord Nagios en utilisant le nom d'utilisateur et le
mot de passe : nagiosadmin/nagios que nous avons définis précédemment lors de
l'installation de Nagios.
Et nous trouverons cette interface :
e) Configurer Nagios pour surveiller l'hôte Windows

Pour configurer Nagios afin de surveiller un hôte Windows distant, il suffit de configurer
NSClient++ sur la machine Windows.

- Sur la machine windows téléchargeons et installons NSClient++.

- Choisissez l'option typique

- Entrons l'adresse IP du serveur Nagios (celle de Ubuntu server) et cochons l'option


(check_nt)
- Puis, il suffit d’accéder au fichier C:\Program Files\NSClient++ et d’éditer le fichier
[Link] en activant les éléments suivant :

CheckExternalScripts = 1

CheckHelpers = 1

CheckEventLog = 1

CheckNSCP = 1

CheckDisk = 1

CheckSystem = 1

- Enfin, redémarrons le service nsclient sous Windows.

Sur le serveur Nagios, il suffit de :

- Modifier le fichier [Link] et supprimons les commentaires de Windows.


- Modifier le fichier [Link] et ajoutez la nouvelle machine hôte Windows que
nous souhaitons surveiller via la commande :

vi /usr/local/nagios/etc/objects/[Link]
redémarrons le service Nagios puis vérifiez dans notre navigateur :

Et voilà, nous voyons bien notre windows apparaître !

Passons à la configuration sur notre machine virtuelle Kali-linux.

f) Installer les plugins de Nagios sur Kali-linux. Pour cela, il suffit de :

- Installer tous les plugins Nagios requis et le paquetage NRPE. : apt install nagios-
plugins nagios-nrpe-server -y

- Activez le service NRPE : sudo systemctl enable --now nagios-nrpe-server

- Ouvrir le fichier de configuration principal de NRPE pour modifier la liste des


hôtes autorisés et des plugins exécutables : sudo nano /etc/nagios/[Link]

- Modifier la directive allowed_hosts et incluer l'adresse IP publique de notre


serveur Nagios.

- Redémarrer le service NRPE pour appliquer les changements de configuration. :


systemctl restart nagios-nrpe-server

Sur notre serveur Ubuntu Nagios, il nous faudra faire ceci :


- Créer un nouveau fichier de configuration /usr/local/nagios/etc/servers/[Link]
pour stocker les informations sur les hôtes distants : sudo nano
/usr/local/nagios/etc/servers/[Link]

- Ajoutez des configurations au fichierOuvrez le fichier de configuration principal


de Nagios pour activer la configuration de l'hôte distant.

- Ajoutez la directive suivante à la fin du fichier /usr/local/nagios/etc/[Link] :


cfg_dir=/usr/local/nagios/etc/servers

- redémarrez le service Nagios pour appliquer les changements de configuration. :


sudo systemctl restart nagios

- Testez la configuration de Nagios pour vérifier qu'il n'y a pas d'erreurs : sudo
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/[Link]

- Enfin accéder au tableau de bord de Nagios et naviguer jusqu'à la section Hosts. Nous
verrons notre machine Kali que nous venons d’ajouter.

Partie 3 : Installer et configurer Proxy Sguid et Squidguard

1. Installation et configuration du serveur proxy Squidguard sur Ubuntu Server

- Installer Squid via « apt » en utilisant cette commande : sudo apt install squid -y

- Installer Squidguard en utilisant la commande : sudo apt install squidguard

- Créer une sauvegarde de la configuration de Squid Avant d'apporter les


modifications nécessaires au fichier de configuration Squid : sudo cp
/etc/squid/[Link] /etc/squid/[Link]

- Créer un fichier pour les sites bloqués tel que « blocked_sites » : sudo nano
/etc/squid/blocked_sites
- Ajouter les sites que nous souhaitons bloquer à l'aide du serveur proxy Squid,
dans notre cas nous allons prendre l’exemple de : [Link]

- Modifier le fichier « [Link] » selon nos besoins. Dans notre cas, nous avons :

Utiliser le numéro de port par défaut du Squid (c'est-à-dire 3128)

Ensuite à la ligne contenant « INSÉREZ VOS PROPRES RÈGLES », nous avons


insérer nos propres règles :

acl blocked_sites dstdomain "/etc/squid/blocked_sites"

http_access deny blocked_sites

acl localnet src [Link]

http_access allow localnet

Les deux premières lignes bloqueront les sites ajoutés à blocked_sites, tandis que les autres
lignes autoriseront l'accès au reste des sites pour l'IP spécifiée comme « [Link] ».

- Redémarrer Squid: sudo systemctl restart squid

2. Configurer le serveur proxy sur un navigateur Web

- Sur notre machine windows :


- Sur notre machine Kali-linux : dans notre navigateur Web Firefox.
- Dernière étape : tester le serveur proxy Squidguard en visitant le site bloqué :
[Link]

- Sur la machine windows : Nous voyons là que bien que notre machine a un accès à
internet via la box wifi, l’accès à youtube ne passe pas cela génère en bas qu’il n’y a

pas de connexion internet.

- Sur la machine Kali linux : Nous voyons par là que bien que le ping passe
normalement et que la machine a accès à internet, la connexion vers Youtube ne passe
pas.
Il vous suffira juste de déployer l’architecture et les VM sur gns3.

Vous aimerez peut-être aussi