Installazione e Configurazione di Graylog Server 5.2.5 con Web Gui su Ubuntu Server 22.04

da | Mar 22, 2024

Graylog è uno strumento di gestione dei Log e open source basato su Java, Elasticsearch/OpenSearch e MongoDB che può essere utilizzato per raccogliere, indicizzare e analizzare qualsiasi log server da una postazione centralizzata. Si può facilmente monitorare i SSH login e attività insolite per il debug di applicazioni e i registri utilizzando Graylog.

Graylog fornisce un linguaggio di query avanzate, abilità di avviso, una pipeline di elaborazione per la trasformazione dei dati e molto altro.

Graylog è costituito da tre componenti:

  • Elasticsearch/OpenSearch: Memorizza tutti i messaggi di in ingresso e fornire una struttura di ricerca.
  • MongoDB: È usato per database, memorizza le configurazioni e le meta-informazioni.
  • Graylog server: riceve ed elabora i messaggi da vari input e fornire un’interfaccia web per l’analisi e il monitoraggio.

Di seguito il tutorial che guida passo passo nell’installazione di Graylog 5.2.5 con Opensearch 2.5.0 e MongoDB 6.0.14 e OpenJDK 17

PREREQUISITI

Un server con Ubuntu 22.04 come sistema operativo e minimo 4 GB di RAM e 2 vCPU
Un dominio valido che punta all’indirizzo IP del server
Privilegi utente: utente root o non root con privilegi sudo

AGGIORNAMENTO SISTEMA

Prima di iniziare con l’installazione aggiornare i pacchetti di sistema alle ultime versioni disponibili con il comando:

Quindi riavviare il server con il comando:

INSTALLAZIONE DELLE DIPENDENZE

Procedere con l’installazione delle dipendenze necessarie durante l’installazione di Graylog con i seguenti comando:

INSTALLAZIONE DI OPENSEARCH

Opensearch è un altro componente fondamentale nell’installazione di Graylog. È un motore di ricerca e analisi distribuito ampiamente utilizzato per la ricerca full-text, l’analisi dei log, l’analisi aziendale e l’analisi degli eventi di sicurezza.

In Graylog, Opensearch archivia, cerca e analizza registri e messaggi da fonti esterne.

Opensearch non è ospitato sui repository ufficiali di Ubuntu quindi lo installeremo dal repository Elasticsearch.

Per fare ciò scaricare e aggiungere la chiave GPG Elasticsearch con il comando:

Aggiungere il repository di Opensearch al sistema con il comando:

Aggiornare il repository con il comando:

Verificare tutte le versioni disponibili di OpenSearch con il comando:

Verificare dalla lista la versione stabile

ATTENZIONE: in questo tutorial installerò la versione 2.5.0

Dopo aver aggiornato la cache locale, installare Opensearch dal repository utilizzando il gestore pacchetti APT con il comando:

Una volta completata l’installazione, è necessario apportare alcune modifiche al file di configurazione principale di Opensearch.

Utilizzare l’editor di testo preferito per accedere al file. Io utilizzerò l’editor della riga di comando nano.

Eseguire il comando:

All’interno del file di configurazione individuare le seguenti righe e impostarle come di seguito:

NOTA BENE: io per comodità ho commentato tutto all’interno del file ed ho aggiunte tutte le righe al fondo del file

Se è tutto corretto dovremmo vedere una schermata come quella sovrastante

Salvare e chiudere il file di configurazione

Abilitare le opzioni JVM con il comando:

Aggiornare quindi le impostazioni Xms e Xmx con metà della memoria di sistema installata

NOTA BENE: nel mio caso avendo una memoria di 4 GB ho impostato la metà e quindi 2G

Se è tutto corretto dovremmo vedere una schermata come quella sovrastante

Salvare e chiudere il file di configurazione

Configura i parametri del kernel in fase di runtime con i comandi:

Ricaricare systemd per applicare la modifica e avviare Opensearch con i comandi:

E’ possibile verificare lo stato di Opensearch con il comando:

Abilitare l’avvio al boot di Opensearch con il comando:

E’ possibile inviare una richiesta GET al nodo utilizzando lo strumento da riga di comando curl per visualizzare informazioni dettagliate su Elasticsearch. Di seguito il comando:

Se è tutto corretto dovremmo visualizzare un output comem mostrato nell’immagine sovrastante

INSTALLAZIONE DEL DATABASE MONGODB

Nel server Graylog, il database MongoDB memorizza le informazioni di configurazione e i dati dell’utente.

In questo tutorial installeremo MongoDB versione 7

Importare la chiave pubblica utilizzata dal sistema di gestione dei pacchetti

Installare gnupgcurl con il comando:

Per importare la chiave GPG pubblica di MongoDB, eseguire il seguente comando:

Creare un file di elenco per MongoDB in /etc/apt/sources.list.d/mongodb-org-6.0.list con il comando:

Usare il comando seguente per ricaricare il database dei pacchetti locale:

Installare l’ultima versione stabile di MongoDB con il comando:

Il comando installa il server database MongoDB insieme ai componenti principali del database inclusi gli strumenti della shell.

Una volta completata l’installazione, verificare la versione di MongoDB installata con il comando:

Se è andato tutto a buon fine dovremmo vedere il seguente output:

Il servizio MongoDB è disabilitato al momento dell’installazione per impostazione predefinita ed è possibile verificarlo eseguendo il comando:

Dovremmo visualizzare il seguente output:

Abilitare MongoDB all’avvio con il comando:

Avviare il servizio di MongoDB con il comando:

INSTALLAZIONE DI GRAYLOG SERVER

Ora siamo pronti per installare il server Graylog su Ubuntu.

Per impostazione predefinita, il pacchetto server Graylog non è disponibile sui repository Ubuntu. Pertanto, installeremo Graylog dal repository ufficiale Graylog.

Scaricare il pacchetto Graylog Debian con il comando:

Successivamente lanciare il comando dpkg per eseguire il pacchetto:

Quindi aggiornare l’APT cache e procedere con l’installazione di Graylog Server con il comando:

Se è andato tutto a buon fine dovremmo vedere una schermata come l’immagine sovrastante

Una volta installato il server Graylog, è necessario generare una secret per proteggere le password degli utenti e una password crittografata per l’utente amministratore.

Per generare una password segreta per proteggere le password degli utenti, eseguire il comando seguente:

Dovremmo visualizzare un output con la secret:

Successivamente generare una password crittografata per l’utente di accesso amministratore di Graylog con il comando:

Inserire la password desiderata quindi premere Invio

Sotto la password inserita verrà visualizzata la stessa criptata.

nel mio caso visualizzo questo: fcba8051ec9c89dfa788d2e093b54765629bc153237a2a4d26c0ae959500b4c5

A questo punto copiare entrambe la password criptate e aprire il file di configurazione di Graylog /etc/graylog/server/server.conf con il seguente comando:

All’interno del file di configurazione cercare password_secret quindi incollare la prima secret generata

Dovremmo visualizzare un output come mostrato nell’immagine sovrastante

Sempre all’interno del file cercare root_password_sha2 e incollare la seconda secret creata

Dovremmo visualizzare un output come mostrato nell’immagine sovrastante

All’interno del file cercare la riga #http_bind_address = 127.0.0.1:9000 quindi decommentarla

Al posto dell’IP 127.0.0.1 inserire l’IP fisico del server

Dovremmo visualizzare un output come mostrato nell’immagine sovrastante

Salvare e chiudere il file di configurazione

Fare un reload di systemd con il comando:

Quindi avviare il servizio di Graylog con il comando:

Per verificare lo stato di Garylog eseguire il comando:

Se è tutto OK dovremmo vedere il servizio Attivo come mostrato nell’immagine sovrastante

Abilitare l’avvio del servizio di Graylog all avvio del sistema con il comando:

CONFIGURAZIONE DI NGINX COME REVERSE PROXY

Graylog può fungere da frontend e non richiede un server web.

Tuttavia è preferibile configurare un server web come reverse proxy per la porta da 80 a 9000, su cui Graylog è in ascolto.

Ciò semplifica anche la configurazione di un certificato SSL per Graylog.

In questo tutorial utilizzerò Nginx come opzione preferita per un server web.

Per installare Nginx, eseguire il comando:

Una volta installato creare un file host virtuale per Graylog con il comando:

Aggiungere queste righe di codice e assicurarsi di specificare l’IP server Graylog per l’attributo proxy_pass.

Modificare i seguenti parametri:

NOME-SERVER-GRAYLOG: Inserire il nome FQDN del server Graylog

IP-SERVER-GRAYLOG: Inserire l’IP del server Graylog

Salvare e chiudere il file di configurazione

Verificare che la sintassi del file di configurazione sia OK con il comando:

Se è tutto OK dovremmo visualizzare il seguente output:

Abilitare il Virtual Host file con il comando:

Eliminare il file dell’host virtuale predefinito con il comando:

Applicare le modifiche riavviando il servizio di Nginx con il comando:

Quindi verificare lo stato di Nginx con il comando:

Se è tutto OK dovremmo vedere il servizio Attivo come mostrato nell’immagine sovrastante

ACCESSO ALL’INTERFACCIA WEB DI GRAYLOG

A questo punto aprire da un qualsiasi browser il link

http://IP-DEL-SERVER

Se è andato tutto a buon fine dovremmo vedere la pagina di Login di Graylog
Inserire admin e la password definita in precendeza quindi cliccare Sign In

Dopo essere entrati dovremmo visualizzare la Dashboard di Graylog

TOOL PER EVENTUALI PROBLEMATICHE

In alcuni casi dopo aver terminato l’installazione di Graylog non viene visualizzata la pagina di login ma un a finestra di popup dove inserire user e password.

Ovviamente inserendo le credenziali non funziona nulla.

In questo caso può tornare utile il seguente comando:

Dopo aver eseguito il comando seguire le istruzioni per sbloccare il problema dovuto quasi sempre a Elasticsearch o Opensearch.

Scritto da Raffaele Chiatto

Sono Raffaele Chiatto, un appassionato di informatica a 360 gradi.
Tutto è iniziato nel 1996, quando ho scoperto il mondo dell'informatica grazie a Windows 95, e da quel momento non ho più smesso di esplorare e imparare.
Ogni giorno mi dedico con curiosità e passione a scoprire le nuove frontiere di questo settore in continua evoluzione.

Articoli Recenti

Veeam Backup

Monitoring

Friends

  • My English Lab  English School
  • ChrSystem   Infrastrutture IT
  • ACT For Cange  Mental Coach
  • Since 01  Kreative Graphics

Database

Networking

Autori

  • Raffaele Chiatto  Amministratore
  • Marco Valle  Autore Collaboratore

Related Post

0 commenti

Invia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Virtualizzazione

Linux

Microsoft

Apple

Backup

Database

Security

Automazione