Isso ai vai la pro FUG, claro. 2008/9/5 Diego <[EMAIL PROTECTED]>: > Ola, boa tarde lista! Montei ( com ajuda do amigo Wendel) um pequeno > howto da configuracao do Nagios. Gostaria de opniao de voces e da > verificacao de possiveis erros, obrigado ! abracos !! > > > > Nagios (R) é um sistema de monitoramento de rede e de aplicação. Ele > vigia hosts e serviços que você especificar, alertando você quando as > coisas correm mal. Algumas coisas que o Nagios pode fazer por voce: > > > * Acompanhamento dos serviços de rede (SMTP, POP3, HTTP, NNTP, PING, etc); > * Acompanhamento de recursos (processador carga, uso do disco, etc); > * Design com simples plugins que permite aos usuários facilmente > desenvolver seu próprio serviço de controle; > * Contato com notificações quando ocorrerem problemas de serviço > ou parada de hosts (por e-mail, pager, ou definido pelo metodo pelo > usuário); > * Log file rotation; > * Interface web para visualização do atual estado de rede, > notificação e problema histórico, arquivo de registro, etc. > > Ai vai um pequeno tutorial pra por o servico funcionando, para mais > detalhes acesse http://www.nagios.org > > > > Bom, let`s go ! Com o usuario root, baixe e instale o apache: > > #cd /usr/ports/www/apache13; make install clean > > > Edite o httpd.conf e insira as seguintes linhas: > > #vi /usr/local/etc/apache/httpd.conf > > ScriptAlias /nagios/cgi-bin /usr/local/www/nagios/cgi-bin/ > <Directory "/usr/local/www/nagios/cgi-bin"> > Options ExecCGI > Order allow,deny > Allow from all > AuthName "Nagios Access" > AuthType Basic > AuthUserFile /usr/local/etc/nagios/htpasswd.users > Require valid-user > </Directory> > > Alias /nagios /usr/local/www/nagios > > <Directory "/usr/local/www/nagios"> > Options None > AllowOverride None > Order allow,deny > Allow from all > AuthName "Nagios Access" > AuthType Basic > AuthUserFile /usr/local/etc/nagios/htpasswd.users > Require valid-user > </Directory> > > > Voce precisa definir o arquivo onde vai ficar o passwd dos usuarios > autorizados: > > #touch /usr/local/etc/nagios/htpasswd.users > > > #htpasswd -c /usr/local/etc/nagios/htpasswd.users ## caso queira > mudar a senha, basta nao incluir o flag -c. > > > > > Baixe e instale o nagios: > > #cd /usr/ports/net-mgmt/nagios; make install clean > > Os arquivos de configuracao do nagios ficam em /usr/local/etc/nagios. > Os principais arquivos sao: > > cgi.cfg -> Esse arquivos diz onde o CGI vai > encontrar os arquivos de configuracao. > commands.cfg -> Os comandos que o nagios oferece e suas > sintaxes. Aconselhavel da uma olhada. > nagios.cfg -> Arquivo principal do nagios, aqui voce > vai fazer o seguinte: > > # cd /usr/local/etc/nagios; vi nagios.cfg > > > ## Aqui voce ira procurar pelos cfg_file, nele voce setara` onde > estarao os arquivos de configuracao (objects): > > cfg_file=/usr/local/etc/nagios/teste.cfg <-- Fica a seu criterio > definir o nome do arquivo. > > # vi teste.cfg > > > ## Aqui esta` tudo para localhost, cabe a voce fazer as alteracoes!! ## > > ## timeperiod voce define `grupos com horarios`. Voce pode especificar > diversos horarios. Aqui eu criei 3: 24x7 (24 horas, ## 7 dias), Hora > de trabalho (de 9 ## as 17) e nonworkhours (no qual nao estamaremos > trabalhando). > > > define timeperiod{ > timeperiod_name 24x7 > alias 24 Hours A Day, 7 Days A Week > sunday 00:00-24:00 > monday 00:00-24:00 > tuesday 00:00-24:00 > wednesday 00:00-24:00 > thursday 00:00-24:00 > friday 00:00-24:00 > saturday 00:00-24:00 > } > > > define timeperiod{ > timeperiod_name workhours > alias "Normal" Working Hours > monday 09:00-17:00 > tuesday 09:00-17:00 > wednesday 09:00-17:00 > thursday 09:00-17:00 > friday 09:00-17:00 > } > define timeperiod{ > timeperiod_name nonworkhours > alias Non-Work Hours > sunday 00:00-24:00 > monday 00:00-09:00,17:00-24:00 > tuesday 00:00-09:00,17:00-24:00 > wednesday 00:00-09:00,17:00-24:00 > thursday 00:00-09:00,17:00-24:00 > friday 00:00-09:00,17:00-24:00 > saturday 00:00-24:00 > } > define timeperiod{ > timeperiod_name none > alias No Time Is A Good Time > } > > ## Contatos, a quem avisar caso algo ocorra: > > define contact{ > contact_name MY_NAME > alias Administrador da Rede > service_notification_period 24x7 > host_notification_period 24x7 > service_notification_options w,u,c,r > host_notification_options d,u,r > service_notification_commands notify-by-email ## MTA tem que ta > configurado ! > host_notification_commands host-notify-by-email ## MTA tem que ta > configurado ! > email [EMAIL PROTECTED] # email para qual o nagios vai mandar as > notificacoes. > } > > > ## Voce pode definir quantos for preciso, por exemplo, um grupo para a > equipe tecnica da empresa: > > define contact{ > contact_name local > alias Equipe Tecnica da Empresa > service_notification_period 24x7 > host_notification_period 24x7 > service_notification_options w,u,c,r > host_notification_options d,u,r > service_notification_commands notify-by-email > host_notification_commands host-notify-by-email > email [EMAIL PROTECTED] > } > > ## Aqui voce define o grupo de contatos; quais vao ser os membros, etc. > > define contactgroup{ > contactgroup_name equipe-de-suporte > alias EQUIPE DE SUPORTE > members ponha-os-nomes-aqui > } > > ## Definicao do host a ser monitorado > > define host{ > name servidor > notifications_enabled 1 > event_handler_enabled 1 > flap_detection_enabled 1 > process_perf_data 1 > retain_status_information 1 > retain_nonstatus_information 1 > register 0 > } > > > # localhost > define host{ > use servidor > host_name localhost \\ mude para o nome da sua maquina > alias localhost \\ como a maquina pode ser chamada pelo nagios. > address 127.0.0.1 \\ IP da maquina a ser monitorada > check_command check-host-alive > max_check_attempts 10 > notification_interval 120 \\ Tempo de notificacao, em segundos. > notification_period 24x7 \\ Quando vai ser notificado? > notification_options d,u,r > contact_groups equipe-de-suporte \\ Quem vai ser notificado? > } > ## Voce tambem pode montar um grupo de hosts a ser monitorado: > > define hostgroup{ > hostgroup_name servidores > alias servidores > members localhost > } > > ### Servicos, aqui eh a parte legal ! > > define service{ > name generic-service > active_checks_enabled 1 > passive_checks_enabled 1 > parallelize_check 1 > obsess_over_service 1 > check_freshness 0 > notifications_enabled 1 > event_handler_enabled 1 > flap_detection_enabled 1 > process_perf_data 1 > retain_status_information 1 > retain_nonstatus_information 1 > register 0 > } > define service{ > name gw > active_checks_enabled 1 > passive_checks_enabled 1 > parallelize_check 1 > obsess_over_service 1 > check_freshness 0 > notifications_enabled 1 > event_handler_enabled 1 > flap_detection_enabled 1 > process_perf_data 1 > retain_status_information 1 > retain_nonstatus_information 1 > register 0 > } > # roteador > define service{ > use gw > host_name z > service_description PING > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 240 > notification_period 24x7 > notification_options c,r > check_command check_ping!100.0,20%!500.0,60% > } > # >>> este servidor > define service{ > use generic-service > host_name localhost > service_description SMTP > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options c,r > check_command check_smtp > } > define service{ > use generic-service > host_name localhost > service_description IMAP > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options c,r > check_command check_imap > } > define service{ > use generic-service > host_name localhost > service_description PING > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options c,r > check_command check_ping!100.0,20%!500.0,60% > } > define service{ > use generic-service > host_name localhost > service_description POP3 > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options w,u,c,r > check_command check_pop > } > define service{ > use generic-service > host_name localhost > service_description HTTP > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options w,u,c,r > check_command check_http > } > define service{ > use generic-service > host_name localhost > service_description / free space > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options w,u,c,r > check_command check_local_disk!50%!30%!/dev/ad0s1a # <<< !!! > } > define service{ > use generic-service > host_name localhost > service_description /tmp free space > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options w,u,c,r > check_command check_local_disk!20%!10%!/dev/ad0s1e # <<< !!! > } > define service{ > use generic-service > host_name localhost > service_description /usr free space > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options w,u,c,r > check_command check_local_disk!50%!30%!/dev/ad2s1f # <<< !!! > } > define service{ > use generic-service > host_name localhost > service_description /var free space > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 3 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options w,u,c,r > check_command check_local_disk!20%!10%!/dev/ad0s1d # <<< !!! > } > define service{ > use generic-service > host_name localhost > service_description Total Processes > is_volatile 0 > check_period 24x7 > max_check_attempts 2 > normal_check_interval 5 > retry_check_interval 2 > contact_groups equipe-de-suporte > notification_interval 240 > notification_period 24x7 > notification_options w,u,c,r > check_command check_local_procs!150!200!RSZDT > } > # <<< este servidor > > define service{ > use generic-service ; Name of service template to use > host_name localhost > service_description SQUID > is_volatile 0 > check_period 24x7 > max_check_attempts 3 > normal_check_interval 5 > retry_check_interval 1 > contact_groups equipe-de-suporte > notification_interval 120 > notification_period 24x7 > notification_options w,u,c,r > check_command check_http > } > > > Lembrando que o sendmail (ou o que voce usar) deve esta` configurado. > Qualquer sugestao estamos ai ! > > -- > Att. > > Diego Queiroz dos Santos > > > > > Powered by .... > > (__) > \\\'',) > \/ \ ^ > .\._/_) FreeBSD >
-- Att. Diego Queiroz dos Santos Powered by .... (__) \\\'',) \/ \ ^ .\._/_) FreeBSD ------------------------- Histórico: http://www.fug.com.br/historico/html/freebsd/ Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd

