Você está na página 1de 7

Gerenciamento de Redes de Computadores | Unidade E

E
Sistema Universidade Aberta do Brasil - UAB | IF Sul-rio-grandense

Unidade

Nagios
Nesta aula, iremos aprender a instalar e configurar o software Nagios, um aplicativo poderoso para auxiliar o
monitoramento de aplicações de rede. Imagine que parte dos serviços disponíveis em seu servidor pare de fun-
cionar por algum motivo. Se você não estiver monitorando, você não saberá disso, certo? Errado! O software
Nagios pode realizar a tarefa de monitoramento e informar a você caso isto aconteça! Fantástico, não!? Então
vamos aprender a utilizá-lo!

Introdução
O Nagios é um sistema de monitoramento de aplicações de rede. Ele vigia os hosts e serviços que você especi-
ficar, alertando quando o serviço ou host estiverem “down” e também quando os mesmos ficarem “up”. É um
software que apresenta uma ação pró-ativa, auxiliando o administrador de redes a gerenciar a mesma. Esta fer-
ramenta é a evolução do antigo software NetSaint, o qual também executava a mesma tarefa.
Dentre os recursos disponibilizados pela ferramenta, temos como principais os seguintes:

• Monitoramento de serviços de rede como HTTP, SMTP, SSH, Telnet, etc.


• Monitoramento dos recursos dos servidores, como espaço em disco.
• Notificações de falhas por e-mail, pager, etc. em tempo real.
• Interface Web informativa, onde podemos identificar de maneira fácil os problemas.

A última versão do software encontra-se disponível para download em: http://www.nagios.org. Uma vez que
o download é realizado, será necessário executar alguns passos para que o Nagios seja instalado e configurado
corretamente.

Instalando o Nagios
Inicialmente precisaremos fazer o download do software. Para tal, uma boa opção é baixá-lo diretamente do site
oficial no endereço http://www.nagios.org.
Assim que o download for concluído, iremos descompactar o arquivo utilizando o utilitário tar. O comando a ser
executado será o seguinte:

$ tar zxvf nagiosXXX.tar.gz

Note que o XXX no nome do arquivo refere-se à versão atual do software Nagios que você baixou.
Logo, será necessário substituir o XXX pelo número de versão atual do software.
Logo após, será necessário criar uma conta de usuário para que o programa possa ser executado. Para isto pode-
mos utilizar o comando adduser da seguinte forma:

# adduser --disabled-password --shell /bin/false nagios

69
Sistema Universidade Aberta do Brasil - UAB | IF Sul-rio-grandense Gerenciamento de Redes de Computadores | Unidade E

ou, de maneira simplificada:

# adduser nagios

Para iniciar a instalação do software, entre na pasta e inicie a compilação através dos comandos:

# ./configure

# make all

# make install

A compilação irá gerar arquivos CGIs que serão utilizados em conjunto com o Apache. Então, para que o Nagios
funcione corretamente, o Apache deverá estar instalado e funcionando.
O Nagios funciona através de plugins, ou seja, caso você queira disponibilizar alguma funcionalidade que não
esteja no pacote padrão, basta baixar o plugin e instalar. Por padrão o Nagios é instalado em /usr/local/nagios.
Os próximos passos a serem executados no processo de instalação são:

# make install-ini

para instalar o script de inicialização do Nagios.

# make install-commandmode

para configurar as permissões de pasta para aplicativos externos.

# make install-sample

um modelo de arquivo de configuração será instalado em /usr/local/nagios/etc.

Configurando o Apache
Existem duas maneiras de se configurar o Apache, uma delas é simplesmente definindo um alias no arquivo
srm.conf, que geralmente se localiza em /etc/apache/. Para isto edite o arquivo srm.conf utilizando o seguinte
comando:

# vi srm.conf

e adicione as seguintes linhas no arquivo:

ScriptAlias /nagios/cgi-bin/ /usr/local/nagios/sbin/

Alias /nagios/ /usr/local/nagios/share/

70
Gerenciamento de Redes de Computadores | Unidade E

Será necessário, também, editar o arquivo access.conf:


Sistema Universidade Aberta do Brasil - UAB | IF Sul-rio-grandense

# vi access.conf

e adicionar as seguintes linhas no arquivo:

<Directory /usr/local/nagios/sbin>

AllowOverride None

Options ExecCGI FollowSymLinks

</Directory>

A segunda alternativa é através de um host virtual. Para fazer isto, edite o arquivo httpd.conf e adicione as linhas:

<VirtualHost seuipexterno seuipinterno>

ServerAdmin wberbert@seudominio.com.br

ServerName nagios.seudominiocom.br

DocumentRoot /usr/local/nagios/share/

ErrorLog /var/log/apache/nagios.seudominio.com.br-erro.log

Transferlog /var/log/apache/nagios.seudominio.com.br-access.log

</VirtualHost>

Note que será necessário a existência de um alias no DNS ou no arquivo host para o endereço nagios.seudomino.
com.br.

Arquivos de configuração do Nagios


Os principais arquivos de configuração do Nágios são apresentados a seguir. Inicialmente iremos compreender
sobre o que eles tratam. Na sequência iremos configurá-los um a um.

• nagios.cfg, arquivo de configuração principal do Nagios, responsável por iniciar os serviços de monitoramento.
• cgi.cfg, arquivo de configuração dos programas CGIs localizados na pasta sbin.
• hosts.cfg, arquivo contendo informações sobre hosts.
• hostgroups.cfg, arquivo contendo informações de hosts por grupos.
• contacts.cfg, contatos que deverão se notificados caso alguma falha aconteça.
• contactsgroups.cfg, contatos divididos em grupos.
• services.cfg, serviços que deverão ser monitorados.
71
Gerenciamento de Redes de Computadores | Unidade E

• dependencies.cfg, informações de serviços que dependem de outros serviços.


Sistema Universidade Aberta do Brasil - UAB | IF Sul-rio-grandense

• timeperiods.cfg, informações sobre o período de monitoramento. Podem ser definidos vários períodos de monitora-
mento diferentes.
• checkcomands.cfg, definição dos comandos que podem ser executados pelo Nagios.
• resource.cfg, macros definidas pelo usuário.

Configurando o Nagios
Primeiramente copie todos os arquivos .cfg-sample para .cfg. A configuração do Nagios não é direta, uma vez
que os arquivos de configuração são independentes. Erros são comuns ao tentar iniciar o Nagios, geralmente
ocorrendo devido a falta de configuração de algum arquivo .cfg necessário. Note que não basta apenas copiar os
arquivos .cfg-sample para .cfp. Estes arquivos .cfg-sample são apenas exemplos que servem de referência para
que você possa realizar suas próprias configurações.
Os arquivos que deverão ser editados, ou manipulados, e modificados são os seguintes:

hosts.cfg
hostgroups.cfg
contacts.cfg
contactgroups.cfg
services.cfg
cgi.cfg
escalation.cfg
dependencies.cfg
nagios.cfg

O nagios.cfg é o arquivo de configuração principal do programa, nele se encontram todas as configurações bási-
cas do software. Nenhuma modificação precisará ser feita nele. Basta apenas você colocá-lo no diretórios /usr/
local/nagios/etc/.
No arquivo cgi.cfg, iremos desabilitar a autenticação CGI para usuários a fim de facilitar a configuração. Para fazer
isto você precisará localizar a linha:

use_authentication=1

e modificá-la para:

use_authentication=0

Este arquivo deverá estar localizado em /usr/local/nagios/etc/. Caso não esteja, você precisará movê-lo.
O arquivo hostgroups.cfg armazena informações de grupos de equipamentos (computadores, switch, impresso-
ras) existentes em sua rede. A configuração dele torna-se necessário para que se organize os dispositivos de rede

72
Gerenciamento de Redes de Computadores | Unidade E

e torne a leitura mais fácil. Um exemplo de hostgroups.cfg:


Sistema Universidade Aberta do Brasil - UAB | IF Sul-rio-grandense

define hostgroup {

hostgroup_name servidores

alias Servidores windows e linux

contact_groups administrador

members computador.dominio.com.br

Note que:

computador.dominio.com.br terá que existir no arquivo de configuração hosts.cfg.

administrador terá que existir no arquivo de configuração contactgroups.cfg.

O arquivo hosts.cfg armazena as informações sobre os dispositivos de rede (computador, switch, impressora,
roteador). Um exemplo de hosts.cfg com apenas uma máquina:

define host {

use generic-host ; Name of host template to use

host_name computador.dominio.com.br

alias computador

address 192.168.0.1

check_command check-host-alive

max_check_attempts 10

notification_interval 120

notification_period 24x7

notification_options d,u,r

Onde:
• host_name é o nome do computador na rede.
• alias é um apelido amigável para o computador.

73
Gerenciamento de Redes de Computadores | Unidade E

• address é o endereço IP da máquina.


Sistema Universidade Aberta do Brasil - UAB | IF Sul-rio-grandense

• check_command é o comando a ser executado, está definido em checkcommands.cfg.


• max_check_attempts é o número máximo de vezes que o programa irá checar pelo serviço até reportar um erro.
• notification_interval, de quantos em quantos segundos será enviado uma notificação para o usuário responsável
pelo serviço.
• notification_period, qual o horário que o serviço ficará ativo.
• notification_options, quando notificar um erro, d-down,u-unrecheable,r-recovery.

O arquivo contactsgroups.cfg contém os contatos divididos em grupos. Um exemplo de contactgroups.cfg:

define contactgroup {

contactgroup_name administrador

alias Administradores de rede

members paulosr

O contacts.cfg são os contatos cadastrados no sistema. Estes contatos serão notificados caso algum erro aconte-
ça na rede. Um exemplo de contacts.cfg:

define contact {

contact_name paulosr

alias Paulo Souza Rosa

service_notification_period workhours

host_notification_period workhours

service_notification_options c,r

host_notification_options d,r

service_notification_commands notify-by-email

host_notification_commands host-notify-by-email

email paulosr@gmail.net.br

74
Gerenciamento de Redes de Computadores | Unidade E

Instalando os plugins
Sistema Universidade Aberta do Brasil - UAB | IF Sul-rio-grandense

Os plugins são os programas que farão a checagem automática dos serviços. Sem os plugins o Nagios é um pro-
grama inútil. Então, nesse momento, teremos que instalar os plugins. Para realizar esta tarefa, primeiramente
obtenha os plugins atuais no endereço: http://www.nagios.org
Na sequência descompacte com o comando:

$ tar -zxvf nagios-plugins-1.4.0alpha1.tar.gz

Entre no diretório e execute os comandos:

$ ./configure

$ make

# make install

Pronto, os plugins estarão instalados no diretório /usr/local/nagios/libexec/.


Se tudo foi feito corretamente, o Nagios a esta altura estará funcionando com a configuração básica. Agora basta
você executar o programa!
Para finalizar, é importante sempre ter em mente que:
• O Nagios não irá funcionar sem os plugins.
• O Nagios não irá funcionar se o Apache não estiver configurado corretamente.

Assim, verifique as permissões dos arquivos caso algo não esteja funcionando. Preste atenção na localização dos
arquivos e tenha certeza que configurou tudo antes de iniciar o programa.

75