Come installare lo strumento di gestione dei registri Graylog sui sistemi RHEL
Graylog è una soluzione di gestione dei log open source leader del settore per la raccolta, l'archiviazione, l'indicizzazione e l'analisi dei dati in tempo reale provenienti da applicazioni e da una miriade di dispositivi nelle infrastrutture IT come server, router e firewall.
Graylog ti aiuta a ottenere maggiori informazioni sui dati raccolti combinando più ricerche per analisi e report dettagliati. Rileva inoltre minacce e possibili attività dannose conducendo un'analisi approfondita dei registri provenienti da fonti remote.
Graylog comprende quanto segue:
- Il server Graylog: questo è il server principale e viene utilizzato per l'elaborazione dei log.
- L'interfaccia web di Graylog: si tratta di un'applicazione browser che fornisce uno sguardo ai dati e ai registri raccolti da più endpoint.
- MongoDB: un server database NoSQL per l'archiviazione dei dati di configurazione.
- ElasticSearch – Questo è un motore di ricerca e analisi gratuito e open source che analizza e indicizza i dati grezzi provenienti da varie fonti.
L'architettura di Graylog accetta qualsiasi tipo di dati strutturati incluso il traffico di rete e i log provenienti da:
- Syslog (TCP, UDP, AMQP, Kafka).
- AWS: log AWS, CloudTrail e FlowLogs.
- Flusso di rete (UDP).
- GELF (TCP, UDP, AMQP, Kafka).
- ELK – Beats e Logstash.
- Percorso JSON dall'API HTTP.
Alcune delle gigantesche aziende tecnologiche che implementano Graylog nei loro stack tecnologici includono Fiverr, CircleCI, CraftBase e < forte>BitPanda.
In questa guida ti mostreremo come installare lo strumento di gestione dei log Graylog su RHEL 8 e distribuzioni basate su RHEL come AlmaLinux, CentOS Stream e Rocky Linux.
Passaggio 1: installa EPEL Repo e i pacchetti prerequisiti
Per iniziare, hai bisogno di alcuni pacchetti essenziali che ti saranno utili man mano che prosegui con questa guida. Innanzitutto, installa il repository EPEL che fornisce un ricco set di pacchetti software per le distribuzioni RHEL e RHEL.
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
Successivamente, installa i seguenti pacchetti che saranno richiesti lungo il percorso.
sudo dnf install -y pwgen wget curl perl-Digest-SHA
Passaggio 2: installare Java (OpenJDK) in RHEL
Uno dei prerequisiti per l'installazione di Graylog è Java 8 e versioni successive. Qui installeremo l'ultima versione LTS di Java che è Java 11 che sarà fornita da OpenJDK 11.
Pertanto, esegui il comando seguente per installare OpenJDK.
sudo dnf install java-11-openjdk java-11-openjdk-devel -y
Questo installa le dipendenze Java e una serie di altre dipendenze.
Una volta completata l'installazione verificare la versione installata.
java -version
Passaggio 3: installa Elasticsearch in RHEL
Elasticsearch è un motore di ricerca e analisi gratuito e open source che gestisce un'ampia varietà di dati, inclusi dati strutturati, non strutturati, numerici, geospaziali e testuali.
È un componente chiave dello stack elastico, noto anche come ELK (Elasticsearch, Logstash e Kibana), ed è ampiamente utilizzato per le sue semplici API REST, scalabilità e velocità.
Graylog richiede Elasticsearch 6.x o 7.x. Installeremo Elasticsearch 7.x che è l'ultima versione al momento della pubblicazione di questa guida.
Crea il file del repository Elasticsearch.
sudo vim /etc/yum.repos.d/elasticsearch.repo
Successivamente, incolla le seguenti righe di codice nel file.
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/oss-7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
Salva le modifiche ed esci.
Successivamente, installa Elasticsearch utilizzando il gestore pacchetti DNF come mostrato.
sudo dnf install elasticsearch-oss
Affinché Elasticsearch funzioni con Graylog, sono necessarie alcune modifiche. Quindi apri il file elasticsearch.yml.
sudo vim /etc/elasticsearch/elasticsearch.yml
Aggiorna il nome del cluster in Graylog come mostrato.
cluster.name: graylog
Salva le modifiche ed esci.
Quindi ricaricare la configurazione del gestore systemd.
sudo systemctl daemon-reload
Successivamente, attiva e avvia il servizio Elasticsearch eseguendo i seguenti comandi.
sudo systemctl enable elasticsearch.service
sudo systemctl start elasticsearch.service
Elasticsearch ascolta la porta 9200 per impostazione predefinita per elaborare le richieste HTTP. Puoi confermarlo inviando una richiesta CURL come mostrato.
curl -X GET http://localhost:9200
Passaggio 4: installare MongoDB in RHEL
Graylog utilizza un server database MongoDB per archiviare i dati di configurazione.
Installeremo MongoDB 4.4, ma prima creeremo un file di configurazione per MongoDB.
sudo vim /etc/yum.repos.d/mongodb-org-4.repo
Quindi incolla la seguente configurazione.
[mongodb-org-4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc
Salva le modifiche ed esci.
Successivamente, installa MongoDB come segue.
sudo dnf install mongodb-org
Una volta installato, avvia e abilita l'avvio di MongoDB all'avvio del sistema.
sudo systemctl start mongod
sudo systemctl enable mongod
Per verificare la versione di MongoDB, esegui il comando:
mongo --version
Passaggio 5: installare il server Graylog in RHEL
Con tutti i componenti prerequisiti installati, ora installa Graylog eseguendo i seguenti comandi.
sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-4.2-repository_latest.rpm
sudo dnf install graylog-server
Puoi verificare l'installazione di Graylog come mostrato:
rpm -qi graylog-server
Ora avvia e abilita l'avvio del server Graylog all'avvio.
sudo systemctl start graylog-server.service
sudo systemctl enable graylog-server.service
Passaggio 6: configurare il server Graylog in RHEL
Affinché Graylog funzioni come previsto, sono necessari alcuni passaggi aggiuntivi. È necessario definire i seguenti parametri nel file di configurazione:
root_password_sha2
password_secret
root_username
http_bind_address
Definiremo queste variabili nel file /etc/graylog/server/server.conf che è il file di configurazione predefinito.
root_password_sha2 è la password hash per l'utente root. Per generarlo eseguire il seguente comando. La P@ssword321 è solo un segnaposto. Sentiti libero di specificare la tua password.
echo -n P@ssword321 | shasum -a 256
Produzione
68e865af8ddbeffc494508bb6181167fccf0bb7c0cab421c54ef3067bdd8d85d
Prendi nota di questa password e salvala da qualche parte.
Successivamente, genera password_secret come segue:
pwgen -N 1 -s 96
Produzione
T1EtSsecY0QE4jIG3t6e96A5qLU5WhS9p5SliveX9kybWjC3WKhN4246oqGYPe4BTLXaaiOcM7LyuSd9bGAonQxkTsTjuqBf
Ancora una volta, prendi nota di questa password con hash.
Successivamente, apri il file di configurazione di Graylog.
sudo vim /etc/graylog/server/server.conf
Incolla i valori che hai generato per root_password_sha2 e password_secret come mostrato.
root_username = admin
root_password_sha2 = 68e865af8ddbeffc494508bb6181167fccf0bb7c0cab421c54ef3067bdd8d85d
password_secret = T1EtSsecY0QE4jIG3t6e96A5qLU5WhS9p5SliveX9kybWjC3WKhN4246oqGYPe4BTLXaaiOcM7LyuSd9bGAonQxkTsTjuqBf
Inoltre, rendi Graylog accessibile agli utenti esterni impostando il parametro http_bind_address come segue.
http_bind_address = 0.0.0.0:9000
Inoltre, configura il fuso orario per il server Graylog.
root_timezone = UTC
Salvare ed uscire dal file di configurazione.
Per applicare le modifiche, riavvia il server Graylog.
sudo systemctl restart graylog-server.service
Puoi confermare dai file di registro e verificare se Graylog funziona come previsto.
tail -f /var/log/graylog-server/server.log
L'output seguente nell'ultima riga mostra che tutto va bene.
Graylog è in ascolto sulla porta 9000 che fornisce l'accesso all'interfaccia web. Quindi, apri questa porta sul firewall.
sudo firewall-cmd --add-port=9000/tcp --permanent
sudo firewall-cmd --reload
Passaggio 7: accedi all'interfaccia utente Web di Graylog
Per accedere a Graylog, sfoglia il seguente URL.
http://server-ip:9000
OR
http://domain-name:9000
Accedi con il tuo nome utente admin e la password configurata per root_password_sha2 nel file server.conf.
Una volta effettuato l'accesso, dovresti vedere la seguente dashboard.
Da qui è possibile procedere con l'analisi dei dati e dei log raccolti da varie origini dati.
Graylog continua a essere una popolare soluzione di gestione centralizzata dei log per sviluppatori e team operativi. L'analisi dei dati raccolti fornisce informazioni approfondite sullo stato di funzionamento di varie applicazioni e dispositivi e aiuta a trovare errori e ottimizzare le operazioni IT.
Per questa guida è tutto. In questo tutorial, abbiamo dimostrato come installare Graylog Server su distribuzioni Linux basate su RHEL.