14
Flavio André dos Santos Pelo fato de já trabalharmos com a ferramenta em nosso dia-a-dia e termos significativo conhecimento, acabamos por desenvolver o artigo uniformemente. Citamos então pontos em que o contribuinte é mais familiarizado e apresenta melhor conhecimento para descrição. Contribuí na confecção do artigo nos pontos a seguir: Instalação pacote sendEmail ambiente Linux; Configuração do Nagios para notificação via e-mail; Teste no envio de e-mails simulando quedas de hosts e serviços; Configuração dos hosts e serviços monitorados para envio de e-mails; Tutoriais configuração e-mail e Instalação Nagios; Formatação Artigo.

Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

Flavio André dos Santos

Pelo fato de já trabalharmos com a ferramenta em nosso dia-a-dia e termos

significativo conhecimento, acabamos por desenvolver o artigo uniformemente.

Citamos então pontos em que o contribuinte é mais familiarizado e apresenta

melhor conhecimento para descrição.

Contribuí na confecção do artigo nos pontos a seguir:

Instalação pacote sendEmail ambiente Linux;

Configuração do Nagios para notificação via e-mail;

Teste no envio de e-mails simulando quedas de hosts e serviços;

Configuração dos hosts e serviços monitorados para envio de e-mails;

Tutoriais configuração e-mail e Instalação Nagios;

Formatação Artigo.

Page 2: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

Gerenciamento de Serviços, Sistemas e Ativos de Rede, Implementando

Nagios

Flavio André dos Santos, Luis Fernando da Silva Rodrigues

Curso de Especialização em Redes e Segurança de Sistemas

Pontifícia Universidade Católica do Paraná

Curitiba, Janeiro de 2013.

Resumo

O artigo a seguir tem por finalidade a apresentação de um posto de vista tutorial e

explicativo da instalação do software de gerenciamento NAGIOS, idealizado e escrito para

monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o

software em si funciona e como se comporta de acordo com suas personalizações e edições

realizadas pelo seu usuário ou administrador da rede em questão, tendo em vista que o sistema

é simples, de fácil configuração e personalização, para exemplificar será utilizada a situação

de implantação de uma empresa chamada Dotcom SuperMarket. Daremos um enfoque em sua

instalação, configuração e principalmente notificação, já que de nada adianta um software que

gerencie seus hosts, serviços e ativos de rede mas não lhe informe quando por ventura você

estiver fora ou até mesmo dentro da empresa.

1 Introdução.

Abordado hoje em dia como um dos principais pilares para que se tenha e mantenha um

ambiente de rede e T.I. ininterrupto e com o máximo possível de operabilidade, o

gerenciamento de redes independente da forma ou ferramenta em que venha a ser apresentado

ao administrador, já não pode mais ser deixado de lado, grandes empresas investem e muito

com o monitoramento de seus ambientes de forma á, no mínimo, ter garantia de que o seu tempo

de parada seja “0”. Já não é novidade e á muito tempo, que o tempo de parada dependendo do

ramo e atividade da empresa podem significar grandes perdas, quando isso ocorre, prejuízos

diretos e indiretos são certos, muitas vezes acaba até sendo difícil de mensurar, neste caso perde

a empresa, perde o cliente do produto ou serviço que esta empresa fornece; e de forma a se

encaixar no assunto abordado no nosso artigo, se perde muito em credibilidade a administração

do ambiente de T.I. dentro da empresa, logo administradores de rede devem estar sempre

atentos a qualquer adversidade, para que ela num momento de pico, ou de queda, não acabe

trazendo a baixo ou mandando pelos ares a administração do ambiente construído já a algum

tempo, para tanto é de suma importância ter ao seu lado ferramentas que lhe ajudarão a

administrar a rede, sendo do ponto de identificação de adversidades, interpretação e/ou tomadas

de ações.

Ferramenta de monitoramento e notificação de licença GPL com código aberto o Nagios

abordado neste artigo, dispõe de interface simples e intuitiva, por estes e outros motivos ele

acaba sendo muito utilizado por administradores de rede em grandes e médias empresas,

totalmente flexível de forma a se adaptar a necessidade do administrador em questão, ele pode

ser um grande aliado do administrador dentro e fora da empresa, hoje com o aumento do acesso

à internet via rede de dados celular, (3g, Hspa, Edge) e com a possibilidade de acessar a internet,

baixar e ler e-mails dos lugares mais remotos do mundo, onde obviamente disponham de rede

de dados celular, ficou ainda mais fácil e pratico estar atento ao que acontece a sua rede mesmo

estando á quilômetros de distância dela e ainda assim caso não disponha de rede de dados

Page 3: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

celular, o Nagios integrado a outras soluções, pode lhe enviar SMS de notificação ao identificar

alguma adversidade em sua rede.

O ambiente em questão onde iremos implementar a solução Nagios trata-se de uma

empresa no ramo do varejo, uma rede de supermercados chamada aqui de Dotcom Supermarket

com topologia no modelo Matriz Filial, onde as filiais dispõe de um link dedicado e buscam

grande parte dos serviços Windows e Linux via Link. Hoje a Dotcom carece de serviço de

gerenciamento de seus Servidores, Links, Roteadores e ativos de rede.

1.1 Origem e funcionamento do Nagios.

Em entrevista à revista Linux Magazine, Ethan Galstad, idealizador e fundador do

Nagios explicou a motivação para começar a desenvolvê-lo, segundo ele, em 1996

administrador de redes no local em que trabalhava costumavam realizar suas reuniões em bares,

onde acabavam por beber demais, certa vez numa destas reuniões um servidor do local onde

ele trabalhava parou de funcionar, porém ele e os colegas em reunião no bar, não sabiam onde

estavam o que acabou trazendo pra eles muitos problemas, por conta desta situação ele acabou

pensando então; “Bom, preciso de uma solução para monitorar esses sistemas, para que eu saiba

o quanto antes se eles estão ou não funcionando” logo a ideia surgiu e em 1996 surgiu o primeiro

programa básico, mas foi em 1999 que ele decidiu oferecer serviços de monitoramento.

(ZAIDAN, Kemel. O Futuro do nagios – Ethan Galstad. Em: <http://

www.linux-magazine.com.br/entrevista/o_futuro_do_nagios>. Publicado em:

19/05/2011 Acessado em: 05/12/2013.).

O software Nagios é totalmente dependente de seus plug-ins para que funcione,

analisando plug-ins no ponto de vista de utilização no Nagios eles servem basicamente como

intermediadores entre o equipamento a ser monitorado e o Nagios, com estes plug-ins instalados

em roteadores, hosts, enfim equipamentos que possuam IP, o Nagios consegue, trazer os dados

necessários, enviar para sua CGI que irá gerar páginas dinâmicas, enviar ao servidor web

Apache que será responsável por mostrar no browser o status dos hosts baseado nos dados

extraídos com os plug-ins.

Sua hierarquia padrão de configuração é constituída da seguinte forma; o software em

si é instalado na pasta nagios em /usr/local/ abaixo de Nagios existem as pastas:

Bin (Núcleo do programa e Binários).

Etc (Arquivos de configuração para adição de Hosts e equipamentos a serem

monitorados, além da pasta objects que armazena arquivos individuais de cada

equipamento com as suas variantes de checagem.).

Libexec (Biblioteca de Plugins).

Sbin (Arquivos cgi’s que são responsáveis por gerar as páginas dinâmicas para o

Apache)

Share (Documentação e arquivos Html).

Var (Logs).

1.2 Serviço de notificação, e-mail, sms entre outros.

Ao realizar o monitoramento de hosts e serviços em sua rede, se você não dispor em

mãos quando necessário as ocorrências de anormalidades, quedas, e os dados destas situações,

de nada adianta investir, instalar, gastar tempo na configuração e personalização de seu Nagios

se isso só lhe for útil dentro da empresa em que administra; para tanto o Nagios tem seu ponto

forte neste assunto, notificação; sendo ela de variadas formas, podemos citar.

Page 4: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

Notificação via e-mail, uma das mais utilizadas por ser de fácil configuração.

Notificação via SMS; não tão comum por se tratar de uma configuração um pouco mais

complexa, e por dependência de outros serviços integrados para que funcione.

Podemos ainda citar, notificações via telefone, onde se integra o servidor Nagios á um

sistema telefônico, central ou modem; também notificação via jabber protocolo de mensagem

instantânea, enfim pelo fato do software ser licenciado sob licença GPL, o leque de

possibilidades cresce bastante, tendo em vista que existem hoje vários desenvolvedores

contribuintes ao Nagios.

2 Instalação e Configuração do Nagios.

Para que Seja possível a instalação do Nagios é necessário além obviamente de um

Sistema Operacional Unix (nesta situação o Debian) alguns outros pacotes como segue abaixo:

2.1 Pré-requisitos.

Apache 2. O Apache será responsável por rodar o serviço Web do seu servidor Nagios,

colocará a página de visualização do Nagios no ar.

PHP. O PHP é responsável por executar os scripts e arquivos do Nagios e gerar os

arquivos em HTML que serão impressos na página Web da aplicação Nagios.

Compilador GCC. Gcc é responsável por compilar os arquivos de instalação do Nagios.

Bibliotecas de desenvolvimento. Durante o processo de compilação e instalação

dependendo sua versão do Linux, será necessário instalar alguma nova biblioteca para

compilação no Nagios, a grande maioria das distribuições Linux de hoje informa o erro

e a falta de determinada biblioteca, tendo a biblioteca utilize o instalador apt-get install

com o nome da biblioteca faltante, no caso do Nagios grande parte das bibliotecas estão

disponíveis no pacote Build-essential.

Já dispondo destes pacotes baixados e instalados em sua distribuição Linux, damos

sequencia então a instalação.

2.2 Procedimentos de Instalação

Criar usuário Nagios.

/usr/sbin/useradd -m -s /bin/bash nagios (adicionando usuário, acrescentando um perfil ao

/home/”user”, especificando o seu shell, nome do usuário).

passwd nagios (Alterando ou acrescentando a senha ao usuário nagios).

Criando grupo:

/usr/sbin/groupadd nagios (Criando grupo Nagios)

/usr/sbin/usermod -G nagios nagios (Incluindo o usuário nagios ao grupo nagios)

Grupos para acesso externo.

/usr/sbin/groupadd nagcmd (Criando grupo nagcmd)

/usr/sbin/usermod -a -G nagcmd nagios (Acrescentando usuário nagios ao grupo nagcmd –G

utilizado para adicionar usuário a mais de um grupo)

Page 5: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

/usr/sbin/usermod -a -G nagcmd www-data (Acrescentando usuário nagios ao grupo www-

data do Apache).

Para instalação do Nagios realize o download em sua própria página www.nagios.org

sua versão atual é 3.4.3.

Tendo realizado o download Nagios, extraia os arquivo no diretório Home do usuário

atual de preferência o root, para que se tenha plenos poderes administrativos ao executar todo

o processo de instalação.

Após extrair os arquivos acesse a pasta com os arquivos extraídos, execute o comando

./configure --with-command-group=nagcmd tendo obtido sucesso execute os comandos

make all (responsável por “extrair” os binários para instalação).

make install make install-init (responsável por instalar os scripts de inicialização).

make install-config (responsável por instalar os arquivos de configuração do Nagios).

make install-commandmode (responsável por instalar diretórios de comando externo).

make install-webconf (Instala configurações da interface web).

Crie um usuário para o Nagios no apache com o seguinte comando.

htpasswd -c /usr/local/nagios/etc/htpasswd.users nagiosadmin É necessário agora a instalação de plug-ins do Nagios, para que ele consigo assim

monitorar ativos, hosts, enfim equipamentos de redes e serviços, estes plug-ins também estão

disponíveis em www.nagios.org , assim como na instalação do Nagios server extraia e

descompacte o pacotes de instalação.

./configure --with-nagios-user=nagios --with-nagios-group=nagios, em seguida utilize

make e make install, tendo executado estes comandos estaremos com o Nagios server e seus

plug-ins instalados, vamos agora incrementa-lo, executando o comando ln -s /etc/init.d/nagios

/etc/rcS.d/S99nagios, este comando fara com o que Nagios inicialize automaticamente ao

inicializar o sistema operacional, para iniciar o Nagios utilize o comando /etc/init.d/nagios

start para verificar se a página web do Nagios já está no ar acesse no browser do server Nagios

o endereço http://localhost/nagios ou em alguma máquina da mesma rede o endereço IP do

Nagios server seguido por /nagios (http://enderecoip/nagios). Vamos verificar agora se todas

as configurações padrões até o momento estão corretas com o comando

/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg tendo executado este

comando corretamente ele irá retornar uma mensagem com uma lista que irá apontar quantidade

de Warning (atenção) e Error (erros) caso os dois estejam zerados, o servidor Nagios está

instalado corretamente e pode ser dado início a sua personalização de acordo com o seu

ambiente.

3 Utilização do Nagios na Rede DotCom Supermarket.

3.1 Topologia de Rede Dotcom Supermarket.

Atualmente, a rede de supermercado Dotcom SuperMarket dispõe de uma matriz onde

se disponibilizam servidores que proveem serviços Windows, tais como Dhcp, Dns, Active

Directory, entre outros, também dispõe de servidores Linux, que disponibilizam serviço de

firewall, acesso á internet via proxy e openvpn para conexão VPN com as filiais em questão;

atualmente existem duas filiais nomeadas aqui de Dotcom 1 e Dotcom 2, elas recorrem a matriz

através de link dedicado para se conectarem através de VPN aos servidores e utilizarem dos

serviços dispostos por eles.

Page 6: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

Figura 1: Topologia de rede Dotcom Supermarket.

Há extrema carência neste ambiente no que se diz respeito a gerenciamento de rede e

monitoria do que ocorre na rede administrada, um exemplo que podemos citar, é o fato de por

algumas vezes o Linux que prove serviço de firewall e acesso à internet via proxy além das

conexões em Openvpn travar, e ser necessário reinicializar o sistema para que volte a funcionar

tais serviços, um problema desta magnitude pode acarretar vários problemas para empresa em

questão, problemas com clientes, em frente de caixa, tendo em vista que os produtos vendidos

no supermercado recebem preços via carga de sistema que são gerados na Matriz, outros

problemas que podemos citar são congestionamento e instabilidade nos links entre as VPN’s,

quedas e esgotamento de espaço em disco do sistema de câmeras na matriz, que só veem a ser

percebidos quando se torna necessário a recuperação de alguma imagem, e uma série de outras

situações de ordem menor.

3.2 Configuração do Nagios na Rede DotCom

Instalamos o servidor Nagios e o atribuímos o nome de Nagiosserver, acrescemos um

Ip valido (10.0.0.110) com o gateway padrão da rede, de forma que conseguimos acessa-lo pelo

endereço http://10.0.0.110/nagios. Tendo aberto a página do Nagios ele mostrará como

podemos ver na figura abaixo somente o Host Localhost, neste caso ele mesmo.

Figura 2: Nagios após instalação.

Page 7: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

Para que conste os hosts Windows monitorados na página do Nagios, necessitamos

acresce-los aos arquivos de configuração do Nagios e instalar o aplicativo NSClient++

disponível em http://sourceforge.net/projects/nscplus/, ele deve ser instalado e configurado em

todas os host em que se deseja monitoramento.

Ao instalar o aplicativo foi solicitado o endereço ip do servidor Nagios, e a senha para

conexão do plugin check_nt, este Check_nt é um plug-in já com uma série de funções inclusas

para monitoria de hosts Windows, finalizando a instalação é instalado nos seus serviços

(services.msc) o Serviço NSClient ++ já iniciado e em modo automático.

Para que o Nagios consiga monitorar este host agora, é necessário criar um arquivo com

o nome do servidor, para a melhor organização da hierarquia, e acrescentar os comandos que

definira o host e os serviços neste host a serem monitorados, vamos configurar o Server01 o

servidor principal que prove serviços DHCP, DNS, Banco de Dados SQL, FTP e HTTP, além

da necessidade de monitoria destes serviços, precisamos também monitorar fatores que em

anormalidade influenciam diretamente no funcionamento destes serviços, são eles, carga de

CPU, consumo de memória e espaço em disco.

Em nagios.cfg por padrão se pede os arquivos de host e serviços monitorados que

estejam localizados em /usr/local/nagios/etc/objects/Windows.cfg (no caso este Windows.cfg

já um arquivo com template para edição do IP, e já com serviços prontos para monitorar), no

nosso caso como teremos vários equipamentos e servidores com variados serviços,

acrescentamos abaixo do diretório /objects, as pastas, servidores, links e dispositivos, e dentro

destas pastas os respectivos arquivos (.cfg), também alteramos no arquivo padrão no Nagios

(Nagios.cfg) a linha que menciona onde estarão os arquivos, no caso ainda o arquivo padrão de

instalação e nosso arquivo de configuração do servidor Server01.

Figura 3: Menção dos arquivos cfg’s de server01 e Windows.cfg (template).

O Arquivo server04.cfg pronto, ficou da seguinte forma:

Definindo Host.

define host{ (Definição do host para monitoração).

use generic-host (Referência modelo de host presente em

templates.cfg)

host_name server04 (Nome do host).

address 10.0.0.4 (Endereço IP do Host).

check_command check-host-alive (Comando de checagem se host ativo).

max_check_attempts 2 (Número de tentativas de checagem).

check_interval 1 (Intervalo entre checagens).

notification_interval 30 (Intervalo de notificação em Min.).

notification_period 24x7 (Período de notificação, no caso 24x7

24Hrs, 7 dias por semana).

notification_options d,u,r (Opções de notificação, d=Down, u=Up,

r=Recovery).

contact_groups admins (Grupo de contato).

}

Definindo Serviço.

define service{ (Definição do serviço a ser monitorado).

Page 8: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

use generic-service (Nome do template de serviço utilizado).

host_name server04 (Nome do servidor).

service_description Carga da CPU (Descrição do Serviço).

check_command check_nt!CPULOAD!-l 5,80,90 (Comando executado no

servidor remoto, trará o resultado e mostrara no browser).

retry_check_interval 1 (Intervalo de checagem).

check_period 24x7 (Período de checagem, no caso 24x7

24Hrs, 7 dias por semana).

notification_interval 30 (Intervalo de notificação)

notification_period 24x7 (Período de notificação. no caso 24x7

24Hrs, 7 dias por semana).

notification_options w,c,r (Opções de notificação, w=Warning,

c=Critical, r=Recovery)

contact_groups admins (Grupo de contato).

}

Além do serviço mostrado acima, no arquivo foram acrescentados outros 8 serviços, a

cada serviço acrescido é necessário alterar as linhas, service_description, e check_command se

comparado ao exemplo acima.

Uso de Disco.

service_description C:Winserver

check_command check_nt!USEDDISKSPACE!-l c -w 90 -c 95

Uso de memória.

service_description Uso da memória

check_command check_nt!MEMUSE!-w 80 -c 90

Ping.

service_description PING

check_command check_ping!5000.0,80%!8000.0,100%

FTP.

service_description FTP

check_command check_ftp

HTTP.

service_description HTTP

check_command check_http

DNS.

service_description DNS

check_command check_dns

SQL SERVER.

service_description SQL Connectivity 1433

check_command check_tcp!1433

DHCP.

service_description DHCP

check_command check_dhcp

Tendo acrescentado os serviços que nos interessam monitorar, reiniciamos o Nagios

(nagios service restart), e verificamos no browser se o host e seus serviços constam no menu

do site Current Status, Services.

Page 9: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

Figura 4: Pagina do Nagios monitorando o primeiro host, Server01.

Foram acrescidos ao servidor Nagios também para monitoria todos os links que

interligam as filiais com a Matriz, links primários e redundantes, para estes links foi utilizado

o Check_command check_ping, neste comando assim como nos outros comandos presentes na

pasta /usr/loca/nagios/libexec você consegue aplicar argumentos de acordo com a sua

necessidade, estes argumentos são muito úteis na personalização do seu Nagios ao seu ambiente

e também para dar mais credibilidade ao sistema na hora de lhe notificar, com estes argumento

você pode configurar para que o Nagios somente te notifique quando um link atingir uma

resposta superior a 500ms por exemplo. Em se tratando também de roteadores e links que por

algum motivo não respondam aos pings ou até mesmo tenham caído, o Nagios é inteligente

suficiente pra não lhe reportar que os hosts daquele roteador adentro estão fora também; ele

entende que o backbone inteiro está inalcançável, quando não consegue contatar o seu link ou

roteador.

3.3 Monitoramento do servidores Linux na rede da Dotcom.

Para monitoramento do servidores Linux na rede da Dotcom, servidores com OpenVpn

Configurada, Proxy e Firewall, como a necessidade era de se acompanhar o desempenho de

trafego das VPN’s, trafego no Proxy e no firewall, além é claro do hardware que pode

comprometer estes serviços num todo (Processador, CPU e memoria) foram utilizados os plug-

ins que já estão disponível por padrão no Nagios, porém personalizado de acordo com a

necessidade de monitoramento afim de prevenir qualquer falha, como exemplo apontamos a

definição de um serviço no Nagios para o firewall das filiais que informa com um Warning

quando o ping demorar mais de 500 ms para responder, isso no caso poderia apontar algum

congestionamento de banda, algum erro no firewall que permitiu a utilização da banda de forma

á esgotar a capacidade do link, enfim entre outros.

3.4 Configurando notificações.

Independente da forma em que se pretende realizar as notificações é necessário que se

atente a um ponto em comum que abrange todas as formas de notificações. Verificar em seus

arquivos de hosts e serviços que contém as configurações, se constam no campo

Notification_Option os caracteres necessários para que o Nagios entenda se notificará á respeito

daquele host/serviço ou não.

Tendo configurado todos os hosts e serviços necessários para que o ambiente esteja te

atentendo no que diz respeito a monitoramento, agora precisamos que o Nagios nos informe as

ocorrências conforme elas acontecerem, partimos então a configuração do serviço de

notificação, comecemos pela notificação via e-mail

Page 10: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

3.5 Notificação via E-mail

Para que a notificação via e-mail funcione é necessário acrescentar o pacote sendEmail

ao servidor Nagios. Além disso atente-se aos arquivos resource.cfg presente em

/usr/local/nagios/etc este arquivo você deverá alterar dados das variáveis $USER5$, $USER6$,

$USER7$, respectivamente estas variáveis irão gravar, conta de e-mail, senha da conta de e-

mail e servidor smtp, é perfeitamente possível alterar a ordem, porém não esqueça de altera-la

no commands.cfg. Outro arquivo de suma importância é o contacts.cfg presente em

/usr/local/nagios/etc/objects este arquivo será o arquivo onde serão editados, grupos

acrescentado contatos de e-mail, e número de telefone para sms, com este arquivo podemos

criar também grupos de notificações e definir de forma hierárquica acessos á monitoração de

determinados hosts e serviços.

Continuamos com o comando Apt-get install sendEmail; tendo concluído a instalação

sem erros devemos alterar a linha do arquivo /usr/local/nagios/etc/commands.cfg alteramos as

linhas ”comand_line” das seções notify-host-by-mail e notify-service-by-mail, deixando da

forma como segue abaixo.

Figura 5: Linha de comando responsável por enviar e-mail na notificação de hosts e serviços.

Nesta linha de comando (command_line) verificamos que é executado o comando

/usr/bin/sendEmail seguido dos argumentos –s servidor SMTP, -xu e-mail remetente, -xp senha

do e-mail para autenticação, –f conta pela qual o e-mail será enviado (Os dados salvos nas

variáveis, em sequência aos argumentos na linha de comando estão presentes no arquivo

/usr/local/nagios/etc/resource.cfg) o argumento -t processa a lista de contatos de e-mails

contidos em /usr/local/nagios/etc/objects/contacts.cfg para envio pelo sendEmail, –l é o

argumento para indicar o local onde será salvo um log do envio dos e-mails.

Configurando desta forma temos o seguinte fluxo onde o Nagios verifica por meio de

plug-ins através do protocolo UDP a situação do host, enquanto ele recebe respostas positivas,

ele se mantem passivo, quando o host cai, ele realiza tentativas de reconexões, caso ainda assim

não consiga ele verifica o arquivo de configuração do host (ex. server04.cfg) se o host através

do arquivo, comtempla de algum meio de notificação (verificado no campo

Notification_Option), caso sim, ele busca o arquivo comands.cfg que verifica se o que ocorre é

a queda de um host, ou serviço e executa o comand_line respectivo, que imprime as variáveis

atuais daquele host ou serviço, que por sua vez informa os contatos prescritos no arquivo

contacts.cfg, por padrão ele irá notificar enquanto o host ou serviço estiver off-line, no o

intervalo de tempo previsto no campo Notification_Interval. Quando o host volta a responder

ele repete o processo, porém informando o Recovery e somente por uma vez.

Simulando a queda do host Server01 temos então a evidencia no Nagios via browser, e

sua notificação via e-mail, nos contatos cadastrados em contacts.cfg.

Page 11: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

Figura 6: Queda de Server01 visto no browser. Host e serviços com o status Critical

.

Figura 7: Notificação de queda de Server01.

3.6 Notificação SMS

Existem alguns pré-requisitos para que você consiga utilizar o software Nagios

Notificando via SMS, existem vários meios de utilização desta funcionalidade com diversas

outras ferramentas, optamos pelo mais simples. Para que conseguíssemos a notificação via sms

foi necessário contratar um serviço de envio de torpedos via web adotamos o serviço oferecido

por www.torpedus.com.br, nele você realiza um cadastro, compra os torpedos e lhe é fornecido

uma URL onde se acrescenta o usuário e senha fornecido pelo serviço, á esta URL o Nagios

deverá acrescer suas variáveis atuais de monitoramento, veremos abaixo como funciona:

Para que o Nagios notifique via sms é necessário que se crie um executável de envio de

SMS assim como é na notificação via e-mail, devermos acrescentar ao arquivo commands.cfg

dois novos scripts um para notificação de serviços (notify-service-by-sms) e outro para

notificação de hosts (notify-host-by-sms).

Figura 8: Definição de comando para envio da notificação de serviços via SMS.

Page 12: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

Figura 9: Definição de comando para envio da notificação de hosts via SMS.

Perceba que ambos os novos comandos em sua linha inicial chamam o arquivo

/usr/local/nagios/libexec/send_sms.sh este send_sms.sh será o script responsável por enviar a

notificação via sms.

“Figura 10: Arquivo send_sms.sh.” [1]

Quando por algum motivo algum host ou serviço monitorado pelo Nagios parar de

responder, o Nagios faz a leitura do arquivo .cfg daquele host ou serviço e verifica no campo

Notification_options se consta ali um status valido para que ele notifique via sms, caso sim ele

irá fazer a leitura do arquivo commands.cfg que terá definido os novos comandos de

notificações, notify-host-by-sms e notify-service-by-sms, ele então executará estes comandos

com as variáveis atuais de notificações para aquele host ou serviço, estes comandos se corretos

o notificarão via sms.

Figura 11: Notificação Sms Nagios.

Page 13: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

4 Procedimentos de testes.

Tendo realizado a configuração do sistema foram realizados testes a fim de certificar o

funcionamento e credibilidade do sistema.

Com o Nagios Configurado, e acrescido dos Host (Server01, Firewall matriz, Linux

Openvpn nas filiais, Links) verificando serviços como DNS, DHCP, tempo de resposta

de Ping entre os links, espaço em disco nos servidores, consumo de memória e carga de

CPU) realizamos testes simulando anormalidades no link, nos servidores, e nos serviços

configurados, todos os testes agiram como prescreve a ferramenta, na queda do link por

exemplo, ele tenta a reconexão na quantidade prescrita no arquivo de configuração, não

conseguindo ele segue o fluxo de anormalidade, acionando os seus mecanismos de

notificação, concluindo o teste a notificação é recebida pelo administrador que toma as

ações pertinentes para resolver ou isolar o problema.

5 Conclusão.

Quando falamos em segurança de redes e informações, muito se fala de ferramentas que

ajudam na proteção propriamente dita, firewalls, proxy, criptografia, antivírus entre outros,

porém segurança é bem mais que isto, esta ferramenta abordada neste artigo deriva de um dos

três pilares da segurança de rede e informação, disponibilidade. Foi constatado nestes estudo

de caso, que o Nagios é uma grande ferramenta para manter a sua rede disponível,

implementando ele consegue-se, prevenção de acordo com as dados de monitoria, apresentados

por ele e também é claro, realizar a tomada de decisão em tempo hábil para manter sua rede

disponível ou ter o mínimo tempo de parada possível.

Em grandes, médias, ou até mesmo pequenos ambientes de redes, não se deve jamais

ser deixada de lado o monitoramento, independente da forma, tendo em vista que grande parte

dos problemas não ocorrem por si só, muitas vezes fornecem sinais que podem ajudar na

prevenção de algo com maiores proporções e muitas das vezes não afetam a ele somente, um

problema de menor ordem pode acabar desencadeando vários outros. Concluindo podemos

afirmar que trabalhar sem monitoramento, administrar sem que você saiba o que está ocorrendo,

ou porque ocorreu, é como trabalhar às escuras.

6 Referências

[1] Script send_sms.sh escrito por Anderson Francolle Carneiro, disponível em

http://www.vivaolinux.com.br/script/Envio-de-SMS-via-Nagios

Acesso em 18/01/2012.

Site projeto Nagios e vários outros tutoriais relacionados, contribuíram para confecção

deste artigo.

Acessado várias vezes durante a confecção do artigo.

www.nagios.org

http://sourceforge.net/ Site responsável pelo hospedagem dos arquivos de instalação e

plug-ins do Nagios, entre outros softwares.

www.nagiosnapratica.wordpress.com Blog especializado em documentos e tutoriais

com foco em funcionalidades do Nagios.

Acesso em 14/01/2013.

Page 14: Flavio André dos Santosjamhour/RSS/TCCRSS11/Fl... · 2013. 3. 11. · monitoramento de hosts, ativos de redes, serviços entre outros. Apresentaremos como o ... Em entrevista à

http://www.linhadecodigo.com.br/artigo/1597/instalando-e-configurando-o-poderoso-

gerenciador-de-redes-nagios.aspx.

Acesso em 14/01/2013.

http://www.cjj.eti.br/nagios-sendemail-enviado-notificacao-via-e-mail-autenticado/.

Acesso em 14/01/2013.

http://itformoney.wordpress.com/2012/07/11/instalando-o-nagios-core-3-2-nagios-

plugins-nrpe-nsclient-pnp4nagios-e-frontend-no-ubuntu-10-4-lts/.

Acesso em 14/01/2013.

http://www.vivaolinux.com.br/artigo/O-poderoso-Nagios?pagina=3.

Acesso em 15/01/2013.

http://www.vivaolinux.com.br/artigo/Instalando-NSClient++-e-NC_net?pagina=2.

Acesso em 15/01/2013.

http://luizcarlostomaz.wordpress.com/2008/11/19/nagios-com-snmp-e-pnp4nagios/.

Acesso em 29/01/2013.

http://www.vivaolinux.com.br/artigo/Instalacao-e-configuracao-do-

sendmail?pagina=1.

Acesso em 29/01/2013.

http://blog.tiagopassos.com/2012/10/30/monitorando-servidores-remotos-com-o-

nagios-nrpe-no-linux-centos/.

Acesso em 29/01/2013.

Envio de Torpedo para notificação.

http://www.torpedus.com.br.

Entrevista Ethan Galstad Idealizador do Nagios.

http://www.linux-magazine.com.br/entrevista/o_futuro_do_nagios.

Publicado em 19/05/2011 às 14:49, acesso em 05/12/2012.

Observação: Parte do referencial teórico deste artigo estão embasados na pesquisa de

Gibran Mello á cerca do Software Nagios que está disponível em

http://www.4shared.com/rar/KRRkKGzP/NAGIO_GIBRAN_MELO.html?.