Mise en place d'un système de gestion centralisé des logs et des évènements « SIEM »par Joseph DEMBELE Université Centrale - Master professionnel mention Cybersécurité 2021 |
Chapitre II : RéalisationAuditbeat est un outil de collecte des données du framework d'audit Linux et qui nous permet de surveiller l'intégrité de nos fichiers. Auditbeat transfère ces événements en temps réel vers la suite Elastic en vue d'une analyse plus poussée. Installation de Suricata sur le serveur Elastic Stack Pour son installation et son fonctionnement Suricata aura besoin de certain packages qu'on doit installer au préalable. Dans ces packages nous remarquons les outils gcc, make et beaucoup d'autres librairies. sudo yum -y install libpcap-devel libcap-ng-devel libnet-devel prce-devel gcc gcc-c++ automake autoconf libtool make libyaml-devel zlib-devel libprelude-devel libtool-ltdl-devel file-devel Une fois l'ensemble des packages installer nous allons récupérer à travers wget la dernière version de Suricata sur le site officiel de openinfosecfoundation. A ce jour Suricata est à sa version 6.0.2. wget https://www.openinfosecfoundation.org/download/suricata-6.0.2.tar.gz Une fois le téléchargement du fichier fini nous le décompressons avec l'outil tar. tar -zxvf suricata-6.0.2.tar.gz Puis on se place dans le répertoire de Suricata en fessant "cd suricata-6.0.2" et on lance le script de configuration permettant d'adapter suricata à notre système et verifier si toute les dépendances sont installées. Cette commande va definir /usr/bin/suricata comme repertoire de suricata, placer la configuration dans /etc/suricata et /var/log/suricata comme repertoire de log. ./configure -sysconfdir=/etc --localstatedir=/var --prefix=/usr/ --enable-lua --enable-geoip Après cette commande nous allons compiler et installer les règles et les configurations de Suricata avec les commandes : make make install-full Suricata est maintenant installer sur notre serveur Elastic Stack. Nous allons maintenant configurer le fichier de configuration de Suricata qui se trouve dans /etc/suricata/suricata.yaml. 42 Chapitre II : RéalisationLe fichier de configuration de Suricata contient plusieurs options. Mais pour une utilisation basique on va seulement configurer le réseau sur lequel écoute Suricata et l'interface attachée à ce réseau. Dans la section `vars' nous allons indiquer dans le variable HOME_NET l'adresse IP sur lequel Suricata doit écouter et tous les réseaux locaux qu'il doit protéger. Dans notre cas l'adresse de notre réseau local est le 192.168.10.0/24. Figure 30 : Configuration de la variable HOME_NET Sous la section "af-packet " nous indiquons le nom de notre interface qui est ens37. Figure 31 : Définition de l'interface réseau dans le fichier suricata.yaml Et dans la variable "default-rule-path" nous indiquons le répertoire des règles de Suricata. Figure 32 : Définition de la variable default-rule-path Nous sauvegardons le fichier et nous désactivons l'offloading des paquets Suricata en désactivant l'interface Large Receive Offload (LRO) / Generic Receive Offload (GRO) avec la commande : ethtool -K ens37 gro off lro off 43 Chapitre II : Réalisation Pour vérifier si cela a été bien désactiver nous lançons la commande ethtool -k ens37 | grep -iE "generic|large " et nous remarquons que le generic-receive-offload et le large-receive-offload sont sur off. Figure 33 : Vérification du GRO et du LRO Une fois toute notre configuration finie nous pouvons tester la configuration avec lacommande suricata -c /etc/suricata/suricata.yml -T -v et si la sortie de cette commande ne donne pas d'erreur nous pouvons lancer Suricata. Figure 34 : Test de la configuration de Suricata Lançons Suricata avec la commande : suricata -D -c /etc/suricata/suricata.yml -i ens37 Sachant que ens37 est le nom de notre interface. L'option -D permet de lancer suricata en arrière-plan et l'option -c permet d'indiquer le fichier de configuration de Suricata. Pour que les logs de Suricata puissent être envoyé à Elasticsearch à travers Filebeat nous activons le module Suricata de Filebeat avec la commande `filebeat modules enable suricata'. Puis nous lançons la commande `filebeat setup' pour créer les dashboards de Filebeat dans Kibana contenant le dashboard de Suricata. Installation de Suricata sur la machine cliente Ubuntu L'installation de Suricata sur CentOS et sur Debian reste les même à quelque millimètre prêt à part les noms des dépendances qui diffère de Red Hat à Debian les étapes d'installation reste les mêmes rien ne change des commandes à la configuration tout reste les mêmes. |
|