ULC Lab · implementação reproduzível
Laboratório: Pipeline Completo de Logs com Elastic Stack (ELK) em Ambiente Local
Você terá um pipeline funcional de coleta, indexação e visualização de logs usando Elastic Stack em VMs locais. O laboratório leva entre 90 e 120 minutos para ser concluído.

- Duração estimada
- 90 min
- Passos
- 12
- Validações
- 5
- Versões da documentação consultada
- ElasticSearch a versão estável atual · Logstash a versão estável atual · Kibana a versão estável atual · Filebeat a versão estável atual
Este laboratório ensina a montar, do zero, um pipeline de logs corporativos com Elastic Stack, usando apenas software livre. Você vai instalar ElasticSearch, Logstash, Kibana e Filebeat em máquinas virtuais, configurar o fluxo de logs de um servidor Linux até a visualização no Kibana, e validar cada etapa. O objetivo é entender, na prática, como cada componente se conecta e entrega valor em ambientes reais, como em redes de fibra dedicadas da Upnetix.
Topologia
Três máquinas virtuais: uma para ElasticSearch, uma para Logstash e Kibana, e uma para Filebeat (coletor de logs). Filebeat envia logs para Logstash, que processa e repassa para ElasticSearch. Kibana acessa ElasticSearch para visualização. Endereços de exemplo: 192.168.56.10 (ElasticSearch), 192.168.56.11 (Logstash/Kibana), 192.168.56.12 (Filebeat).
[Filebeat VM]
(192.168.56.12)
|
v
[Logstash + Kibana VM]
(192.168.56.11)
|
v
[ElasticSearch VM]
(192.168.56.10)
Kibana acessa ElasticSearch na 10.Equipamentos e software
| Item | Requisito, licença ou versão |
|---|---|
| VM ElasticSearch | 2 vCPU, 4 GB RAM, 10 GB disco, porta 9200 aberta |
| VM Logstash/Kibana | 2 vCPU, 4 GB RAM, 10 GB disco, portas 5601 e 5044 abertas |
| VM Filebeat | 1 vCPU, 1 GB RAM, 5 GB disco, acesso de saída na 5044 |
| ElasticSearch | Apache 2.0 · a versão estável atual |
| Logstash | Apache 2.0 · a versão estável atual |
| Kibana | Apache 2.0 · a versão estável atual |
| Filebeat | Apache 2.0 · a versão estável atual |
Roteiro
- Preparar as VMs
Crie três VMs Linux (Ubuntu Server recomendado) com os endereços IP indicados. Isso isola os papéis e simula um ambiente real.
O que você deve ver: Três VMs acessíveis entre si via ping.
- Instalar ElasticSearch
No VM 192.168.56.10, instale ElasticSearch. Ele é o núcleo de indexação e busca.
sudo apt update sudo apt install apt-transport-https wget -y wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - echo "deb https://artifacts.elastic.co/packages/8.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-8.x.list sudo apt update sudo apt install elasticsearch -yO que você deve ver: ElasticSearch instalado, serviço disponível na porta 9200.
- Configurar ElasticSearch
Edite o arquivo de configuração para aceitar conexões externas e definir o cluster.
sudo nano /etc/elasticsearch/elasticsearch.yml # Ajuste: network.host: 0.0.0.0 cluster.name: elk-lab node.name: es01O que você deve ver: Arquivo salvo, configuração aplicada.
- Iniciar ElasticSearch
Ative e inicie o serviço.
sudo systemctl enable elasticsearch sudo systemctl start elasticsearchO que você deve ver: Serviço iniciado, status ativo.
- Instalar Logstash e Kibana
Na VM 192.168.56.11, instale Logstash e Kibana. Logstash processa logs, Kibana visualiza.
sudo apt update sudo apt install logstash kibana -yO que você deve ver: Ambos instalados, sem erros.
- Configurar Logstash para receber Filebeat
Crie um pipeline Logstash para receber logs do Filebeat na porta 5044 e enviar para ElasticSearch.
sudo nano /etc/logstash/conf.d/01-beats-input.conf input { beats { port => 5044 } } sudo nano /etc/logstash/conf.d/30-elasticsearch-output.conf output { elasticsearch { hosts => ["http://192.168.56.10:9200"] index => "lab-logs-%{+YYYY.MM.dd}" } }O que você deve ver: Arquivos criados, sintaxe correta.
- Iniciar Logstash e Kibana
Ative e inicie Logstash e Kibana.
sudo systemctl enable logstash kibana sudo systemctl start logstash kibanaO que você deve ver: Ambos em execução, portas 5044 (Logstash) e 5601 (Kibana) abertas.
- Instalar Filebeat
Na VM 192.168.56.12, instale Filebeat. Ele coleta logs locais e envia para Logstash.
sudo apt update sudo apt install filebeat -yO que você deve ver: Filebeat instalado.
- Configurar Filebeat para enviar logs do syslog
Edite o filebeat.yml para ativar o módulo system e enviar para Logstash.
sudo filebeat modules enable system sudo nano /etc/filebeat/filebeat.yml # Ajuste: output.logstash: hosts: ["192.168.56.11:5044"]O que você deve ver: Configuração salva, módulo system ativado.
- Iniciar Filebeat
Ative e inicie Filebeat.
sudo systemctl enable filebeat sudo systemctl start filebeatO que você deve ver: Filebeat em execução, logs sendo enviados.
- Acessar Kibana
No navegador, acesse http://192.168.56.11:5601. Kibana permite visualizar os dados indexados.
O que você deve ver: Tela inicial do Kibana carregada.
- Configurar Index Pattern no Kibana
No Kibana, crie um index pattern para 'lab-logs-*'. Isso permite buscar e visualizar os logs.
O que você deve ver: Index pattern criado, logs visíveis na Discover.
Como saber que funcionou
| Teste | Comando | Critério |
|---|---|---|
| ElasticSearch responde | curl http://192.168.56.10:9200 | Retorno JSON com informações do cluster. |
| Logstash escutando na porta 5044 | sudo netstat -plnt | grep 5044 | Porta 5044 aberta e associada ao processo logstash. |
| Filebeat envia logs | sudo tail -f /var/log/filebeat/filebeat | Mensagens de envio para Logstash sem erros. |
| Kibana acessível | curl -I http://192.168.56.11:5601 | Resposta HTTP 200. |
| Logs visíveis no Discover | Logs do sistema da VM Filebeat aparecem no Kibana. |
Troubleshooting
| Sintoma | Causa provável | Correção |
|---|---|---|
| Kibana não carrega | Kibana não iniciado ou porta 5601 bloqueada | Verifique status do serviço e regras de firewall. |
| Logs não aparecem no Kibana | Filebeat não envia ou Logstash não processa | Cheque logs do Filebeat e Logstash, valide conexões e permissões. |
| ElasticSearch não responde | Serviço não iniciado ou configuração de rede incorreta | Revise elasticsearch.yml e status do serviço. |
| Filebeat falha ao conectar ao Logstash | Porta 5044 fechada ou erro no output.logstash | Confirme IP, porta e firewall. |
| Logstash não envia para ElasticSearch | Erro na configuração do output | Revise o arquivo de output e consulte a documentação. |
Segurança e hardening
- Altere senhas padrão do ElasticSearch e Kibana após o laboratório.
- Restrinja acesso externo às portas 9200, 5044 e 5601.
- Implemente autenticação e TLS em produção (consulte a documentação).
- Desabilite módulos e outputs não utilizados.
Checklist final
- Publicado
- 09/09/2026
- Última revisão
- 09/09/2026
- Versão do conteúdo
- 1.0
- Referências
- 0 oficiais
- Revisão técnica
- redação e revisão por IA, URLs conferidas na publicação
- Status
- Atual
