Swatchdog - Vigilante de arquivo de log simples em tempo real no Linux

Swatchdog - Vigilante de arquivo de log simples em tempo real no Linux

Swatchdog (o "Cão de relógio simples”) É um script Perl simples para monitorar arquivos de log ativos em sistemas semelhantes a Unix, como o Linux. Ele observa seus logs com base em expressões regulares que você pode definir em um arquivo de configuração. Você pode executá -lo a partir da linha de comando ou em segundo plano, destacado de qualquer terminal usando a opção de modo Daemon.

Observe que o programa foi originalmente chamado amostra (o "Vigilante simples”) Mas um pedido da antiga empresa de relógios suíços para uma mudança de nome viu o desenvolvedor mudar seu nome para Swatchdog.

Leia também: 4 Boas ferramentas de monitoramento e gerenciamento de log de código aberto para Linux

Importante, Swatchdog Cresceu de um script para assistir a toras produzidas pelo Syslog Facility da Unix e pode monitorar qualquer tipo de toras.

Como instalar Swatch no Linux

O pacote Swatchdog está disponível para instalação nos repositórios oficiais das distribuições de Linux, como um pacote “amostra”Através de um gerenciador de pacotes, como mostrado.

$ sudo apt install swatch [No Ubuntu/Debian] $ sudo yum install epel-l-lançamento && sudo yum install swatch [Em Rhel/Centos] $ sudo dnf install swatch [Em Fedora 22+] 

Para instalar a versão mais recente de Swatchdog, Você precisa compilá -lo da fonte usando os seguintes comandos em qualquer distribuição do Linux.

$ git clone https: // github.com/Toddatkins/Swatchdog.git $ cd swatchdog/ $ perl makefile.Pl $ make $ sudo make $ sudo make realclean 

Depois de instalar o amostra, você precisa criar seu arquivo de configuração (o local padrão é /home/$ user/.swatchdogrc ou .swatchrc), para determinar quais tipos de padrões de expressão procurar e que tipo de ação (s) deve ser tomada quando um padrão é correspondido.

$ touch/home/tecmint/.swatchdogc ou $ touch/home/tecmint/.swatchrc 

Adicione sua expressão regular neste arquivo e cada linha deve conter uma palavra -chave e valor (às vezes opcional), separados por um espaço ou um igual (=) sinal. Você precisa especificar um padrão e uma (s) ação (s) a ser tomada quando um padrão é correspondido.

Usaremos um arquivo de configuração simples, você pode encontrar mais opções na página SwatchDog Man, por exemplo.

relógio / sudo / eco vermelho [email protegido], sujeito = "comando sudo" 

Aqui, nossa expressão regular é uma corda literal - "Sudo", significa sempre que a string sudo apareceu no arquivo de log, seria impresso no terminal no texto vermelho e correspondência Especifique a ação a ser tomada, que é ecoar o padrão correspondente no terminal e enviar um e-mail para o endereço especificado, receptivamente.

Depois de configurá -lo, o swatchdog lê o /var/log/syslog arquivo de log por padrão, se este arquivo não estiver presente, ele lê /var/log/mensagens.

$ swatch [Em Rhel/Centos & Fedora] $ swatchdog [No Ubuntu/Debian] 

Você pode especificar um arquivo de configuração diferente usando o -c sinalizador como mostrado no exemplo a seguir.

Primeiro crie um diretório de configuração de amostra e um arquivo.

$ mkdir swatch $ touch swatch/seguro.conf 

Em seguida, adicione a seguinte configuração no arquivo para monitorar as tentativas de login com falha, tentativas de login com falha no SSH, logins bem -sucedidos do SSH do /var/log/seguro arquivo de log.

relógio / falha / eco vermelho [email protegido], sujeito = "Falha na tentativa de login"Relógio / Login de root / Echo Red [email protegido], sujeito ="Login de raiz bem -sucedido"Watchfor /ssh.*: Falha na senha/ eco vermelho [email protegido], sujeito = "Falha na tentativa de login SSH"Watchfor /ssh.*: Sessão aberta para o usuário raiz/ echo vermelho [email protegido], sujeito = "Login de raiz SSH bem -sucedido" 

Agora execute a amostra especificando o arquivo de configuração usando o -c e arquivo de log usando -t bandeira como mostrado.

$ swatchdog -c ~/swatch/seguro.conf -t/var/log/seguro 

Para executá -lo em segundo plano, use o --Daemon bandeira; Neste modo, ele é destacado de qualquer terminal.

$ swatchdog ~/swatch/seguro.conf -t/var/log/seguro -daemon 

Agora, para testar a configuração da amostra, tente fazer login no servidor a partir do terminal diferente, você vê a seguinte saída impressa no terminal onde o SwatchDog está executando.

*** Versão 3.2.3 (PID: 16531) começou em qui 12 12:45:10 BST 2018 12 12:51:19 Tecmint SSHD [16739]: Falha na senha da raiz de 192.168.0.103 Porta 33324 SSH2 12 12:51:19 Tecmint SSHD [16739]: Falha na senha para root de 192.168.0.103 Porta 33324 SSH2 12 12:52:07 Tecmint SSHD [16739]: pam_unix (sshd: sessão): sessão aberta para raiz do usuário por (uid = 0) 12 de julho 12:52:07 sshd: sessão): sessão aberta para o usuário root por (uid = 0) 
Monitore os logs do Linux em tempo real

Você também pode executar vários processos de amostra para monitorar vários arquivos de log.

$ swatchdog -c ~/site1_watch_config -t/var/log/nginx/site1/access_log - -daemon $ swatchdog -c ~/messens_watch_config -t/var/log/mensagens - -daemon $ swswdog -c ~/authwatch_config --t// var/log/auth.log - -daemon 

Para mais informações, consulte a página do SwatchDog Man.

$ man swatchdog 

SwatchDog SourceForge Repository: https: // sourceforge.net/projetos/swatch/

A seguir, são apresentados alguns guias adicionais de monitoramento de logs que você achará útil:

  1. 4 maneiras de assistir ou monitorar arquivos de log em tempo real
  2. Como criar um servidor de log centralizado com rsyslog
  3. Monitor Server faz login em tempo real com “Log.ferramenta io ”
  4. LNAV - Assista e analise os logs do Apache de um terminal Linux
  5. NGXTOP - Monitorar arquivos de log nginx em tempo real no Linux

Swatchdog é uma ferramenta simples de monitoramento de arquivos de log ativo para sistemas semelhantes a Unix, como Linux. Experimente e compartilhe seus pensamentos ou faça qualquer pergunta na seção de comentários.