Fazendo login na interface web do Nagios
Por padrão, para acessar o Nagios, é necessário ter um usuário e senha. Estes usuários ficam cadastrados no arquivo texto "htpasswd.users", localizado no diretório
/etc/nagios3/.
O arquivo "htpasswd.users" e gerado através do programa htpasswd.
Este programa é utilizado para criar uma base de dados simples no formato "usuario:senha".
Esta base é usada, então, pelo servidor web Apache como uma das formas de proteger o acesso a um determinado site ou página web.
Para que haja uma melhor compreensão de como funciona o htpasswd vamos criar um novo usuário para acesso ao Nagios:
# htpasswd -c /etc/nagios3/htpasswd.users nagios
Obs.: após o comando, irá pedir um senha e sua confirmação.
Conforme a linha de comando acima, adicionamos no arquivo "htpasswd.users", o usuário de nome "nagios" com a senha "nagiosipv6".
Arquivos de Configuração do Nagios
cgi.cfg: assim como todos os arquivos de configuração, este arquivo está localizado no diretório
/etc/nagios3/.
Este arquivo é invocado pelo programa CGI para o funcionamento propriamente dito do Nagios. Neste arquivo são configurados diversos parâmetros, dentre os quais, destacam-se:
- arquivo de configuração principal;
- arquivos html;
- autenticação;
- usuário administrador;
- usuário padrão;
- padrão de acesso;
- background do mapa de status.
Muitos outros parâmetros estão configurados neste arquivo. Como o arquivo e por padrão todo comentado, basta abri-lo com o editor de sua preferência para obter detalhes de todos os parâmetros que estão disponíveis para uso. Isto vale para todos os outros arquivos de configuração.
contacts.cfg: (
/etc/nagios3/) neste arquivo são definidos os parâmetros utilizados no processo de notificação. O arquivo contem dentre outras definições:
- nome de contato;
- período de notificação (24x7);
- e-mail de quem ser notificado.
nagios.cfg: este é o principal arquivo de configuração do Nagios.
Neste arquivo encontram-se dentre outras, definições quanto:
- arquivo de log;
- arquivos de configuração de objetos (comandos, contatos, per odos, templates);
- arquivos de configuração de hosts (localhost, windows, switch, impressoras).
resources.cfg: este arquivo contém a definição de macros que podem ser utilizadas por outros arquivos de configuração; de maneira que, ao invés de usar em algum arquivo o caminho
/usr/local/nagios/libexec, pode-se simplesmente utilizar o macro "$USER1".
Além destes arquivos, o Nagios utiliza outros localizados no subdiretório "objects".
O conteúdo destes arquivos podem ser concentrados em apenas um, porém, por padrão eles são separados a fim de facilitar o processo de configuração que costuma ser algo bastante trabalhoso.
commands.cfg: ficam dentro deste arquivo, as definições relativas à execução de comandos de verificação que serão utilizados para monitorar os hosts e os serviços.
contacts.cfg: trata-se de um segundo arquivo com o e-mail das pessoas ou grupos, que deverão ser notificados quando um host, serviço ou grupo de host ou grupo de serviço ficar inoperante.
localhost.cfg: arquivo que contém a máquina local e serviços locais a serem monitorados, este arquivo pode ser utilizado, como exemplo, para criar outros arquivos para a monitoração de qualquer outro host ou grupo de hosts.
printer.cfg, switch.cfg, routes.cfg: arquivos de exemplo de monitoração.
templates.cfg: arquivo que contém exemplos de configuração para hosts, serviços, contatos etc.
timeperiods.cfg: este arquivo contém os períodos em que o monitoramento deve estar ativo.
Outra questão a ser considerada, é a de que o nome dos arquivos não tem muita importância, pois o que for colocado dentro do diretório "objects" será lido pelo Nagios e, consequentemente, posto em execução/monitoração, bastando que o arquivo seja declarado no arquivo "nagios.cfg".
Definir um host para monitorar
Como explanado anteriormente, são vários os arquivos que podem ser utilizados para definir a monitoração de um host, como não é objetivo deste artigo esgotar as possibilidades de configuração do Nagios, veremos a seguir, a forma mais simples de se colocar um host em monitoração.
1. Definimos a categoria de monitoração hosts acrescentado no arquivo
/etc/nagios3/nagios.cfg a linha:
cfg_file=/etc/nagios3/hosts.cfg
2. O arquivo "hosts.cfg" deve ser criado dentro do diretório
/etc/nagios3/, como no exemplo abaixo:
define host {
use linux-server
host-name servidor-01
alias servidor-01
address ipservidor-01
}
define hostgroup {
hostgroup_name remote-linux-servers
alias Remote
Linux Servers
members servidor-01
}
define service {
use generic-service
host_name servidor-01
service_description PING
check_command check_ping!100.0,20%!500.0,60%
}
Observe que, conforme o exemplo acima, além do novo host que foi definido para monitorar, foi definido um novo grupo, "remote-linux-servers". Para que o Nagios verifique ao menos se o servidor está ativo ou não, também precisa ser definido junto com o host o serviço de ping.
As novas configurações do Nagios são colocadas no "ar", reiniciando o sistema com o comando:
# /etc/init.d/nagios3 restart
Os arquivos de grupos de hosts e serviços, também podem ser definidos em arquivos em separado, bastando apenas referencia-los no arquivo "nagios.cfg". Como dito anteriormente, há varias formas de configurar os métodos no Nagios, ficando a critério do administrador do sistema escolher como.
Para ficar mais claro esta situação, vamos definir um grupo onde todos os hosts serão incluídos.
1) Definimos a categoria de monitoração hostgroup acrescentado no arquivo
/etc/nagios3/hostsgroup.cfg.
2) Criamos o arquivo "hostgroup.cfg" dentro do diretório
/etc/nagios3/ como no exemplo abaixo:
define hostgroup {
hostgroup_name all-host
alias All Hosts of System
members localhost,servidor-01
}
3) Reiniciamos o Nagios para colocar as novas configurações "no ar":
# /etc/init.d/nagios3 restart
DICA: alternativamente ao processo de reinicialização do Nagios, para que as novas configurações tenham efeito, pode-se apenas forçar a releitura dos arquivos de configuração substituindo a opção "restart" por "reload".
Como resultado da criação do novo grupo de servidores, acessando o menu "Current Status > Host Groups", teremos algo como apresentado na figura a seguir: