Como Instalar o Wazuh no Docker (Passo a Passo para Iniciantes e Profissionais)

Aprenda a instalar o Wazuh (SIEM/XDR) no Docker com este guia completo e otimizado. Configure o Wazuh Indexer, Manager e Dashboard em minutos e fortal
Instalar Wazuh no Docker (Passo a Passo)

Tutorial Definitivo: Como Instalar o Wazuh no Docker

SIEM / XDR open source em containers – Passo a passo completo para iniciantes e profissionais

🔍 O que é o Wazuh e Por Que Instalá-lo no Docker?

O Wazuh é uma plataforma de segurança de código aberto que oferece recursos de SIEM (Security Information and Event Management) e XDR (Extended Detection and Response). Ele é composto por três componentes principais:

  • Wazuh Indexer: Baseado no OpenSearch, armazena e indexa dados de segurança.
  • Wazuh Server (Manager): Analisa eventos, aplica regras e gerencia agentes.
  • Wazuh Dashboard: Interface web para visualização e gerenciamento.

Instalar o Wazuh no Docker é a maneira mais rápida e isolada de colocar essa poderosa ferramenta para funcionar. Com containers, você evita conflitos de dependências, facilita atualizações e pode replicar o ambiente em produção ou laboratório.

💡 Dica: Se você ainda não tem o Docker, confira nosso post sobre Como Instalar Docker no Ubuntu (link interno).

📋 Pré-requisitos (Verifique Antes de Começar)

Antes de colocar a mão no terminal, certifique-se de que sua máquina atende aos requisitos mínimos:

  • Sistema Operacional: Linux (Ubuntu 20.04/22.04 recomendado), Windows (com WSL2) ou macOS.
  • Arquitetura: AMD64 ou ARM64.
  • CPU: Mínimo 4 cores (recomendado).
  • RAM: Mínimo 8 GB (o Wazuh Indexer é "faminto" por memória).
  • Disco: Pelo menos 50 GB livres.
  • Docker Engine e Docker Compose instalados (versões mais recentes).
  • Git instalado.
  • Acesso root ou usuário com permissões sudo.

🚀 Passo a Passo: Instalação do Wazuh no Docker

1. Instalar Docker e Docker Compose (Se Necessário)

Se você está no Linux (Ubuntu/Debian), execute:

sudo apt update
sudo apt install ca-certificates curl git
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo tee /etc/apt/keyrings/docker.asc
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin

Verifique a instalação:

docker --version
docker compose version

2. Ajuste Crítico do Kernel (Obrigatório!)

O Wazuh Indexer (OpenSearch) exige que o parâmetro vm.max_map_count seja aumentado. Ignorar isso fará o container falhar silenciosamente.

Aplique temporariamente:

sudo sysctl -w vm.max_map_count=262144

Para tornar permanente:

echo "vm.max_map_count=262144" | sudo tee -a /etc/sysctl.conf

3. Clonar o Repositório Oficial do Wazuh

git clone https://github.com/wazuh/wazuh-docker.git -b v4.14.4
cd wazuh-docker/single-node
📌 Nota: A versão v4.14.4 é a estável no momento da escrita deste post. Verifique sempre a última versão no GitHub.

4. Gerar Certificados SSL (Segurança entre Containers)

O Wazuh usa certificados para comunicação criptografada entre os componentes. Para gerá-los automaticamente:

docker compose -f generate-indexer-certs.yml run --rm generator

Isso criará a pasta config/wazuh_indexer_ssl_certs com todos os certificados necessários.

5. Configurar Senhas (Arquivo .env)

Crie o arquivo de variáveis de ambiente:

cp .env.example .env
nano .env

Edite as linhas com senhas fortes:

WAZUH_VERSION=4.14.4
WAZUH_INDEXER_PASSWORD=ColoqueUmaSenhaForteAqui
WAZUH_DASHBOARD_PASSWORD=OutraSenhaForte
🛡️ Segurança: Use senhas com letras maiúsculas, minúsculas, números e símbolos.

6. Iniciar os Containers

Agora, suba a stack completa:

docker compose up -d

Aguarde alguns minutos enquanto as imagens são baixadas e os serviços iniciam. Você pode acompanhar os logs com:

docker compose logs -f

Quando o dashboard estiver pronto, verá mensagens como "Wazuh dashboard started".

7. Verificar o Status dos Serviços

docker compose ps

Todos os três serviços (wazuh.manager, wazuh.indexer, wazuh.dashboard) devem estar com status Up e healthy.

🖥️ Acessando o Wazuh Dashboard

Abra seu navegador e acesse:

https://<IP_DO_SERVIDOR>

(ou https://localhost se for na mesma máquina)

O navegador mostrará um aviso de certificado autoassinado – prossiga normalmente.

Credenciais padrão:

  • Usuário: admin
  • Senha: a que você definiu no arquivo .env (ou SecretPassword se não alterou).

Pronto! Você está dentro do Wazuh.

🧪 Primeiros Passos: Instalar um Agente de Teste

Para começar a coletar dados, instale um agente em uma máquina (pode ser a mesma do servidor).

  1. No dashboard, vá em AgentsDeploy new agent.
  2. Escolha o sistema operacional (ex: Linux).
  3. Informe o IP do seu Wazuh Manager.
  4. Copie o comando gerado e execute na máquina alvo.

Exemplo para Linux:

curl -s https://packages.wazuh.com/4.x/wazuh-install.sh | bash -s -- -a -i -s 192.168.1.100

Após alguns segundos, o agente aparecerá como Active no dashboard.

🔒 Dicas de Segurança para Produção

  • Altere as senhas padrão: As credenciais admin/SecretPassword são bem conhecidas. Siga a documentação oficial para troca de senhas.
  • Use certificados válidos: Substitua os certificados autoassinados por emitidos por uma CA confiável (Let's Encrypt, por exemplo).
  • Backup regular dos volumes: Os dados ficam em volumes Docker (wazuh-indexer, wazuh-manager). Faça backups periódicos.
  • Limite recursos: Edite o docker-compose.yml para adicionar limites de memória e CPU.

🐛 Troubleshooting: Problemas Comuns e Soluções

Problema Possível Causa Solução
Container do indexer não inicia vm.max_map_count baixo sudo sysctl -w vm.max_map_count=262144
Dashboard retorna erro 503 Indexer ainda iniciando Aguarde 2-3 minutos e recarregue a página
Senha padrão não funciona Senhas não definidas no .env Verifique os logs com docker compose logs wazuh.indexer e procure pela senha gerada
Porta 443 já em uso Outro serviço usando HTTPS Mapeie outra porta no docker-compose.yml (ex: "8443:443")

❓ Perguntas Frequentes (FAQ)

▶ Posso instalar o Wazuh no Docker no Windows?
Sim! Desde que use o Docker Desktop com WSL2 habilitado. O comando sysctl deve ser executado dentro do terminal WSL2.
▶ Qual a diferença entre single-node e multi-node?
Single-node: Todos os componentes em um container cada. Ideal para testes. Multi-node: Vários nós do indexer (cluster) e managers (master/worker). Oferece alta disponibilidade e escalabilidade.
▶ O Wazuh no Docker é adequado para produção?
Sim, desde que você configure corretamente os recursos, backups e segurança. A própria Wazuh Inc. recomenda Docker para produção em determinados cenários.
▶ Como faço para monitorar meus containers Docker com Wazuh?
Após instalar o agente no host Docker, ative o Docker listener no arquivo ossec.conf do agente. Consulte a documentação oficial.

✅ Conclusão

Você acabou de instalar uma das melhores plataformas de segurança open source do mercado usando Docker. Com o Wazuh em execução, você pode começar a explorar recursos como:

  • FIM (File Integrity Monitoring)
  • Detecção de vulnerabilidades
  • Análise de logs e conformidade (PCI DSS, HIPAA)
  • Resposta a incidentes

Se este tutorial foi útil, compartilhe com seus colegas de segurança e deixe um comentário abaixo contando sua experiência.

Próximos passos sugeridos:

🔗 Referências e Links Úteis

Postar um comentário