De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Guilherme Rezende dos Santos
Data de Publicação: 10 de Agosto de 2009
Algumas partes deste artigo foram traduzidas do artigo Complete Nagios configuration and NRPE addon configuration.
O Nagios é um serviço open source para monitoramento de rede desenvolvido para sistemas Linux e funciona na maioria dos *NIX. Ele é responsável checar a todo momento a disponibilidade dos hosts e serviços em sua rede. O monitoramento é feito através de um conjunto de Plugins responsáveis por informar ao Nagios o status dos hosts e serviços monitorados. Caso ocorra algum problema em sua rede o Nagios enviará informações alertando-o. Essas informações podem ser enviadas de diferentes formas (e-mail, mensagens instantâneas, SMS, etc).
Algumas das principais características dessa ferramenta são:
A versão do Nagios utilizada nesse artigo foi a 3.0.6 e do Nagios Plugins 1.4.13
Para iniciar a instalação do Nagios, baixe-o em http://www.nagios.org/download ou você pode utilizar o wget
# wget http://heanet.dl.sourceforge.net/sourceforge/nagios/nagios-3.0.6.tar.gz
Para compilar os pacotes do Nagios e Nagios plugins é preciso instalar os compiladores básicos e os headers do kernel do linux.
O comando
# apt-get install build-essential linux-headers-`uname -r`
realiza a instalação dos pacotes corretos.
O build-essential é o conjunto de pacotes e bibliotecas de compilação, ele instala o GCC, G++ e os demais integrantes do kit básico.
O pacote "linux-headers" inclui os headers do kernel, o conjunto de arquivos e ponteiros necessários para que o compilador seja capaz de gerar módulos adequados ao kernel em uso. Existem várias versões do pacote, uma para cada versão do kernel disponível nos repositórios (como em "linux-headers-2.6.26-1-686"); por isso, para facilitar, usamos o "linux-headers-`uname -r`" (o ` é o símbolo de crase) que faz com que o apt descubra sozinho qual versão deve instalar a partir do comando "uname -r". Com isso, a casa fica pronta para a instalação dos drivers.
Trecho retirado do artigo Debian Lenny, parte 2, de autoria de Carlos Morimoto.
Terminada a instalação é hora de compilar o Nagios.
# adduser nagios
O usuário nagios será o usuário que o Nagios utilizará para a execução. Automaticamente o grupo nagios será criado para esse usuário. Isso pode ser conferido com o comando
# grep nagios /etc/passwd
Para executar comandos externos via interface web é preciso que o servidor web esteja instalado. Para instalar o Apache
# apt-get install apache2
Durante a instalação do apache, automaticamente é criado o usuário
www-data
. Esse usuário, por padrão é quem executa o apache. Para identificar
com qual o usuário o apache está sendo executado
#grep "^User" /etc/apache2/apache2.conf
Para que o usuário nagios possa executar comandos através da interface web do apache devemos adicioná-lo ao grupo do apache. Para isso execute
# usermod -G nagios nagios # usermod -G www-data,nagios www-data
Para conferir se o usuário foi mesmo adicionado ao grupo, execute o comando
#grep nagios /etc/group
Iremos instalar o nágios no diretório /usr/local/
. Crie dentro desse diretório
uma pasta chamada nagios e copie para dentro dela os arquivos do nagios e
os plugins baixados.
Extraia os arquivos do Nagios com o comando
# tar -xvzf nagios-3.0.6.tar.gz
Acesse a pasta nagios-3.0.6/
# cd nagios-3.0.6
Execute o scritp
#./configure --prefix=/usr/local/nagios --with-cgiurl=/nagios/cgi-bin --with-htmurl=/nagios/ --with-nagios-user=nagios --with-nagios-group=nagios --with-command-group=nagios
onde:
-prefix=/usr/local/nagios | destino onde o nagios será instalado |
-with-cgiurl=/nagios/cgi-bin | Pasta CGI do Nagios |
-with-htmurl=/nagios/ | Arquivos HTML do Nagios, pasta da web interface |
-with-nagios-user=nagios | usuário do Nagios |
-with-nagios-group=nagios | grupo do Nagios |
-with-command-group=nagios | is the Nagios command group which has webserver user (Apache) and the nagios user as members. |
Se desejar ver mais opções do que podem ser utilizadas para a compilação, digite o comando
# ./configure --help
Em seguida compile o Nagios e os CGIs
# make all
Instale os binários
# make install
Instale os scripts de inicialização
# make install-init
Crie o diretório que será utilizado para a inserção de comandos externos
# make install commandmode
Instale o arquivo de configuração de EXEMPLO do Nagios. As configurações contidas nesse arquivo são apenas configurações básicas necessárias para executá-lo, provavelmente você precisará fazer alterações no arquivo /usr/local/nagios/etc/nagio.cfg de acordo com suas necessidades.
#make install-config
Nesse momento o nagios já está instalado em seu computador. Agora conheceremos a estrutura dos diretórios do Nagios
#cd /usr/local/nagios/
Você encontrará no diretório do Nagios outros seis sub-diretórios. Abaixo uma breve explicação de cada um deles
bin/ | Nagios binários do Nagios |
etc/ | Diretório principal do Nagios, ele contém os arquivos de configuração e arquivos de configuração do CGI. |
libexec/ | Os plugins do Nagios são armazenados nesse diretórios |
sbin/ | CGIs |
share/ | Arquivos HTML (para interface web e documentação online) |
var/ | Diretório vazio utilizado para os arquivos logs |
Baixe-os em http://www.nagios.org/download ou utilize o wget
# wget http://mesh.dl.sourceforge.net/sourceforge/nagiosplug/nagios-plugins-1.4.13.tar.gz
Extraia os arquivos
# tar -xvzf nagios-plugins-1.4.13.tar.gz
Acesse o diretórios nagios-plugins-1.4.13/
# cd nagios-plugins-1.4.13/
Compile o arquivo
# ./configure
Em seguida instale os binários
#make & make install
Os plugins serão instalados no diretório /usr/local/nagios/libexec
. Agora
temos o Nagios e os plugins instalados. Vamos então prosseguir com a
configuração do Apache para que seja possível acessar o Nagios e executar
comandos externos via web interface.
Existem duas formas de realizar a configuração. A primeira é criar
um arquivo contendo o ScriptAlias
configurações dentro do diretório
/etc/apache2/sites-available/
ou inserir as configurações no arquivo
httpd.conf
. Será abordado nesse artigo a segunda forma.
Dentro do seu arquivo httpd.conf
insira as seguintes configurações:
ScriptAlias /nagios/cgi-bin /usr/local/nagios/sbin/ <Directory "/usr/local/nagios/sbin/"> AllowOverride AuthConfig Options ExecCGI Order allow,deny Allow from all </Directory> Alias /nagios /usr/local/nagios/share/ <Directory "/usr/local/nagios/share"> Options None AllowOverride AuthConfig Order allow,deny Allow from all AuthName "Nagios Access" AuthType Basic AuthUserFile /usr/local/nagios/etc/htpasswd.users require valid-user </Directory>
Salve o arquivo e em seguida reinicie o apache
#/etc/init.d/apache2 restart
Para um maior segurança, o Nagios será configurado de forma que, cada usuário somente terá acesso a sua web interface caso esteja previamente cadastrado. Para isso, criaremos um arquivo de configuração contendo os usuários que terão permissão de acesso a interface do Nagios. O parâmetro "-c" do comando cria um arquivo htpasswd.users e insere o usuário guilherme .
#htpasswd -c /usr/local/nagios/etc/htpasswd.users guilherme
Será solicitado que seja criado uma senha para o usuário. Caso queira inserir
novos usuários, retire o parâmetro -c
do comando e ao final entre com o
nome do novo usuário
#htpasswd /usr/local/nagios/etc/htpasswd.users novousuario
Para finalizar edite o arquivo /usr/local/nagios/etc/cgi.cfg
. Este
arquivo contém as configurações do cgi utilizadas pelo Nagios. Configure
os parâmetros abaixo para os usuários que você cadastrou no arquivo
/usr/local/nagios/etc/htpasswd.users
para que possam acessar o sistema. No
meu caso ficou da seguinte forma:
authorized_for_system_information=guilherme authorized_for_configuration_information=guilherme authorized_for_system_commands= guilherme authorized_for_all_services=guilherme authorized_for_all_hosts=guilherme authorized_for_all_service_commands=guilherme authorized_for_all_host_commands=guilherme
Em seguida, reinicie o Nagios. Para acessá-lo digite no seu browser
http://<IPADDRESS OR HOSTNAME>/nagios/
Após a validação de usuário e senha você terá acesso ao Nagios. Agora é preciso configurar os arquivos de configuração do Nagios. Este assunto será abordado no próximo artigo. Espero ter tenha ajudado. That's all folks! :D
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários