Kesako? (Qu’est-ce que c’est)?
Lire Aussi:Installer Wazuh sous Linux (Debian 12,Ubuntu,Mint)
Caractéristique minimale du matériel
Installation de SIEM Graylog se fait en 4 étapes. Dans un premier temps nous allons installer MongoDB, Elasticsearch,Graylog puis en dernière position le reverse proxy NGNIX. Pour ce tutoriel, nous allons tout centraliser sur le même serveur linux (Ubuntu 24.04). Commençons!
Nous allons mettre à jour notre système, sans oublie d’installer les dépendances des paquets linux
sudo apt update && sudo apt upgrade
sudo apt install apt-transport-https gnupg2 uuid-runtime pwgen curl dirmngr openjdk-17-jre-headless -y1.Installation de MondgoDB
curl -fsSL https://pgp.mongodb.com/server-7.0.asc | \
gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg \
--dearmor
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
apt update
apt install -y mongodb-org -yActivation et redémarrage du service mongod.service
systemctl daemon-reload
systemctl enable mongod.service
systemctl restart mongod.service
systemctl status mongod.service2.Installation de Elasticsearch
Elasticsearch est souvent utilisé dans des solutions de monitoring, de log management (comme avec ELK : Elasticsearch, Logstash, Kibana) et des applications nécessitant des fonctionnalités de recherche avancées. Il permet la recherche en texte intégral, la gestion de documents complexes et offre une scalabilité importante.
Importation de la clé GPG dans le système et Ajout de la source dans le dépôts existant /etc/apt/sources.list/d/
curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo gpg --dearmor -o /usr/share/keyrings/elastic.gpg
echo "deb [signed-by=/usr/share/keyrings/elastic.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.listInstallation du paquet elasticsearch
sudo apt update -y
sudo apt install elasticsearch -yConfiguration de Elasticsearch
sudo nano /etc/elasticsearch/elasticsearch.ymlAjouter les lignes suivantes puis enregistrer
cluster.name: graylog
action.auto_create_index: falseActivation et redémarrage du service elasticsearch
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch
sudo systemctl restart elasticsearchVoyons voir si le nœud répond
curl -X GET http://localhost:92003 Installer Graylog
Téléchargement du paquet .deb graylog dans la version 6.0
wget https://packages.graylog2.org/repo/packages/graylog-6.0-repository_latest.debInstallation du paquet graylog
sudo dpkg -i graylog-6.0-repository_latest.debInstallation des dépendances du paquets graylog
sudo apt update
sudo apt install graylog-server -yNous allons générer un mot passe sécurisé pour les utilisateur à partir de cette commande. Faudrait copier le mot de passe dans un endroit sure,nous en auront besoin pour la suite
< /dev/urandom tr -dc A-Z-a-z-0-9 | head -c${1:-96};echo;Nous allons générer un deuxième pass pour utilisateurs admin.Faudrait copier le mot de passe dans un endroit sure,nous en auront besoin pour la suite
echo -n "Enter Password: " && head -1 </dev/stdin | tr -d '\n' | sha256sum | cut -d" " -f1Passons à la configuration du serveur graylog
nano /etc/graylog/server/server.confAjouter vos propre pass
password_secret = ThAjDufMLZLmslZTs42ZbUdqJ7LyuxRyP7MuchC7nHPUCHlastq1MHIKH2xGpZu-HGd79S1dc1YkQX0B3Zj6EvzSPbvitTO3
root_password_sha2 = ef92b778bafe771e89245b89ecbc08a44a4e166c06659911881f383d4473e94fJ’ai centraliser tous les services au même endroit. Nous allons donc permet a Graylog d’écouter au port 9000 du domain local 127.0.0.1 ou localhost
http_bind_address = 127.0.0.1:9000Nous allons connecté le noeud elasticsearch et la base de donnée MongoDB à partir de cette configuration. Elasticsearch écoute au port 9200, et MongoDB au port 27017
elasticsearch_hosts = http://localhost:9200
mongodb_uri = mongodb://localhost:27017/graylog
Nous allons activer wazuh au démarrage le service wazuh-indexer
systemctl daemon-reload
systemctl start graylog-server
systemctl enable graylog-server
systemctl status graylog-server4. Configuration proxy nginx
Installation du paquet
apt install nginx -yCréation de l’hôte virtuel Graylog
nano /etc/nginx/sites-available/graylog.confAjouter les lignes suivantes
server {
listen 80;
server_name graylog.example.org;
location /
{
proxy_pass http://localhost:9000;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Graylog-Server-URL http://$server_name/;
}
}Vérification des syntaxe du serveur ngnix
nginx -tCréation d’un lien symbolique entre graylog et les sites actif ngnix
ln -s /etc/nginx/sites-available/graylog.conf /etc/nginx/sites-enabled/Suppression du fichier de configuration par défaut
rm -rf /etc/nginx/sites-enabled/defaultRedémarrage et vérification du service ngnix
systemctl restart nginx
systemctl status nginx