Como usar Swatchdog para monitorar Logs no Linux

Como administradores de sistema devemos sempre ter as melhores ferramentas e aplicativos que nos permitam realizar tarefas de monitoramento e supervisão de uma forma muito mais abrangente, ou seja, obter não apenas dados superficiais, mas completos sobre cada ação que ocorre tanto em nível interno quanto externo dentro do sistema operacional.

Uma das melhores maneiras de acessar essas informações é por meio de logs ou registros de eventos nos quais vários dados são armazenados, como:

  • Inicializações, reinicializações e desligamentos do sistema com ou sem sucesso
  • Acesso a aplicativos e programas
  • Eventos de segurança
  • Registros de conexão de entrada e saída e muito mais.

Uma das melhores opções para acessar o monitoramento desses logs é o Swatchdog e portanto no Solvetic explicaremos como instalá-lo e utilizá-lo no Linux.

O que é SwatchdogSwatchdog é um script simples baseado em Perl que foi desenvolvido para monitorar arquivos de log ativos em sistemas do tipo Unix como o Linux.

Swatchdog é capaz de monitorar quase qualquer tipo de log no Linux e esses logs são produzidos pela função syslog do Unix e será possível ver os logs baseados em expressões regulares que podemos definir no arquivo de configuração do utilitário.

1. Como instalar o Swatchdog no Linux


Para este caso usaremos o Ubuntu 18.04, o pacote swatchdog está disponível para instalação nos repositórios oficiais de cada uma das principais distribuições do Linux como um pacote "swatch" através de um gerenciador de pacotes, para sua instalação podemos executar o seguinte com base na distribuição usado:
 sudo apt install swatch (Ubuntu / Debian) sudo yum install epel-release && sudo yum install swatch (RHEL / CentOS) sudo dnf install swatch (Fedora 22)

PROLONGAR

Pressione a tecla S para confirmar o download e instalação do Swatchdog.

Se quisermos instalar a versão mais recente do Swatchdog, ela deve ser compilada a partir da fonte usando os seguintes comandos em todas as distribuições Linux:

 git clone https://github.com/ToddAtkins/swatchdog.git cd swatchdog / perl Makefile.PL make sudo make install sudo make realclean
Com esses comandos, você terá tudo pronto.

2. Como configurar o Swatchdog no Linux


Uma vez que o processo de instalação do Swatchdog tenha sido completado, será necessário criar o arquivo de configuração, seu local padrão é /home/$USER/.swatchdogrc ou .swatchrc, para determinar quais tipos de padrões de expressão são usados. vai procurar e que tipo de ação deve ser executada ao combinar um padrão.

Passo 1
Para criar este arquivo, usaremos uma das seguintes opções:

 sudo touch /home/solvetic/.swatchdogrc sudo touch /home/solvetic/.swatchrc

PROLONGAR

ObservaçãoO campo Solvetic deve ser substituído pelo respectivo usuário.

Agora vamos adicionar uma expressão regular neste arquivo e cada linha deve conter uma palavra-chave e um valor separados por um espaço ou um sinal de igual (=), será necessário especificar um padrão e uma ação a ser executada no evento que um padrão.

Acessamos o arquivo usando o editor desejado:

 sudo nano swatchdogrc
Passo 2
Lá iremos colar, como exemplo, o seguinte:
 watchfor / sudo / echo red [email protected], subject = "Ação Sudo"

PROLONGAR

Salvamos as alterações usando as teclas:

Ctrl + O

e deixamos o editor usando:

Ctrl + X

etapa 3
Neste exemplo, a expressão regular é uma string literal chamada "sudo", o que significa que toda vez que a string sudo for executada no arquivo de log, ele imprimirá um texto em vermelho no terminal e a ação será especificada no e-mail. executado, para que tenhamos informações constantes sobre as ações realizadas.

Após sua configuração, swatchdog lê o arquivo de log / var / log / syslog por padrão, e se este arquivo não estiver presente, ele lerá / var / log / messages.

Executamos o seguinte para ler os registros:

 swatch (RHEL / CentOS e Fedora) swatchdog (Ubuntu / Debian)

PROLONGAR

Passo 4
Também será possível indicar um arquivo de configuração diferente usando o parâmetro -c, para isso criaremos primeiro um arquivo da seguinte maneira:

 swatch mkdir touch swatch / secure.conf
Etapa 5
Uma vez criado, iremos adicionar a seguinte configuração ao arquivo para monitorar tentativas de login falhadas, tentativas de login SSH falhadas, logins SSH bem sucedidos no arquivo / var / log / log seguro.
 watchfor / FAILED / echo red [email protected], subject = "Falha na tentativa de acesso" watchfor / ROOT LOGIN / echo red mail = [email protected], subject = "Acesso root bem-sucedido" watchfor /ssh.*: Falha password / echo red mail = [email protected], subject = "Falha na tentativa de conexão SSH" watchfor /ssh.*: sessão aberta para usuário root / echo red mail = [email protected], subject = "SSH Root access Right"

PROLONGAR

Etapa 6
Salvamos as alterações usando as teclas Ctrl + O e saímos do editor usando Ctrl + X.
Agora vamos executar o Swatch especificando o arquivo de configuração criado usando o arquivo -c e o log usando o sinalizador -t como este:

 swatchdog -c ~ / swatch / secure.conf -t / var / log / secure
Etapa 7
Desta forma, conforme as entradas são gravadas, elas serão exibidas nos resultados do Swatchdog.
Além disso, podemos criar outros arquivos para monitoramento, como:
 swatchdog -c ~ / site1_watch_config -t / var / log / nginx / site1 / access_log --daemon swatchdog -c ~ / messages_watch_config -t / var / log / messages --daemon swatchdog -c ~ / auth_watch_config -t / var / log /auth.log --daemon
Algumas opções de uso adicionais são:

--awk-field-syntaxEsta opção pode ser usada apenas se você deseja sobrescrever o backend regex em favor da referência de campo no estilo awk
-config-file | -c filenameDiz o swatchdog onde encontrar o arquivo de configuração
--daemonDiz ao swatchdog para ser executado em segundo plano e desassociar de qualquer terminal
-extra-module | -M module_nameDiga ao swatchdog quais módulos de ação customizada carregar.

Assim, será possível manter um controle mais preciso dos eventos no Linux graças a este utilitário.

wave wave wave wave wave