Na primeira parte, demonstramos a instalação e configuração básica do Kibana. Uma vez funcional, os próximos ajustes serão mais simples. Veremos agora como exportar os logs a um servidor central.
Os logs podem ser exportados de diferentes maneiras.
Alguns administradores optam pela configuração de um servidor syslog central. Mas, neste caso, teríamos que configurar a saída de log do Squid para syslog também e ajustar a configuração do Squid e syslog para evitar duplicidade.
Por outro lado, com o filebeat, a configuração é mais simples e eficiente, visto que um serviço externo estará monitorando e exportando qualquer alteração no arquivo access.log de maneira independente.
Configuração do servidor logstash
“Nos exemplos com *ip_servidor_logstash* configure o endereço IP do servidor”
1. Ativando um socket para o recebimento das mensagens de log
– Preserve as definições de filtragem (filter) e saída (output).
– Em ambientes de maior complexidade, o serviço logstash é dedicado e não existirá definição de arquivo local (sem o bloco file).input { file { type => "squid" start_position => "beginning" path => [ "/var/log/squid/access.log" ] } beats { host => "ip_servidor_logstash" port => 5044 ssl => false } } ...
2. Reinicie o serviço e verifique se o socket está disponível
root@elk-server:~# systemctl restart logstash root@elk-server:~# netstat -antlup | grep 5044 tcp6 0 0 10.10.10.10:5044 :::* LISTEN 18280/java
Instalação e configuração do agente filebeat nos proxies (ideal para ambientes distribuídos)
1. Instalação do agente (não requer a instalação do Java)
sudo wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - sudo 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-get update sudo apt-get -y install filebeat
2. Edição do arquivo /etc/filebeat/filebeat.yml
– As alterações estão em negrito
– Comente as definições em output.elasticsearch... filebeat.prospectors: # Each - is a prospector. Most options can be set at the prospector level, so # you can use different prospectors for various configurations. # Below are the prospector specific configurations. - input_type: log # Paths that should be crawled and fetched. Glob based paths. paths: - /var/log/squid/access.log document_type: squid ... #----------------------------- Logstash output -------------------------------- output.logstash: # The Logstash hosts hosts: ["ip_servidor_logstash:5044"] bulk_max_size: 1024
Até então, como o filtro grok do servidor está condicionado ao “tipo squid“, é necessário definir document-type como “squid” em todos os agentes. Porém, na terceira parte, esta configuração sofrerá uma pequena alteração porque utilizaremos o document-type como parte do índice para diferenciar a origem e controlar o nível de acesso.
Repare que, no servidor, a opção “ssl” foi definida como “false” porque o tráfego não é tão sensível a ponto de justificar um overhead adicional com criptografia. Caso exista interesse em ativar, consulte a documentação do logstash.
No Comments Yet