Installation Graylog · 8 min read · Nov 20, 2025
Installer et configurer le serveur de surveillance Graylog Ubuntu 20.04

Graylog est un outil de gestion des journaux gratuit et open-source qui peut être utilisé pour surveiller les journaux des systèmes réseau depuis un serveur central. Il utilise Elasticsearch pour stocker les données de journaux et fournir des capacités de recherche, et MongoDB pour stocker des informations méta. Il vous aide à surveiller, rechercher et analyser une grande quantité de données dans un format lisible simple.
Dans ce tutoriel, nous allons vous montrer comment installer Graylog sur un serveur Ubuntu 20.04.
Prérequis
- Un serveur exécutant Ubuntu 20.04 avec un minimum de 4 Go de RAM
- Un mot de passe root est configuré.
Mise en route
Tout d’abord, vous devrez mettre à jour les paquets de votre système vers la dernière version. Vous pouvez les mettre à jour tous avec la commande suivante :
apt-get update -yAprès avoir mis à jour tous les paquets, vous devrez également installer certaines dépendances sur votre serveur. Vous pouvez les installer toutes avec la commande suivante :
apt-get install apt-transport-https gnupg2 uuid-runtime pwgen curl dirmngr -yUne fois toutes les dépendances requises installées, vous pouvez passer à l’étape suivante.
Installer Java
Graylog nécessite que Java soit installé sur votre serveur. S’il n’est pas installé, vous pouvez l’installer avec la commande suivante :
apt-get install openjdk-11-jre-headless -yUne fois Java installé, vous pouvez vérifier la version installée de Java en exécutant la commande suivante :
java -versionVous devriez obtenir la sortie suivante :
openjdk version "11.0.8" 2020-07-14
OpenJDK Runtime Environment (build 11.0.8+10-post-Ubuntu-0ubuntu120.04)
OpenJDK 64-Bit Server VM (build 11.0.8+10-post-Ubuntu-0ubuntu120.04, mixed mode, sharing)
Une fois que vous avez terminé, vous pouvez passer à l’étape suivante.
Installer et configurer Elasticsearch
Graylog utilise Elasticsearch pour stocker les journaux provenant de la ressource externe. Vous devrez donc installer Elasticsearch sur votre système.
Par défaut, la dernière version d’Elasticsearch n’est pas disponible dans le dépôt par défaut d’Ubuntu. Vous devrez donc ajouter le dépôt Elasticsearch à votre système.
Tout d’abord, téléchargez et ajoutez la clé GPG d’Elasticsearch avec la commande suivante :
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -Ensuite, ajoutez le dépôt Elasticsearch avec la commande suivante :
echo "deb https://artifacts.elastic.co/packages/oss-6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.listEnsuite, mettez à jour le dépôt et installez Elasticsearch avec la commande suivante :
apt-get update -y
apt-get install elasticsearch-oss -yAprès avoir installé Elasticsearch, vous devrez modifier le fichier de configuration d’Elasticsearch et définir le nom du cluster. Vous pouvez le faire avec la commande suivante :
nano /etc/elasticsearch/elasticsearch.ymlDéfinissez votre nom de cluster sur graylog et ajoutez une autre ligne comme indiqué ci-dessous :
cluster.name: graylog
action.auto_create_index: false
Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, démarrez le service Elasticsearch et activez-le pour qu’il démarre au démarrage avec la commande suivante :
systemctl daemon-reload
systemctl start elasticsearch
systemctl enable elasticsearchVous pouvez également vérifier l’état du service Elasticsearch avec la commande suivante :
systemctl status elasticsearchVous devriez obtenir la sortie suivante :
? elasticsearch.service - Elasticsearch
Loaded: loaded (/lib/systemd/system/elasticsearch.service; disabled; vendor preset: enabled)
Active: active (running) since Sat 2020-09-05 08:41:18 UTC; 9s ago
Docs: http://www.elastic.co
Main PID: 7085 (java)
Tasks: 17 (limit: 2353)
Memory: 1.1G
CGroup: /system.slice/elasticsearch.service
??7085 /bin/java -Xms1g -Xmx1g -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=75 -XX:+UseCMSInitiatingOccupancyOnly ->
Sep 05 08:41:18 ubuntu2004 systemd[1]: Started Elasticsearch.
Maintenant, vérifiez la réponse d’Elasticsearch avec la commande suivante :
curl -X GET http://localhost:9200Vous devriez obtenir la sortie suivante :
{
"name" : "vzg8H4j",
"cluster_name" : "graylog",
"cluster_uuid" : "6R9SlXxNSUGe6aclcJa9VQ",
"version" : {
"number" : "6.8.12",
"build_flavor" : "oss",
"build_type" : "deb",
"build_hash" : "7a15d2a",
"build_date" : "2020-08-12T07:27:20.804867Z",
"build_snapshot" : false,
"lucene_version" : "7.7.3",
"minimum_wire_compatibility_version" : "5.6.0",
"minimum_index_compatibility_version" : "5.0.0"
},
"tagline" : "You Know, for Search"
}
Installer le serveur MongoDB
Graylog utilise MongoDB comme base de données. Vous devrez donc installer la base de données MongoDB sur votre serveur. Vous pouvez l’installer avec la commande suivante :
apt-get install mongodb-server -yUne fois MongoDB installé, démarrez le service MongoDB et activez-le pour qu’il démarre au redémarrage du système avec la commande suivante :
systemctl start mongodb
systemctl enable mongodbUne fois que vous avez terminé, vous pouvez passer à l’étape suivante.
Installer et configurer Graylog
Par défaut, le paquet Graylog n’est pas disponible dans le dépôt par défaut d’Ubuntu. Vous devrez donc installer le dépôt graylog sur votre serveur.
Vous pouvez télécharger le paquet du dépôt Graylog avec la commande suivante :
wget https://packages.graylog2.org/repo/packages/graylog-3.3-repository_latest.debUne fois le téléchargement terminé, installez le paquet téléchargé avec la commande suivante :
dpkg -i graylog-3.3-repository_latest.debEnsuite, mettez à jour le dépôt et installez le serveur Graylog avec la commande suivante :
apt-get update -y
apt-get install graylog-server -yAprès avoir installé le serveur Graylog, vous devrez générer un secret pour sécuriser les mots de passe des utilisateurs. Vous pouvez le générer avec la commande suivante :
pwgen -N 1 -s 96Vous devriez voir la sortie suivante :
Wv4VQWCAA9sRbL7pxPeY7tb9lSo50esEWgNXxXHypx0Og3CezMmQLdF2QzQdRSIXmNXKINjRvZpPTrvZv4k4NlJrFYTfOc3c
Ensuite, vous devrez également générer un mot de passe sécurisé pour l’utilisateur admin de Graylog. Vous aurez besoin de ce mot de passe pour vous connecter à l’interface web de Graylog. Vous pouvez le générer avec la commande suivante :
echo -n password | sha256sumVous devriez voir la sortie suivante :
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8 -
Maintenant, éditez le fichier de configuration principal de Graylog et définissez les deux mots de passe :
nano /etc/graylog/server/server.confCollez les deux mots de passe que vous avez générés ci-dessus comme indiqué ci-dessous :
password_secret = Wv4VQWCAA9sRbL7pxPeY7tb9lSo50esEWgNXxXHypx0Og3CezMmQLdF2QzQdRSIXmNXKINjRvZpPTrvZv4k4NlJrFYTfOc3c
root_password_sha2 = 5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8
Ensuite, vous devrez également définir une adresse de liaison pour votre serveur comme indiqué ci-dessous :
http_bind_address = 127.0.0.1:9000
Enregistrez et fermez le fichier lorsque vous avez terminé, puis démarrez le service Graylog et activez-le pour qu’il démarre au redémarrage du système avec la commande suivante :
systemctl daemon-reload
systemctl start graylog-server
systemctl enable graylog-serverEnsuite, vous pouvez vérifier l’état du serveur Graylog en utilisant la commande suivante :
systemctl status graylog-serverVous devriez voir la sortie suivante :
? graylog-server.service - Graylog server
Loaded: loaded (/lib/systemd/system/graylog-server.service; disabled; vendor preset: enabled)
Active: active (running) since Sat 2020-09-05 08:50:16 UTC; 15min ago
Docs: http://docs.graylog.org/
Main PID: 8693 (graylog-server)
Tasks: 156 (limit: 2353)
Memory: 865.0M
CGroup: /system.slice/graylog-server.service
??8693 /bin/sh /usr/share/graylog-server/bin/graylog-server
??8726 /usr/bin/java -Xms1g -Xmx1g -XX:NewRatio=1 -server -XX:+ResizeTLAB -XX:+UseConcMarkSweepGC -XX:+CMSConcurrentMTEnabled -XX>
Sep 05 08:50:16 ubuntu2004 systemd[1]: Started Graylog server.
Vous pouvez également vérifier le journal du serveur Graylog avec la commande suivante :
tail -f /var/log/graylog-server/server.logUne fois que le serveur Graylog a démarré avec succès, vous devriez obtenir la sortie suivante :
2020-09-05T08:51:36.473Z INFO [ServerBootstrap] Services started, startup times in ms: {InputSetupService [RUNNING]=59, JobSchedulerService [RUNNING]=105, GracefulShutdownService [RUNNING]=106, OutputSetupService [RUNNING]=110, BufferSynchronizerService [RUNNING]=111, UrlWhitelistService [RUNNING]=153, JournalReader [RUNNING]=166, KafkaJournal [RUNNING]=222, MongoDBProcessingStatusRecorderService [RUNNING]=240, ConfigurationEtagService [RUNNING]=259, EtagService [RUNNING]=302, StreamCacheService [RUNNING]=306, LookupTableService [RUNNING]=376, PeriodicalsService [RUNNING]=655, JerseyService [RUNNING]=58701}
2020-09-05T08:51:36.477Z INFO [ServerBootstrap] Graylog server up and running.
À ce stade, le serveur Graylog est démarré et écoute sur le port 9000.
Configurer Nginx comme proxy inverse pour Graylog
Ensuite, vous devrez installer et configurer Nginx comme proxy inverse pour accéder au serveur Graylog.
Tout d’abord, installez le serveur Nginx avec la commande suivante :
apt-get install nginx -yAprès avoir installé le serveur Nginx, créez un nouveau fichier de configuration de l’hôte virtuel Nginx avec la commande suivante :
nano /etc/nginx/sites-available/graylog.confAjoutez les lignes suivantes :
server {
listen 80;
server_name graylog.example.org;
location / {
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/;
proxy_pass http://127.0.0.1:9000;
}
}
Enregistrez et fermez le fichier lorsque vous avez terminé. Ensuite, vérifiez la configuration de Nginx pour toute erreur de syntaxe avec la commande suivante :
ginx -tVous devriez obtenir la sortie suivante :
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Ensuite, activez le fichier de configuration de l’hôte virtuel Nginx avec la commande suivante :
ln -s /etc/nginx/sites-available/graylog.conf /etc/nginx/sites-enabled/Enfin, redémarrez le service Nginx pour appliquer les modifications :
systemctl restart nginxEnsuite, vérifiez l’état de Graylog avec la commande suivante :
systemctl status nginxVous devriez obtenir la sortie suivante :
? nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Sat 2020-09-05 09:07:50 UTC; 20s ago
Docs: man:nginx(8)
Process: 9408 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Process: 9419 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
Main PID: 9423 (nginx)
Tasks: 3 (limit: 2353)
Memory: 10.2M
CGroup: /system.slice/nginx.service
??9423 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
??9424 nginx: worker process
??9425 nginx: worker process
Sep 05 09:07:50 ubuntu2004 systemd[1]: Starting A high performance web server and a reverse proxy server...
Sep 05 09:07:50 ubuntu2004 systemd[1]: Started A high performance web server and a reverse proxy server.
Accéder à l’interface web de Graylog
Maintenant, ouvrez votre navigateur web et tapez l’URL http://graylog.example.com. Vous serez redirigé vers la page de connexion de Graylog comme indiqué ci-dessous :

Fournissez votre nom d’utilisateur admin, votre mot de passe et cliquez sur le bouton Connexion. Vous devriez voir le tableau de bord Graylog sur la page suivante :

Maintenant, cliquez sur Système >> Aperçu. Vous devriez voir l’état du serveur Graylog sur la page suivante :

Conclusion
Félicitations ! vous avez réussi à installer et configurer le serveur Graylog avec Nginx comme proxy inverse sur Ubuntu 20.04. Vous pouvez maintenant explorer Graylog et créer une entrée pour recevoir les journaux Rsyslog provenant de sources externes. N’hésitez pas à me poser des questions si vous en avez.
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.