Questa guida illustra l'installazione di Graylog con Elasticsearch 7.x su CentOS 8. Graylog è una soluzione opensource di gestione dei registri fondata nel 2009 per acquisire e centralizzare i registri in tempo reale da vari dispositivi in una rete. È uno strumento perfetto per analizzare registri cruciali come accessi SSH, violazioni o incidenti sospetti o insoliti che potrebbero indicare una violazione del sistema. Con la capacità di registrazione in tempo reale, si presenta come uno strumento di sicurezza informatica perfetto che i team operativi possono utilizzare per mitigare piccoli problemi prima che si trasformino in enormi minacce.
Graylog è composto da 3 componenti cruciali:
- Ricerca elastica :questo è un motore di analisi opensource che indicizza i dati ricevuti dal server Graylog.
- MongoDB :Questo è un database NoSQL opensource che memorizza metainformazioni e configurazioni.
- Server Graylog :questo passa i registri e fornisce un'interfaccia web in cui vengono visualizzati i registri.
Con questo riepilogo, installeremo subito Graylog su CentOS 8.
Prerequisiti per il server Graylog
All'inizio, assicurati che la tua istanza CentOS 8 soddisfi i seguenti requisiti:
- 2 CPU
- 4 GB di RAM
- Connessione Internet veloce e stabile
Passaggio 1) Installa Java 8 con il comando dnf
Elasticsearch è basato su Java e quindi è necessario installare Java e più specificamente Java 8 prima di ogni altra cosa. Hai la possibilità di installare OpenJDK o Oracle Java. In questa guida, stiamo installando OpenJDK 8.
$ sudo dnf install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
Per confermare la versione di Java installata, eseguire:
$ java -version
Passaggio 2) Installa Elasticsearch 7.x
Stiamo per installare l'ultima versione di Elasticsearch che, al momento della stesura di questa guida, è Elasticsearch 7.9.2. Elasticsearch non è disponibile sui repository CentOS 8, quindi creeremo un repository locale. Ma prima, importiamo la chiave GPG come mostrato.
$ sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
Usando il tuo editor di testo, crea un nuovo file di repository come mostrato:
$ sudo vi /etc/yum.repos.d/elasticsearch.repo
Incolla il contenuto mostrato di seguito
[elasticsearch-7.x] name=Elasticsearch repository for 7.x packages baseurl=https://artifacts.elastic.co/packages/7.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md
Salva ed esci dal file di configurazione. Per installare Elasticsearch, esegui il comando:
$ sudo dnf install -y elasticsearch
Una volta completata l'installazione, avvisa systemd e abilita Elasticsearch.
$ sudo systemctl daemon-reload $ sudo systemctl enable elasticsearch
Dobbiamo fare in modo che Elasticsearch funzioni con Graylog e, pertanto, aggiorneremo il nome del cluster in "graylog" come mostrato:
$ sudo vi /etc/elasticsearch/elasticsearch.yml ......... cluster.name: graylog .........
Salva ed esci dal file e riavvia elasticsearch per rendere effettive le modifiche.
$ sudo systemctl restart elasticsearch
Per verificare che Elasticsearch sia in esecuzione, invieremo una richiesta HTTP tramite la porta 9200 come mostrato.
$ curl -X GET "localhost:9200/"
Dovresti ottenere l'output come mostrato di seguito.
Passaggio 3) Installa MongoDB 4
Per installare MongoDB, crea un file di repository locale
$ sudo vi /etc/yum.repos.d/mongodb-org-4.repo
Incolla la configurazione mostrata di seguito
[mongodb-org-4] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/8/mongodb-org/4.2/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.2.asc
Salva ed esci, quindi installa MongoDB usando il comando mostrato.
$ sudo dnf install -y mongodb-org
Una volta installato MongoDB, avvia MongoDB e conferma il suo stato come mostrato
$ sudo systemctl start mongod $ sudo systemctl enable mongod $ sudo systemctl status mongod
Perfetto, l'output sopra conferma che il servizio mongodb è stato avviato correttamente e funziona correttamente.
Passaggio 4) Installa e configura il server Graylog
Per installare il server Graylog, inizia innanzitutto installando il repository Graylog come mostrato:
$ sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-3.3-repository_latest.rpm
Una volta aggiunto il repository, installa il server Graylog come mostrato.
$ sudo dnf install -y graylog-server
Al termine dell'installazione, puoi confermare maggiori dettagli sul server Graylog eseguendo:
$ rpm -qi graylog-server
Facciamo ora alcune configurazioni. Innanzitutto, genereremo una password segreta che verrà passata nella direttiva password_secret nel file di configurazione /etc/graylog/server/server.conf. Per fare ciò genereremo una password casuale utilizzando un generatore di password casuale chiamato pwgen. Per installarlo, dobbiamo prima abilitare il repository EPEL per CentOS 8.
$ sudo dnf install -y epel-release $ sudo dnf install -y pwgen
Una volta installato, puoi generare una password casuale usando il comando.
$ sudo pwgen -N 1 -s 96
L'output del comando sarebbe simile al seguente:
[[email protected] ~]$ sudo pwgen -N 1 -s 96 EtUtR16i9xwRsGbXROMFhSazZ3PvNe1tYui8wM5Q7h1UiXY0RTDdGygkhuDEJi9fpGwwXhMbYjcv9aFLh9DNF15JPBnMD0ne [[email protected] ~]$
Copia la password crittografata e salvala da qualche parte, preferibilmente su un editor di testo. Ti servirà da qualche altra parte.
Quindi, genera una password per l'attributo root_password_sha2 come mostrato.
$ echo -n [email protected]@123# | sha256sum
L'output sarebbe,
[[email protected] ~]$ echo -n [email protected]@123# | sha256sum a8f1a91ef8c534d678c82841a6a88fa01d12c2d184e641458b6bec67eafc0f7c - [[email protected] ~]$
Ancora una volta, salva questa password crittografata da qualche parte. Ora apri il file di configurazione di Graylog.
$ sudo vi /etc/graylog/server/server.conf
Individua gli attributi password_secret e root_password_sha2 e incolla le password crittografate corrispondenti.
Quindi, decommenta l'attributo http_bind_address e inserisci l'IP del tuo server.
Ricarica systemd, avvia e abilita Graylog.
$ sudo systemctl daemon-reload $ sudo systemctl start graylog-server $ sudo systemctl enable graylog-server
Eseguire il comando seguente per verificare lo stato del servizio Graylog:
$ sudo systemctl status graylog-server
Puoi anche verificare lo stato del servizio graylog usando il suo file di registro “/var/log/graylog-server/server.log”
Consenti Graylog Server nel firewall:
Nel caso in cui il firewall sia abilitato e in esecuzione, consenti la porta 9000 tcp utilizzando i comandi sotto,
$ sudo firewall-cmd --permanent --add-port=9000/tcp $ sudo firewall-cmd --reload
Per accedere a Graylog su un browser, sfoglia l'indirizzo IP del tuo server come mostrato:
http://IP server:9000
Assicurati di accedere con il nome utente admin e la password che hai impostato per l'utente root come specificato nel file di configurazione.
Questo conclude il nostro argomento di oggi. Ti abbiamo seguito una procedura dettagliata per l'installazione di Graylog su CentOS 8. Condividi il tuo feedback e commenti.