Nagios
-Ferramenta capaz de definir hierarquia de rede.
Ou seja ele pode perceber quantos computadores estão ligados a quais rotiadoresee todos elementos redere.
- Checagem paralela ele da atenção a tudo ao mesmo tempo
- Recursos de Clientes - Uso de memoria uso de disco, serviços de redes Httpm smtp E OUTROS.
- Utiliza o monitoramento TCP/ip
- Tem varios Pluguins para ajudar nossa vida de adm de redes.
OBS: Sem plugins o nagios não adianta de nada.
- Monitoria remota usando tuneis criptografados SSL
- Notificação atraves de relatorios SMS email ouu na tela.
- Tratadores de eventos
- Rotação automatica de log ( quando estoura a quota de log ) ele zipa e te manda por email
- Interface web bem amigavel.
--------------------------------------------------------
Instalação
Vou mostrar como fazer em uma maquina rodando o O.S GNU/Linux
Abra o terminal e digite
apt-get updade
apt-get upgrade ( Atualiza pacotes instalados )
Logue como root e instale o apache
apt-get install -y apache2 (Apache2 é o servidor web)
apt-get install -y php5
apt-get install -y biuld-essential ( Compiladores e bibliotecas para instalar o nagios)
apt-get install -y libgd2-xpm-dev (Biblioteva para executar programas dinamicamente ( biblitoeca grafica ))
Vamos ciar o usuário nagios e mudar sua senha. Depois criaremos o grupo nagcmd
(grupo que permite comandos externos).
#useradd –m –s /bin/bash nagios (-m para criar a home e -s seta o shell do usuário)
#passwd nagios
#groupadd nagcmd
#usermod -a -G nagcmd nagios (-a para acrescentar o grupo -G)
#usermod -a -G nagcmd www-data (adiciona o usuário www-data, já existente no sistema ao
grupo nagcmd)
Primeiro vamos baixar o arquivo .tar.gz do Nagios usando o wget (caso não funcione o
wget instale-o através do comando #apt-get install wget)
#wget Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... /nagios/files/nagios-3.x/nagios-3.4.1/nagios-3.4.1.tar.gz
Vamos agora descompactar e compilar o nagios
#tar –zxvf nagios-3.4.1.tar.gz (-z para arquivo gzip, -x extrair, -v verbose, -f file aquivo)
#rm nagios-3.4.1.tar.gz (Não vamos mais precisar dele depois de extraído)
#cd nagios
#./configure --prefix=/usr/local/nagios --with-command-group=nagcmd --enable-nanosleep --enable-event-broker (Este commando usa um script de configuração do NAGIOS definindo os
parâmetros que passamos)
#make all
#make install (Instala arquivos binários)
#make install-init (Instala os scripts de inicialização)
#make install-commandmode (Instala diretórios de comando externo)
#make install-config (Instala exemplos de arquivos de configuração)
#make install-webconf (Instala as configurações da interface web)
Agora vamos criar usuário e atribuir senha para acesso via web
#htpasswd –c /usr/local/nagios/etc/htpasswd.users nagiosadmin (-c para criar o arquivo de
senhas).
INSTALAÇÃO DOS PLUGINS
Vamos baixar o arquivo dos plugins no caminho semelhante ao que estava o nagios
#cd ..
#wget http:// sourceforge.net/projects /nagiosplug/files/nagiosplug/ 1.4.15/nagios-plugins-1.4.15.tar.gz
Descompactando e compilando os plugins
#tar –zxvf nagios-plugins-1.4.15.tar.gz
#rm nagios-plugins-1.4.15.tar.gz
#cd nagios-plugins-1.4.15
#./configure --with-nagios-user=nagios --with-nagios-group=nagios
#make
#make install
INICIANDO O NAGIOS
Verifique se todas as configurações estão corretas. Sempre utilizar este comando antes
de reiniciar o seu NAGIOS, este comando testa toda a configuração e aponta caso tenha
qualquer problema na configuração.
#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Você também deve colocar o NAGIOS para ser inicializado assim que a máquina for
ligada escolhendo em que nível ele deve ser inicializado. Substitua o “X” pelo nível que desejar.
#ln –s /etc/init.d/nagios /etc/rcX.d/S99nagios
Reiniciar o apache e starte o NAGIOS
#/etc/init.d/apache2 reload
#/etc/init.d/nagios start
CONFIGURANDO O ENVIO DE NOTIFICAÇÕES POR E-MAIL
Com um editor de texto acesse o arquivo /usr/local/nagios/etc/objects/commands.cfg
e edite a definição de comando: notify-service-by-email e notify-host-by-email
#vim /usr/local/nagios/etc/objects/commands.cfg
define command {
command_name notify-service-by-email
command_line /usr/bin/sendEmail -s servidor_smtp -f e-mail_do_remetente
-xu conta_de_envio -xp senha_para_autenticacao -t $CONTACTEMAIL$ -o tls=yes -u “**
$NOTIFICATIONTYPE$: $HOSTALIAS$/$SERVICEDESC$ esta com o status $SERVICESTATE$ **” -m “***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService:
$SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState:
$SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n”
}
Após estas configurações, resta apenas você instalar o programa senEmail e suas
dependências.
#apt-get install sendEmail
Observação:
Alinha de comando acima não tem “enter”. É tudo uma linha única! Use o comando man
sendEmail para entender melhor os parâmetros que ele utiliza. Como exemplo, segue
modelo abaixo para substituição dos argumentos em azul
(...)/usr/bin/sendEmail -s smtp.gmail.com:587 -f seunome@gmail.com -xu seunome@gmail.com -xp sua senha (...)
#apt-get install openssl
#apt-get install libcrypt-ssleay-perl
#apt-get install libio-socket-ssl-perl
CONSIDERAÇÕES FINAIS
Bom pessoal eu como gerente de redes não vivo sem essa ferramenta, é excelente e eu recomendo a todos.
Fontes:
Várias na internet, e minha experiência com o software
-Ferramenta capaz de definir hierarquia de rede.
Ou seja ele pode perceber quantos computadores estão ligados a quais rotiadoresee todos elementos redere.
- Checagem paralela ele da atenção a tudo ao mesmo tempo
- Recursos de Clientes - Uso de memoria uso de disco, serviços de redes Httpm smtp E OUTROS.
- Utiliza o monitoramento TCP/ip
- Tem varios Pluguins para ajudar nossa vida de adm de redes.
OBS: Sem plugins o nagios não adianta de nada.
- Monitoria remota usando tuneis criptografados SSL
- Notificação atraves de relatorios SMS email ouu na tela.
- Tratadores de eventos
- Rotação automatica de log ( quando estoura a quota de log ) ele zipa e te manda por email
- Interface web bem amigavel.
--------------------------------------------------------
Instalação
Vou mostrar como fazer em uma maquina rodando o O.S GNU/Linux
Abra o terminal e digite
apt-get updade
apt-get upgrade ( Atualiza pacotes instalados )
Logue como root e instale o apache
apt-get install -y apache2 (Apache2 é o servidor web)
apt-get install -y php5
apt-get install -y biuld-essential ( Compiladores e bibliotecas para instalar o nagios)
apt-get install -y libgd2-xpm-dev (Biblioteva para executar programas dinamicamente ( biblitoeca grafica ))
Vamos ciar o usuário nagios e mudar sua senha. Depois criaremos o grupo nagcmd
(grupo que permite comandos externos).
#useradd –m –s /bin/bash nagios (-m para criar a home e -s seta o shell do usuário)
#passwd nagios
#groupadd nagcmd
#usermod -a -G nagcmd nagios (-a para acrescentar o grupo -G)
#usermod -a -G nagcmd www-data (adiciona o usuário www-data, já existente no sistema ao
grupo nagcmd)
Primeiro vamos baixar o arquivo .tar.gz do Nagios usando o wget (caso não funcione o
wget instale-o através do comando #apt-get install wget)
#wget Apenas usuários registrados e ativados podem ver os links., Clique aqui para se cadastrar... /nagios/files/nagios-3.x/nagios-3.4.1/nagios-3.4.1.tar.gz
Vamos agora descompactar e compilar o nagios
#tar –zxvf nagios-3.4.1.tar.gz (-z para arquivo gzip, -x extrair, -v verbose, -f file aquivo)
#rm nagios-3.4.1.tar.gz (Não vamos mais precisar dele depois de extraído)
#cd nagios
#./configure --prefix=/usr/local/nagios --with-command-group=nagcmd --enable-nanosleep --enable-event-broker (Este commando usa um script de configuração do NAGIOS definindo os
parâmetros que passamos)
#make all
#make install (Instala arquivos binários)
#make install-init (Instala os scripts de inicialização)
#make install-commandmode (Instala diretórios de comando externo)
#make install-config (Instala exemplos de arquivos de configuração)
#make install-webconf (Instala as configurações da interface web)
Agora vamos criar usuário e atribuir senha para acesso via web
#htpasswd –c /usr/local/nagios/etc/htpasswd.users nagiosadmin (-c para criar o arquivo de
senhas).
INSTALAÇÃO DOS PLUGINS
Vamos baixar o arquivo dos plugins no caminho semelhante ao que estava o nagios
#cd ..
#wget http:// sourceforge.net/projects /nagiosplug/files/nagiosplug/ 1.4.15/nagios-plugins-1.4.15.tar.gz
Descompactando e compilando os plugins
#tar –zxvf nagios-plugins-1.4.15.tar.gz
#rm nagios-plugins-1.4.15.tar.gz
#cd nagios-plugins-1.4.15
#./configure --with-nagios-user=nagios --with-nagios-group=nagios
#make
#make install
INICIANDO O NAGIOS
Verifique se todas as configurações estão corretas. Sempre utilizar este comando antes
de reiniciar o seu NAGIOS, este comando testa toda a configuração e aponta caso tenha
qualquer problema na configuração.
#/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Você também deve colocar o NAGIOS para ser inicializado assim que a máquina for
ligada escolhendo em que nível ele deve ser inicializado. Substitua o “X” pelo nível que desejar.
#ln –s /etc/init.d/nagios /etc/rcX.d/S99nagios
Reiniciar o apache e starte o NAGIOS
#/etc/init.d/apache2 reload
#/etc/init.d/nagios start
CONFIGURANDO O ENVIO DE NOTIFICAÇÕES POR E-MAIL
Com um editor de texto acesse o arquivo /usr/local/nagios/etc/objects/commands.cfg
e edite a definição de comando: notify-service-by-email e notify-host-by-email
#vim /usr/local/nagios/etc/objects/commands.cfg
define command {
command_name notify-service-by-email
command_line /usr/bin/sendEmail -s servidor_smtp -f e-mail_do_remetente
-xu conta_de_envio -xp senha_para_autenticacao -t $CONTACTEMAIL$ -o tls=yes -u “**
$NOTIFICATIONTYPE$: $HOSTALIAS$/$SERVICEDESC$ esta com o status $SERVICESTATE$ **” -m “***** Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService:
$SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState:
$SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$\n”
}
Após estas configurações, resta apenas você instalar o programa senEmail e suas
dependências.
#apt-get install sendEmail
Observação:
Alinha de comando acima não tem “enter”. É tudo uma linha única! Use o comando man
sendEmail para entender melhor os parâmetros que ele utiliza. Como exemplo, segue
modelo abaixo para substituição dos argumentos em azul
(...)/usr/bin/sendEmail -s smtp.gmail.com:587 -f seunome@gmail.com -xu seunome@gmail.com -xp sua senha (...)
#apt-get install openssl
#apt-get install libcrypt-ssleay-perl
#apt-get install libio-socket-ssl-perl
CONSIDERAÇÕES FINAIS
Bom pessoal eu como gerente de redes não vivo sem essa ferramenta, é excelente e eu recomendo a todos.
Fontes:
Várias na internet, e minha experiência com o software
Comment