Graylog Install · 7 min read · Nov 20, 2025

Installa e Configura il Server di Monitoraggio Graylog su Ubuntu 20.04

Graylog è uno strumento di gestione dei log gratuito e open-source che può essere utilizzato per monitorare i log dei sistemi di rete da un server centrale. Utilizza Elasticsearch per memorizzare i dati dei log e fornire capacità di ricerca, e MongoDB per memorizzare informazioni meta. Ti aiuta a monitorare, cercare e analizzare una grande quantità di dati in un formato semplice e leggibile.

In questo tutorial, ti mostreremo come installare Graylog su un server Ubuntu 20.04.

Requisiti

  • Un server che esegue Ubuntu 20.04 con un minimo di 4 GB di RAM
  • Una password di root configurata.

Iniziare

Per prima cosa, dovrai aggiornare i pacchetti di sistema all’ultima versione. Puoi aggiornarli tutti con il seguente comando:

apt-get update -y

Dopo aver aggiornato tutti i pacchetti, dovrai anche installare alcune dipendenze nel tuo server. Puoi installarle tutte con il seguente comando:

apt-get install apt-transport-https gnupg2 uuid-runtime pwgen curl dirmngr -y

Una volta installate tutte le dipendenze richieste, puoi procedere al passaggio successivo.

Installa Java

Graylog richiede che Java sia installato nel tuo server. Se non è installato, puoi installarlo con il seguente comando:

apt-get install openjdk-11-jre-headless -y

Una volta installato Java, puoi verificare la versione installata di Java eseguendo il seguente comando:

java -version

Dovresti ottenere il seguente output:

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)

Una volta terminato, puoi procedere al passaggio successivo.

Installa e Configura Elasticsearch

Graylog utilizza Elasticsearch per memorizzare i log provenienti da risorse esterne. Quindi dovrai installare Elasticsearch nel tuo sistema.

Per impostazione predefinita, l’ultima versione di Elasticsearch non è disponibile nel repository predefinito di Ubuntu. Quindi dovrai aggiungere il repository di Elasticsearch nel tuo sistema.

Per prima cosa, scarica e aggiungi la chiave GPG di Elasticsearch con il seguente comando:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -

Successivamente, aggiungi il repository di Elasticsearch con il seguente comando:

echo "deb https://artifacts.elastic.co/packages/oss-6.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-6.x.list

Successivamente, aggiorna il repository e installa Elasticsearch con il seguente comando:

apt-get update -y  
apt-get install elasticsearch-oss -y

Dopo aver installato Elasticsearch, dovrai modificare il file di configurazione di Elasticsearch e definire il nome del cluster. Puoi farlo con il seguente comando:

nano /etc/elasticsearch/elasticsearch.yml

Definisci il tuo nome del cluster come graylog e aggiungi un’altra riga come mostrato di seguito:

cluster.name: graylog
action.auto_create_index: false

Salva e chiudi il file quando hai finito. Quindi, avvia il servizio Elasticsearch e abilitalo per avviarsi all’avvio con il seguente comando:

systemctl daemon-reload  
systemctl start elasticsearch  
systemctl enable elasticsearch

Puoi anche verificare lo stato del servizio Elasticsearch con il seguente comando:

systemctl status elasticsearch

Dovresti ottenere il seguente output:

? 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.

Ora, verifica la risposta di Elasticcsearch con il seguente comando:

curl -X GET http://localhost:9200

Dovresti ottenere il seguente output:

{
  "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"
}

Installa il Server MongoDB

Graylog utilizza MongoDB come database. Quindi dovrai installare il database MongoDB nel tuo server. Puoi installarlo con il seguente comando:

apt-get install mongodb-server -y

Una volta installato MongoDB, avvia il servizio MongoDB e abilitalo per avviarsi al riavvio del sistema con il seguente comando:

systemctl start mongodb  
systemctl enable mongodb

Una volta terminato, puoi procedere al passaggio successivo.

Installa e Configura Graylog

Per impostazione predefinita, il pacchetto Graylog non è disponibile nel repository predefinito di Ubuntu. Quindi dovrai installare il repository graylog nel tuo server.

Puoi scaricare il pacchetto del repository Graylog con il seguente comando:

wget https://packages.graylog2.org/repo/packages/graylog-3.3-repository_latest.deb

Una volta completato il download, installa il pacchetto scaricato con il seguente comando:

dpkg -i graylog-3.3-repository_latest.deb

Successivamente, aggiorna il repository e installa il server Graylog con il seguente comando:

apt-get update -y  
apt-get install graylog-server -y

Dopo aver installato il server Graylog, dovrai generare un segreto per proteggere le password degli utenti. Puoi generarlo con il seguente comando:

pwgen -N 1 -s 96

Dovresti vedere il seguente output:

Wv4VQWCAA9sRbL7pxPeY7tb9lSo50esEWgNXxXHypx0Og3CezMmQLdF2QzQdRSIXmNXKINjRvZpPTrvZv4k4NlJrFYTfOc3c

Successivamente, dovrai anche generare una password sicura per l’utente admin di Graylog. Avrai bisogno di questa password per accedere all’interfaccia web di Graylog. Puoi generarla con il seguente comando:

echo -n password | sha256sum

Dovresti vedere il seguente output:

5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8  -

Ora, modifica il file di configurazione principale di Graylog e definisci entrambe le password:

nano /etc/graylog/server/server.conf

Incolla entrambe le password che hai generato sopra come mostrato di seguito:

password_secret = Wv4VQWCAA9sRbL7pxPeY7tb9lSo50esEWgNXxXHypx0Og3CezMmQLdF2QzQdRSIXmNXKINjRvZpPTrvZv4k4NlJrFYTfOc3c
root_password_sha2 = 5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8   

Successivamente, dovrai anche definire un indirizzo di binding per il tuo server come mostrato di seguito:

http_bind_address = 127.0.0.1:9000

Salva e chiudi il file quando hai finito, quindi avvia il servizio Graylog e abilitalo per avviarsi al riavvio del sistema con il seguente comando:

systemctl daemon-reload  
systemctl start graylog-server  
systemctl enable graylog-server

Successivamente, puoi verificare lo stato del server Graylog utilizzando il seguente comando:

systemctl status graylog-server

Dovresti vedere il seguente output:

? 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.

Puoi anche verificare il log del server Graylog con il seguente comando:

tail -f /var/log/graylog-server/server.log

Una volta che il server Graylog è stato avviato correttamente, dovresti ottenere il seguente output:

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.

A questo punto, il server Graylog è avviato e in ascolto sulla porta 9000.

Configura Nginx come Reverse Proxy per Graylog

Successivamente, dovrai installare e configurare Nginx come reverse proxy per accedere al server Graylog.

Per prima cosa, installa il server Nginx con il seguente comando:

apt-get install nginx -y

Dopo aver installato il server Nginx, crea un nuovo file di configurazione del virtual host Nginx con il seguente comando:

nano /etc/nginx/sites-available/graylog.conf

Aggiungi le seguenti righe:

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;
    }
}

Salva e chiudi il file quando hai finito. Quindi, verifica la configurazione di Nginx per eventuali errori di sintassi con il seguente comando:

ginx -t

Dovresti ottenere il seguente output:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Successivamente, abilita il file di configurazione del virtual host Nginx con il seguente comando:

ln -s /etc/nginx/sites-available/graylog.conf /etc/nginx/sites-enabled/

Infine, riavvia il servizio Nginx per applicare le modifiche:

systemctl restart nginx

Successivamente, verifica lo stato di Graylog con il seguente comando:

systemctl status nginx

Dovresti ottenere il seguente output:

? 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.

Accedi all’Interfaccia Web di Graylog

Ora, apri il tuo browser web e digita l’URL http://graylog.example.com. Verrai reindirizzato alla pagina di accesso di Graylog come mostrato di seguito:

Login Graylog

Fornisci il tuo nome utente admin, password e fai clic sul pulsante Login. Dovresti vedere il dashboard di Graylog nella seguente pagina:

Iniziare con Graylog

Ora, fai clic su System >> Overview. Dovresti vedere lo stato del server Graylog nella seguente pagina:

Graylog

Conclusione

Congratulazioni! hai installato e configurato con successo il server Graylog con Nginx come reverse proxy su Ubuntu 20.04. Ora puoi esplorare Graylog e creare un input per ricevere i log Rsyslog da fonti esterne. Sentiti libero di chiedere se hai domande.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.