Graylog: Instalação Completa em Linux (Ubuntu, CentOS, VirtualBox)

Interessado em otimizar a gestão de logs nos seus servidores Linux? Experimente o Graylog. Com este sistema, você terá um painel web completo, que organiza os logs do sistema de forma clara e eficiente.

O Graylog utiliza diversas tecnologias, como Elasticsearch, Java e MongoDB. Para usar o software, você precisará de um servidor com Ubuntu, CentOS/RedHat Enterprise Linux ou uma máquina capaz de hospedar máquinas virtuais Oracle VirtualBox.

Instruções para Máquina Virtual

Se você prefere utilizar máquinas virtuais, o Graylog oferece uma versão virtual para VirtualBox. Para começar, abra um terminal e siga as instruções abaixo para instalar a versão mais recente.

Passo 1: Antes de iniciar, certifique-se de ter o VirtualBox instalado no seu servidor host. Caso contrário, instale-o seguindo os comandos abaixo, de acordo com sua distribuição Linux:

Ubuntu

sudo apt install virtualbox

Debian

sudo apt-get install virtualbox

Arch Linux

sudo pacman -S virtualbox

Fedora

sudo dnf install VirtualBox

OpenSUSE

sudo zypper install virtualbox

Linux genérico

O VirtualBox da Oracle suporta diversas distribuições Linux. A versão mais recente pode ser baixada aqui.

Passo 2: Abra o VirtualBox e mantenha a janela ativa. Em seguida, acesse a página de download do Graylog OVA e obtenha a versão mais recente.

Passo 3: Abra o gerenciador de arquivos e vá para “Downloads”. Localize o arquivo Graylog OVA, clique com o botão direito e escolha “Abrir com VirtualBox”.

Passo 4: Ao clicar em “importar”, o VirtualBox perguntará se você deseja importar o dispositivo. Confirme e siga o processo de importação do Graylog para o VirtualBox.

Passo 5: Após a importação, clique em “configurações” no VirtualBox e ajuste as configurações de rede da máquina virtual. Em seguida, inicie a VM do Graylog, faça login com o usuário “ubuntu” (a senha também é “ubuntu”) e insira os comandos abaixo:

sudo graylog-ctl set-email-config <servidor smtp> [--port=<porta smtp> --user=<nome de usuário> --password=<senha>]
sudo graylog-ctl set-admin-password <senha>
sudo graylog-ctl set-timezone <sigla do fuso horário>
sudo graylog-ctl reconfigure
sudo apt-get install -y open-vm-tools

Passo 6: Abra o endereço HTTP que a VM do Graylog exibir na tela em um navegador para finalizar a configuração.

Instalação do Graylog no Servidor Ubuntu

Deseja instalar o Graylog diretamente no seu servidor Ubuntu? Ótima escolha! O Ubuntu é um dos sistemas operacionais principais com suporte dos desenvolvedores.

Antes de começar, é fundamental atualizar o Ubuntu e instalar os patches mais recentes. Para isso, abra um terminal, conecte-se via SSH e execute os comandos de atualização e upgrade:

sudo apt update
sudo apt upgrade -y

Em seguida, use o comando Apt para instalar os pacotes necessários para o Graylog e suas dependências:

sudo apt install apt-transport-https openjdk-8-jre-headless uuid-runtime pwgen

Após configurar os pacotes básicos, instale o sistema MongoDB:

sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
sudo apt update
sudo apt install -y mongodb-org

Inicie o banco de dados MongoDB:

sudo systemctl daemon-reload
sudo systemctl enable mongod.service
sudo systemctl restart mongod.service

Agora, instale o Elasticsearch, que o Graylog usa como backend:

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list
sudo apt update && sudo apt install elasticsearch

Edite o arquivo YML do Elasticsearch com o editor Nano:

sudo nano /etc/elasticsearch/elasticsearch.yml

Pressione Ctrl + W, digite “cluster.name:” na caixa de pesquisa e pressione Enter. Remova o símbolo # e adicione “graylog” ao final. Deve ficar assim:

cluster.name: graylog

Reinicie o Elasticsearch:

sudo systemctl daemon-reload
sudo systemctl enable elasticsearch.service
sudo systemctl restart elasticsearch.service

Com o Elasticsearch e MongoDB configurados, podemos instalar o Graylog no Ubuntu. Execute os seguintes comandos:

wget https://packages.graylog2.org/repo/packages/graylog-2.4-repository_latest.deb
sudo dpkg -i graylog-2.4-repository_latest.deb
sudo apt-get update && sudo apt-get install graylog-server

Gere uma chave secreta usando o pwgen:

pwgen -N 1 -s 96

Copie a saída. Abra o arquivo server.conf no Nano e adicione-a após “password_secret”:

sudo nano /etc/graylog/server/server.conf

Salve e feche o arquivo. Agora, gere a senha de root para o Graylog:

echo -n "Enter Password: " && head -1 </dev/stdin | tr -d 'n' | sha256sum | cut -d" " -f1

Copie a saída e cole-a após “root_password_sha2” no arquivo server.conf.

Com as senhas definidas, configure o endereço web padrão. No arquivo server.conf, localize “rest_listen_uri” e “web_listen_uri” e ajuste-os como nos exemplos abaixo:

rest_listen_uri = https://endereço-ip-local-do-servidor:12900/
web_listen_uri = https://endereço-ip-local-do-servidor:9000/

Salve o arquivo e reinicie o Graylog:

sudo systemctl daemon-reload
sudo systemctl restart graylog-server

Acesse o servidor Graylog no seguinte endereço:

Nota: o login padrão é admin/admin

https://endereço-ip-local-do-servidor/

Instalação do Graylog no CentOS/Rhel

Usuários do CentOS e RHEL, vocês também podem experimentar o Graylog! O suporte para seu sistema operacional é excelente. Para instalar, você precisa ter o CentOS 7 ou o equivalente RHEL.

O primeiro passo é instalar as dependências necessárias. Abra um terminal e digite os comandos Yum abaixo:

sudo yum install java-1.8.0-openjdk-headless.x86_64 
sudo yum install epel-release
sudo yum install pwgen

Após as dependências básicas, instale o MongoDB. Para isso, adicione o repositório de terceiros ao seu sistema:

sudo touch /etc/yum.repos.d/mongodb-org-3.6.repo

Abra o arquivo repo no Nano:

sudo nano /etc/yum.repos.d/mongodb-org-3.6.repo

Cole o código abaixo:

[mongodb-org-3.6]
name=Repositório MongoDB
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.6/x86_64/
gpgcheck=1
habilitado=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc

Salve o arquivo.

Inicie o MongoDB:

sudo chkconfig --add mongod
sudo systemctl daemon-reload
sudo systemctl enable mongod.service
sudo systemctl start mongod.service

Instale o Elasticsearch, pois o Graylog depende dele:

rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
sudo touch /etc/yum.repos.d/elasticsearch.repo
sudo nano  /etc/yum.repos.d/elasticsearch.repo

Cole o código abaixo:

[elasticsearch-5.x]
name=Repositório Elasticsearch para pacotes 5.x
baseurl=https://artifacts.elastic.co/packages/5.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
habilitado=1
atualização automática=1
tipo=rpm-md

Salve e instale o Elasticsearch:

sudo yum install elasticsearch

Agora, edite o arquivo de configuração do Elasticsearch, elasticsearch.yml:

sudo nano /etc/elasticsearch/elasticsearch.yml

Pressione Ctrl + W e digite “cluster.name:” na caixa de pesquisa. Remova o símbolo # e adicione “graylog” ao final do texto.

Salve o arquivo e reinicie o Elasticsearch:

sudo chkconfig --add elasticsearch
sudo systemctl daemon-reload
sudo systemctl enable elasticsearch.service
sudo systemctl restart elasticsearch.service

Com as dependências instaladas, podemos instalar o Graylog. Para habilitar o repositório, execute:

sudo rpm -Uvh https://packages.graylog2.org/repo/packages/graylog-2.4-repository_latest.rpm

Em seguida, instale o Graylog:

sudo yum install graylog-server

Gere uma chave secreta para o servidor usando pwgen:

pwgen -N 1 -s 96

Copie a saída e cole-a após a linha “password_secret” em server.conf:

sudo nano /etc/graylog/server/server.conf

Salve as alterações. Gere a senha de root:

echo -n "Enter Password: " && head -1 </dev/stdin | tr -d 'n' | sha256sum | cut -d" " -f1

Copie a saída e cole-a depois de “root_password_sha2” no arquivo server.conf.

Com as senhas definidas, localize “rest_listen_uri” e “web_listen_uri” no arquivo de configuração e ajuste-os para:

rest_listen_uri = https://endereço-ip-local-do-servidor:12900/
web_listen_uri = https://endereço-ip-local-do-servidor:9000/

Salve e reinicie o Graylog:

sudo chkconfig --add graylog-server
sudo systemctl daemon-reload
sudo systemctl enable graylog-server.service
sudo systemctl start graylog-server.service

Se tudo estiver correto, você poderá acessar o Graylog no endereço abaixo:

Nota: o login padrão é admin/admin

https://endereço-ip-local-do-servidor/