NagiosVision: Tem humanos perto do seu servidor

Neste documento apresento o NagiosVision, um plugin com o recurso de visão computacional baseado na biblioteca openCV, que utiliza todo poder do Nagios para reportar a detecção de padrão de objetos e faces presentes no vídeo ao vivo.

[ Hits: 19.889 ]

Por: Alessandro de Oliveira Faria (A.K.A. CABELO) em 17/03/2011 | Blog: http://assuntonerd.com.br


Download e instalação



O download deve ser efetuado na página do projeto:
O plugin também foi incluído ao projeto oficial do Nagios:

http://exchange.nagios.org/directory/Plugins /Security/NagiosVision/details

Logo a seguir descompacte o pacote .tar.gz e compile com o tradicional comando make e make install:

tar -zxvf nagiosvision-0.91.targ.gz
$ cd nagiosvision/
$ make
$ gcc -Wno-write-strings `pkg-config --libs opencv` `pkg-config --cflags opencv` nagiosvision.cpp -o nagiosvision
$ sudo make install


No servidor Nagios com o NSCA server configurado, edite o arquivo do hosts que será monitorado.

sudo vi /etc/nagios/objects/NOME-HOST.cfg

define service {
        use                             generic-service
        host_name                       NOME-HOST
        service_description             checkNagiosVision
        active_checks_enabled           0
        passive_checks_enabled          1
        check_command                   check_ping
        }

Para o script ser executado a cada 1 minuto, insira a linha abaixo no arquivo /etc/crontab na máquina com o nsca-client instalado. Repare que o caminho do script deve corresponder ao local onde descompactamos o código fonte.

*/1 * * * * root /root/nagiosvision/chkNagiosVision.sh

Para finalizar, edite o arquivo chkNagiosVision.sh e altere a variável NAGIOS_SERVER e insira o seu e-mail para receber o alerta substituindo a string "yourmail@yourdomain.com".

IMPORTANTE:
  • O parâmetro -C 0 representa o índice do dispositivo de captura.
  • Já o parâmetro -w 60 define um alerta Warning quando o tamanho da face for maior que 60 pixels.
  • Para finalizar o parâmetro -c 120 define um alerta Critical quando o tamanho da face for maior que 120 pixels.

Abaixo o conteúdo do script chkNagiosVision.sh, após os devidos ajustes, com a execução a cada minuto do crontab, o NagiosVision passa a disparar os estados de alerta.

#!/bin/bash

NAGIOS_SERVER=10.0.0.69
HOST_IN_NAGIOS=$(hostname)
cd /usr/lib/nagios/plugins/
COMAND_RESULT=`/usr/lib/nagios/plugins/nagiosvision -C 0 -w 60 -c 120 2> /dev/null`
RESULT_CODE=$?
SERVICE_NAME="checkNagiosVision"

if [ $RESULT_CODE != 0 ]; then
   echo "NAGIOS Vision ALERT: Human in your server." | /bin/mail -a /tmp/face-found.jpg -s "ALERT: Human in your server" yourmail@yourdomain.com
fi

echo "$HOST_IN_NAGIOS;$SERVICE_NAME;$RESULT_CODE;$COMAND_RESULT" | send_nsca -H $NAGIOS_SERVER -p 5667 -c /etc/nagios/send_nsca.cfg -d ";"

Espero que este documento simples e objetivo ajude a instalação e configuração do projeto NagiosVision, que sofrerá muitas implementações baseadas na minha disponibilidade temporal. Como sempre menciono... Colaborar atrai amigos, competir atrai inimigos...

Para finalizar, críticas e sugestões: cabelo@opensuse.org
Sobre o autor: http://www.netitec.com.br/alessandro

Página anterior    

Páginas do artigo
   1. Introdução
   2. Download e instalação
Outros artigos deste autor

openSUSE Linux no Windows 10 sem virtualização

IPCMSG: Comunicação inter-processos sem magia negra

Biometria: Reconhecimento Facial OpenSource!

Criando aplicativos para o iPhone no Linux (sem Xcode e MacOS X)

SIAGES: Uma oportunidade de negócio com software livre

Leitura recomendada

Tutorial: Jabber com OpenFIRE

Como atualizar/instalar o X.org em seu Slackware

O comando LS de A a Z

Procurando ETs usando o Linux

Instalação e configuração do Gkrellm

  
Comentários
[1] Comentário enviado por silent-man em 17/03/2011 - 13:55h

Cabelo e seus momentos "psicopatas".

Isso é muito doido!

[2] Comentário enviado por removido em 17/03/2011 - 15:31h

Muito bom cara ! Vou testar por aqui ..


Abraço.

[3] Comentário enviado por rafaelhenrique em 17/03/2011 - 23:22h

Cara parabéns pela dica... fico cada dia mais impressionado com o que o Nagios é capaz de fazer...

Obrigado pela contribuição!

[4] Comentário enviado por kurtz01 em 18/03/2011 - 01:39h

Cara muito bom e viva o linux

[5] Comentário enviado por ricardoolonca em 18/03/2011 - 12:26h

Fico impressionado com o nível de segurança que conseguimos com o Nagios.

Parabéns pelo artigo. Muito bom mesmo.

[6] Comentário enviado por firandrade em 18/03/2011 - 12:27h

Parabéns! muito bom vê a contribuição de todos em pró da poderosa ferramenta nágios e do software livre como um todo.

[7] Comentário enviado por gregh em 18/03/2011 - 21:02h

Muito bom cabelo...
parabens pelo post.

[8] Comentário enviado por qxada07 em 19/03/2011 - 08:56h

Cabelo

Parabéns pelo artigo...

Sempre gostei de trabalhar com o Nagios, estou doido para ver o NagiosVision rodando....

Abraço


[9] Comentário enviado por crf-rafa em 20/03/2011 - 04:01h

Pow minha maior decepçao no vol, descobrir que o cabelo é careca =/
Cara eu vou levar isso pra facul, mostrar ao professor

[10] Comentário enviado por anonymous em 22/03/2011 - 19:22h

Cabelo,

Artigo simplesmente: Sensacional.

[11] Comentário enviado por fabioligorio em 09/06/2011 - 18:08h

Realmente agora estou começando a acreditar que ele criou o Matrix!!!

[12] Comentário enviado por nandow em 25/11/2011 - 22:07h

Loucura loucura loucura.. xD


Contribuir com comentário