Quando um sistema operacional como o Linux está em execução, muitos eventos acontecem e processos que são executados em segundo plano para permitir o uso eficiente e confiável dos recursos do sistema. Esses eventos podem ocorrer no software do sistema, como o processo init ou systemd, ou em aplicativos de usuário, como Apache, MySQL, FTP e muitos outros.
Para entender o estado do sistema e dos diferentes aplicativos e como eles estão funcionando, os Administradores de Sistema precisam revisar os arquivos de log diariamente em ambientes de produção.
Você pode imaginar ter que revisar arquivos de log de várias áreas do sistema e aplicativos, é aí que os sistemas de log se tornam úteis. Eles ajudam a monitorar, revisar, analisar e até mesmo gerar relatórios a partir de diferentes arquivos de log conforme configurado por um Administrador de Sistema.
Neste artigo, vamos analisar os quatro sistemas de gerenciamento de logs de código aberto mais utilizados no Linux hoje, o protocolo de logging padrão na maioria, se não em todas as distribuições hoje, é o Syslog.
Sumário
1. O ManageEngine EventLog Analyzer
ManageEngine EventLog Analyzer é uma solução de gerenciamento de logs local projetada para empresas de todos os tamanhos em diversos setores, como tecnologia da informação, saúde, varejo, finanças, educação e outros. A solução oferece aos usuários tanto a coleta de logs baseada em agente quanto sem agente, capacidades de análise de logs, um poderoso mecanismo de busca de logs e opções de arquivamento de logs.
Com funcionalidade de auditoria de dispositivos de rede, permite aos usuários monitorar seus dispositivos de usuários finais, firewalls, roteadores, switches e mais em tempo real. A solução exibe os dados analisados na forma de gráficos e relatórios intuitivos.
Os mecanismos de detecção de incidentes do EventLog Analyzer, como correlação de logs de eventos, inteligência de ameaças, implementação do framework MITRE ATT&CK, análise avançada de ameaças e mais, ajudam a identificar ameaças de segurança assim que ocorrem.
O sistema de alerta em tempo real alerta os usuários sobre atividades suspeitas, para que possam priorizar ameaças de segurança de alto risco. Com um sistema de resposta a incidentes automatizado, os Centros de Operações de Segurança (SOCs) podem mitigar ameaças potenciais.
A solução também ajuda os usuários a cumprirem várias normas de conformidade de TI, como PCI DSS, ISO 27001, GLBA, SOX, HIPAA, CCPA, GDPR e outras. Serviços baseados em assinatura são oferecidos dependendo do número de fontes de log para monitoramento. O suporte é disponibilizado aos usuários via telefone, vídeos de produtos e uma base de conhecimento online.

2. Graylog 2
Graylog é uma ferramenta líder de gerenciamento de logs centralizados de código aberto e robusta que é amplamente utilizada para coletar e revisar logs em diversos ambientes, incluindo ambientes de teste e produção. É fácil de configurar e altamente recomendado para pequenas empresas.

Graylog ajuda você a coletar facilmente dados de vários dispositivos, incluindo switches de rede, roteadores e pontos de acesso sem fio. Ele se integra ao mecanismo de análise do Elasticsearch e utiliza o MongoDB para armazenar dados, e os logs coletados oferecem insights profundos e são úteis na solução de falhas e erros do sistema.
Com o Graylog, você obtém uma interface Web limpa e intuitiva com painéis bacanas que ajudam a rastrear dados de forma simples. Além disso, você recebe um conjunto de ferramentas e funcionalidades que ajudam na auditoria de conformidade, busca por ameaças e muito mais. Você pode habilitar notificações de modo que um alerta seja acionado quando uma determinada condição é atendida ou ocorre um problema.
No geral, o Graylog faz um trabalho bastante bom de recolher grandes quantidades de dados e simplifica a pesquisa e análise de dados. A versão mais recente é Graylog 5.2.4 e oferece novos recursos como o modo escuro, integração com o Slack e ElasticSearch e muito mais.
3. Logcheck
Logcheck é mais uma ferramenta de monitoramento de logs de código aberto que é executada como uma tarefa cron. Ele passa por milhares de arquivos de log para detectar violações ou eventos do sistema que são acionados. O Logcheck então envia um resumo detalhado dos alertas para um endereço de e-mail configurado para alertar as equipes operacionais sobre um problema como uma violação não autorizada ou uma falha do sistema.

São desenvolvidos três níveis diferentes de filtragem de arquivos de log neste sistema de registro, que incluem:
- Paranóico: é destinado a sistemas de alta segurança que estão executando o menor número possível de serviços.
- Servidor: este é o nível de filtragem padrão para o logcheck e suas regras são definidas para muitos diferentes daemons do sistema. As regras definidas sob o nível paranóico também estão incluídas sob este nível.
- Estação de Trabalho: é para sistemas protegidos e ajuda a filtrar a maioria das mensagens. Também inclui regras definidas nos níveis paranóico e servidor.
O logcheck também é capaz de classificar as mensagens a serem relatadas em três camadas possíveis, que incluem eventos de segurança, eventos do sistema e alertas de ataque ao sistema. Um Administrador de Sistema pode escolher o nível de detalhes para o qual os eventos do sistema são relatados, dependendo do nível de filtragem, embora isso não afete os eventos de segurança e os alertas de ataque ao sistema.
O logcheck fornece as seguintes características:
- Modelos de relatório predefinidos.
- A mechanism for filtering logs using regular expressions.
- Notificações instantâneas por e-mail.
- Alertas de segurança instantâneos.
4. Logwatch
Logwatch é uma aplicação de coleta e análise de logs de código aberto e altamente personalizável. Ele analisa logs do sistema e de aplicativos e gera um relatório sobre como os aplicativos estão sendo executados. O relatório é entregue seja na linha de comando ou através de um endereço de e-mail dedicado.

Você pode facilmente personalizar o Logwatch de acordo com suas preferências modificando os parâmetros no caminho /etc/logwatch/conf. Ele também fornece algo extra na forma de scripts PERL pré-escritos para facilitar a análise de registros.
O Logwatch vem com uma abordagem escalonada e existem 3 locais principais onde os detalhes de configuração são definidos:
- /usr/share/logwatch/default.conf/*
- /etc/logwatch/conf/dist.conf/*
- /etc/logwatch/conf/*
Todas as configurações padrão são definidas no arquivo /usr/share/logwatch/default.conf/logwatch.conf. A prática recomendada é deixar este arquivo intacto e, em vez disso, criar seu próprio arquivo de configuração no caminho /etc/logwatch/conf/ copiando o arquivo de configuração original e, em seguida, definindo suas configurações personalizadas.
A versão mais recente do Logwatch é a versão 7.10 e ela fornece suporte para consultar diretamente o diário systemd usando journalctl. Se você não puder investir em uma ferramenta proprietária de gerenciamento de registros, o Logwatch lhe dará tranquilidade sabendo que todos os eventos serão registrados e notificações entregues caso algo saia do controle.
5. Logstash
O Logstash é um pipeline de processamento de dados de código aberto do lado do servidor que aceita dados de uma infinidade de fontes, incluindo arquivos locais ou sistemas distribuídos como S3. Em seguida, ele processa os logs e os encaminha para plataformas como o Elasticsearch, onde são analisados e arquivados posteriormente. É uma ferramenta bastante poderosa, pois pode ingerir volumes de logs de várias aplicações e depois enviá-los para diferentes bancos de dados ou mecanismos ao mesmo tempo.

O Logstash estrutura dados não estruturados e realiza pesquisas de geolocalização, anonimiza dados pessoais e dimensiona em vários nós também. Há uma extensa lista de fontes de dados para as quais você pode fazer o Logstash escutar, incluindo SNMP, batimentos cardíacos, Syslog, Kafka, puppet, log de eventos do Windows, etc.
O Logstash depende de ‘beats’, que são remetentes de dados leves que alimentam dados para o Logstash para análise e estruturação, etc. Os dados são então enviados para outros destinos, como Google Cloud, MongoDB e Elasticsearch para indexação. O Logstash é um componente-chave do Elastic Stack que permite aos usuários reunir dados em qualquer formato, analisá-los e visualizá-los em painéis interativos.
O mais importante é que o Logstash conta com amplo suporte da comunidade e atualizações regulares.
Resumo
Isso é tudo por enquanto e lembre-se de que estes não são todos os sistemas de gerenciamento de logs disponíveis que você pode usar no Linux. Vamos continuar revisando e atualizando a lista em artigos futuros, espero que você ache este artigo útil e pode nos informar sobre outras ferramentas ou sistemas de logging importantes por aí deixando um comentário.
Source:
https://www.tecmint.com/best-linux-log-monitoring-and-management-tools/