470 likes | 548 Views
Introdução a ferramenta de monitoramento de redes Nagios. Prof. Eduardo Maroñas Monks. Sumário. Objetivos de Redes de Computadores Aplicações e serviços Problemas comuns em redes Ferramentas básicas de diagnóstico e monitoramento Nagios Referências.
E N D
Introdução a ferramenta de monitoramento de redes Nagios Prof. Eduardo Maroñas Monks
Sumário • Objetivos de Redes de Computadores • Aplicações e serviços • Problemas comuns em redes • Ferramentas básicas de diagnóstico e monitoramento • Nagios • Referências Introdução a ferramenta de monitoramento de redes Nagios 2
Objetivos de Redes de Computadores • Conceito de Redes de Computadores: • “Uma rede de computadores é uma coleção de computadores e outros dispositivos, que usam um protocolo em comum para compartilhar recursos entre si através de um meio de transmissão”. • Recursos: • Processamento (CPU) • Impressoras • Comunicação (E-mail, Chats) • Arquivos (Textos, Música, Filmes) Introdução a ferramenta de monitoramento de redes Nagios 3
Objetivo de Redes de Computadores Software Aplicativo Software Aplicativo Recursos de Rede do Sistema Operacional Recursos de Rede do Sistema Operacional Host A Host B Interface de Rede Interface de Rede Meio Físico de Transmissão Objetivo principal de redes: “Fazer com que as aplicações troquem dados remotamente de forma confiável e rápida”. O padrão universal é a arquitetura TCP/IP Introdução a ferramenta de monitoramento de redes Nagios 4
Aplicações • Principal objetivo das redes de computadores • Primeiras aplicações: • execução remota (telnet) • transferência de arquivos • e-mail • Atualmente WWW (World Wide Web) e P2P (Peer to Peer) são as aplicações mais utilizadas na Internet • Nas empresas, transferência de arquivos, compartilhamento de impressoras, e-mail e WWW são as aplicações mais utilizadas Introdução a ferramenta de monitoramento de redes Nagios 5
Serviços • As aplicações que prestam serviços em rede devem possuir alta disponibilidade • Os serviços mais comuns são: • Servidor de arquivos/impressoras • Servidor de DNS • Servidor de e-mail • Servidor de banco de dados • Servidor de páginas • Servidor de SSH • Servidor de FTP • Servidor de autenticação (LDAP, Radius) • Servidor de aplicações (ERP, CRM) • E muitos outros... Introdução a ferramenta de monitoramento de redes Nagios 6
Serviços • Os serviços possuem portas de comunicação que possibilitam aos clientes conectarem • As portas ficam em estado de escuta esperando a conexão do cliente • Os serviços podem utilizar os protocolos TCP ou UDP da camada de transporte • Exemplos: • Servidor de e-mail: TCP 25, 110, 143 (567, 995, 993) • Servidor de banco de dados: TCP 5432, 3306, 1521/1526 • Servidor de páginas: TCP 80, 443 • Servidor de SSH: TCP 22 • Servidor de FTP: TCP 20 e 21 Lista de portas/serviços: http://www.iana.org/assignments/port-numbers Introdução a ferramenta de monitoramento de redes Nagios 7
Problemas mais comuns Problemas mais comuns Problemas mais comuns • Fator humano • Usuários despreparados/maliciosos • Administradores despreparados • Desenvolvedores despreparados • Redes e sistemas heterogêneos (complexidade) • Desrespeito a política de segurança da instituição • Infraestrutura de TI • Ameaças externas • Vírus/SPAM • P2P • Crackers... Introdução a ferramenta de monitoramento de redes Nagios 8
Problemas mais comuns • Ativação de equipamentos na rede utilizando servidores de DHCP • Access points, principalmente • Vírus • Anti-vírus sem atualização • Windows desatualizado • Softwares de P2P • BitTorrent é campeão! • Falta de restrições de acesso a serviços e sites • Falta de energia • Servidores mal dimensionados • Largura de banda insuficiente (quando será suficiente?) • Sistemas e aplicações com problemas!!! Introdução a ferramenta de monitoramento de redes Nagios 9
Ferramentas Básicas • PING • Verificar atraso, perdas e conectividade de hosts (Win/Linux). • TRACERT • Gerar uma rota (hops) entre o host de origem e o host de destino (Win/Linux (traceroute)). • ARP • Verificar e gerenciar a tabela arp no host (Win/Linux). • IPCONFIG • Verificar as configurações de endereçamento do host (Win). • IFCONFIG • Verificar as configurações de endereçamento do host (Linux). • NETSTAT • Verificar as conexões e as tabelas de roteamento (Win/Linux). • TELNET • Verificar as portas de comunicação dos serviços (Windows/Linux). Introdução a ferramenta de monitoramento de redes Nagios 10
Ferramentas Básicas • MTR(http://winmtr.net/download-winmtr/) • Verificar de forma contínua as perdas, atrasos e jitter entre dos hosts (misto de ping com traceroute) (Linux/Win). • TTCP(http://www.pcausa.com/Utilities/pcattcp.htm) • Gerar tráfego entre dois hosts (Win/Linux). • NSLOOKUP • Verificar os registros de DNS (Win/Linux). • TCPVIEW(http://technet.microsoft.com/en-us/sysinternals/bb897437.aspx) • Visualizar de conexões no host, similar ao netstat (Win). • DIG(http://members.shaw.ca/nicholas.fong/dig/dig-files3.zip) • Verificar registros de DNS. Similar ao nslookup (Win/Linux). • IPERF/JPERF(http://sourceforge.net/projects/iperf/files/jperf/jperf%202.0.0/jperf-2.0.0.zip/download) • Gerar tráfego para testes de redes. (Win/Linux) • NETMETER(http://superdownloads.uol.com.br/download/132/netmeter/) • Monitorar o uso de largura de banda (Win). Introdução a ferramenta de monitoramento de redes Nagios 11
Ferramentas Básicas • Network TrafficView(http://www.nirsoft.net/utils/network_traffic_view.html) • Monitorar o tráfego das aplicações, registrando diversas características das conexões (Windows). • netsh(http://technet.microsoft.com/en-us/library/cc754516%28v=ws.10%29.aspx ) • Gerenciar as configurações e serviços de redes por linha de comando no Windows. • iftop(http://www.ex-parrot.com/pdw/iftop/ ) • Monitorar tráfego de rede por interface e conexões (Linux). • tcptrack(http://linux.die.net/man/1/tcptrack ) • Monitorar tráfego de rede por interface e conexões (Linux). Introdução a ferramenta de monitoramento de redes Nagios 12
Ferramentas Básicas - Online • Alguns sites que possuem ferramentas de diagnóstico de redes: • http://network-tools.com/ • http://www.dnsstuff.com/ • http://www.traceroute.org/ • http://visualroute.visualware.com/ • http://www.mxtoolbox.com/ • http://ping.eu/ • http://www.yougetsignal.com/tools/visual-tracert/ • http://en.dnstools.ch/visual-traceroute.html Introdução a ferramenta de monitoramento de redes Nagios 13
Ferramentas básicas Ferramentas básicas Dica: no Windows, usar o parâmetro –t para deixar o teste contínuo. Para testar o acesso a redes remotas, o primeiro host a ser testado dever ser o gateway! • Ping • Utilizada para verificar se um host está ativo em rede • Mostra a latência e as perdas de pacotes entre os hosts testados • Trabalha na camada de rede. Portanto, não tem como testar se as aplicações estão ativas no host remoto • Não mostra com precisão a largura de banda • Ferramenta mais básica para diagnóstico de redes Introdução a ferramenta de monitoramento de redes Nagios 14
Ferramentas básicas Ferramentas básicas Dica: ao retornar um asterisco, o problema pode estar em algum bloqueio no firewall do roteador, perdas de pacotes ou loop de roteamento. É possível mapear, de acordo com os roteadores do caminho, em quais localizações geográficas o pacote passou para chegar no destino. • Tracert • Utilizada para traçar a rota entre dois hosts • Mostra quantos saltos (hops) existem no caminho entre o host origem e o host destino e os atrasos em cada um • Necessária para diagnóstico de problemas em roteamento • No Linux, o nome do comando é traceroute Introdução a ferramenta de monitoramento de redes Nagios 15
Ferramentas básicas Ferramentas básicas Dica: se o MAC do host não aparecer na tabela ARP, ou não está ativo ou está em outra rede diferente do host local. • ARP • ARP(Address Resolution Protocol) • Protocolo responsável por encontrar o endereço MAC correspondente ao endereços IP • Utiliza transmissões em broadcast • Necessário na comunicação de hosts locais (diretamente conectados) e entre hosts em diferentes redes (gateway) • Monta uma tabela no host para fazer cache Introdução a ferramenta de monitoramento de redes Nagios 16
Ferramentas básicas Ferramentas básicas Dica: para trocar o endereço IP, o procedimento recomendado é fazer um release e depois um renew. Entretanto, dependendo da configuração do servidor e a situação dos empréstimos, o endereço a ser recebido pode ser o mesmo anterior. • Ipconfig • Utilizada mostrar informações sobre o endereçamento de interfaces, manipular o cliente de DHCP, limpar cache de DNS no Windows • Exemplos de uso: • ipconfig /all - Mostra todas as informações das interfaces • ipconfig /release - Libera o empréstimo de endereço para o servidor de DHCP • ipconfig /renew - Solicita renovação de endereço para o servidor de DHCP • ipconfig /renew - Limpa o cache de DNS Introdução a ferramenta de monitoramento de redes Nagios 17
Ferramentas básicas Ferramentas básicas Dica: no Linux para renovar o endereço IP, o utilitário é o dhclient. • Ifconfig • Utilizada para gerenciar as interfaces de rede no Linux • Mostra estatísticas de tráfego e erros nas interfaces • Exemplos de uso: • ifconfig eth0 192.168.24.100/24 – configura a interface eth0 com o IP 192.168.24.100 e máscara 255.255.255.0 • ifconfig eth0 down – desativa a interface eth0 • ifconfig eth0:1 192.168.24.101/24 – cria uma interface virtual sobre a interface física eth0, com o IP 192.168.24.101 e máscara de rede 255.255.255.0 Introdução a ferramenta de monitoramento de redes Nagios 18
Ferramentas básicas Ferramentas básicas Dica: para deixar o netstat monitorando continuamente as informações, pode-se usar o parâmetro –t 2 (a cada dois segundos) no Windows e no Linux o parâmetro -c • Netstat • Utilizada para mostrar as conexões de rede, tabelas de roteamento e estatísticas do tráfego e protocolos • Existem algumas diferenças entre as ferramentas no Windows e no Linux. • Entretanto, as funcionalidades básicas existem nas duas • Exemplos de uso: • netstat –an – verifica todas as conexões ativas e disponíveis no host • netstat –rn – mostra a tabela de roteamento • netstat –s – mostra estatísticas dos protocolos Introdução a ferramenta de monitoramento de redes Nagios 19
Ferramentas básicas Ferramentas básicas Dica: para testar e-mail com SMTP, POP3, IMAP, FTP, HTTP pode-se usar as mensagens dos protocolos e usar tal como um cliente nativo. • Telnet • Protocolo com funcionalidades de acesso remoto emulando terminais • Não é recomendável o uso para acesso remoto a servidores devido a não usar criptografia na comunicação • O cliente pode ser usado para testar o acesso a portas de serviços • Disponível no Linux e no Windows XP (Vista e 7 não tem mais) • Alternativa: Putty (http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe) • Exemplos: • telnet mail.hotmail.com 25 • telnet www.google.com 80 • telnet pop.uol.com.br 110 Introdução a ferramenta de monitoramento de redes Nagios 20
Ferramentas básicas Ferramentas básicas Dica: para ativar a medição do jitter no Mtr do Linux, editar o campos na opção “Order of fields” e adicionar os campos a respeito de jitter • Mtr • Utilizada medir a latência e as perdas de pacotes no caminho entre dois hosts • Possibilita a visualização em tempo real dos links congestionados na rede • Mostra o Jitter entre os dois hosts • Disponível para Linux (por meio de pacotes) e Windows Introdução a ferramenta de monitoramento de redes Nagios 21
Ferramentas básicas Ferramentas básicas Dica: deve-se ter cuidado para não congestionar a rede ao realizar testes em horários onde usuários usem serviços na rede. • TTCP • Utilizada medir a largura de banda entre dois hosts (similar a ferramenta Iperf) • Possibilita que os testes possam ser realizados com os protocolos da camada de transporte TCP e UDP • Um lado como servidor (receiver) e o outro como cliente (transmitter) • Disponível para Linux (por meio de pacotes) e Windows Introdução a ferramenta de monitoramento de redes Nagios 22
Ferramentas básicas Ferramentas básicas Dica: o uso de servidor cache de DNS local melhora o desempenho da resolução de nomes. Utilizar o DNS do Google também devido ao cache! • Nslookup • Utilizada para verificar o funcionamento do serviço de DNS • Testes de registros A (Address), CNAME (Canonical), MX (Mail Exchange), NS (Name Server) • Exemplos: Introdução a ferramenta de monitoramento de redes Nagios 23
Ferramentas básicas Ferramentas básicas Dica: marcar a opção “Always on Top” para poder ver as conexões das aplicações • Tcpview • Utilizada para monitorar as conexões TCP e UDP em hosts Windows • Mostra os processos com as portas de comunicação e conexões • Mostra os bytes enviado e recebidos das conexões Introdução a ferramenta de monitoramento de redes Nagios 24
Ferramentas básicas Ferramentas básicas Dica: a ferramenta Dig não está disponível por padrão no Windows. Uma versão para Windows está disponível neste endereço http://members.shaw.ca/nicholas.fong/dig/dig-files3.zip • Dig • Utilizada para verificar o funcionamento do serviço de DNS • Similar ao nslookup, com algumas funções avançadas • Exemplo: • dig www.ifsul.edu.br • dig @8.8.8.8 www.ifsul.edu.br • dig +trace www.ifsul.edu.br Introdução a ferramenta de monitoramento de redes Nagios 25
Ferramentas básicas Ferramentas básicas Dica: o tráfego efetivo (vazão) máxima em uma rede ethernet a 100Mbit/s é cerca de 94Mbit/s. Jperf Cliente Jperf Servidor • Iperf/Jperf • Utilizada para gerar tráfego na rede • Linha de comando: iperf • Interface gráfica em Java: jperf • Funciona com cliente/servidor • Cliente envia dados para o servidor (upload) • Servidor recebe os dados do cliente ou múltiplos clientes (download) • Interessante para testar links de redes wireless, firewall, roteadores e meios físicos Introdução a ferramenta de monitoramento de redes Nagios 26
Ferramentas básicas Ferramentas básicas Dica: trocar a unidade de medição da ferramenta para bit/s • Netmeter • Utilizada para medir o tráfego gerado em um host Windows • Interessante para medir o tráfego de aplicações usadas em estações de trabalho • Armazena totais e gera relatórios diários, semanais e mensais de tráfego Introdução a ferramenta de monitoramento de redes Nagios 27
Ferramentas básicas Ferramentas básicas Dica: utilizar o modo Raw Sockets para monitorar interfaces sem fios • Network TrafficView • Utilizada para medir o tráfego gerado e analisar as aplicações em rede em um host Windows • Interessante para monitorar em tempo real as aplicações usadas em estações de trabalho • Possui diversas estatísticas em cada conexão capturada Introdução a ferramenta de monitoramento de redes Nagios 28
Ferramentas básicas Ferramentas básicas Dica: para capturar tráfego de rede e gravar no arquivo capture.etl: netsh trace start capture=yes tracefile=c:\capture.etl Para parar: netsh trace stop • netsh • Utilizada para gerenciar funcionalidades de rede em um host Windows • Interessante para criação de scripts para automatização de tarefas • Diminuição de cliques para realizar as tarefas! • Para desabilitar o firewall: • netsh firewall set opmode disable • Para configurar o endereçamento da interface de rede "Local Area Connection": • netsh interface ip set address local static [EndIP] [Máscara] [Gateway] 1 • Para configurar o servidor de DNS na interface de rede "Local Area Connection": • netsh interface ip set dns local statica [EndIP do Servidor de DNS] • Para configurar a interface de rede em DHCP (obter IP automático): • netsh interface ip set address local dhcp Introdução a ferramenta de monitoramento de redes Nagios 29
Ferramentas básicas Ferramentas básicas Dica: utilizar a letra “h” para verificar as possibilidades de ordenação de colunas. As letras “n”, “N” e “p” ativam e desativam a resolução de nomes e as portas utilizadas • iftop • Utilizada para medir o tráfego em interfaces no Linux • Interessante para medir o tráfego em tempo real de aplicações e endereços IP • Possui filtros para monitoramento • Exemplos: • iftop –i eth0 –F 200.90.90.0/24 (monitora somente endereços da rede 200.90.90.0/24) • iftop –i eth0 –f “port 443 or port 1935” (monitora somente as portas 443 e 1935) Introdução a ferramenta de monitoramento de redes Nagios 30
Ferramentas básicas Ferramentas básicas Dica: utilizar a letra “s” para ordenar as conexões por consumo de banda ou volume de bytes • tcptrack • Utilizada para medir o tráfego em interfaces no Linux • Interessante para medir o tráfego em tempo real de aplicações e endereços IP • Similar a ferramenta Tcpview para Windows • Exemplos de uso (utiliza o padrão pcap (tcpdump) para os filtros • tcptrack –i eth0(monitora as conexões na interface eth0) • tcptrack -i eth0 port 80 and not host 200.98.98.15(monitora as conexões na porta 80 e que não sejam do host 200.98.98.15) Introdução a ferramenta de monitoramento de redes Nagios 31
Nagios • Ferramenta de monitoramento de código-fonte aberto • Evolução do projeto Netsaint • Histórico (http://www.nagios.org/about/history) • Baseado em plugins • Qualquer serviço de rede pode ser monitorado • Possui agentes para Windows e Linux • Monitoramento de usuários, espaço em disco, processos... • Interface web • Configurações em arquivos texto Introdução a ferramenta de monitoramento de redes Nagios 32
Nagios • Instalação • Distribuição CentOS 5.8 • Ativar o repositório RPMForge (http://pkgs.repoforge.org/rpmforge-release/) • Instalar os pacotes • yum install nagios nagios-plugins • Para instalar o agente de monitoramento NRPE (Nagios Remote Plugin Executor) e os seus plugins • yum install nagios-nrpe nagiosplugins-nrpe Introdução a ferramenta de monitoramento de redes Nagios 33
Nagios • Instalação • Agente no Windows XP/2003/2008 • Baixar o agente NSClient++ • http://sourceforge.net/projects/nscplus/ • Instalar o cliente • Instalação tipo “NEXT” • Será criado um serviço no host • O agente fica escutando na porta 5666 usando o protocolo TCP • A configuração é em modo texto. Introdução a ferramenta de monitoramento de redes Nagios 34
Nagios • Configuração • Diretório padrão de configurações: • /etc/nagios • Copiar o diretório /etc/nagios/objects para /etc/nagios/meusite • Modificar o caminho dos arquivos de configuração no arquivo /etc/nagios/nagios.cfg • Comentar todas as diretivas que contenham cfg_file ou cfg_dir • Criar a diretiva: cfg_dir=cfg_dir=/etc/nagios/meusite • Qualquer arquivos que esteja neste diretório e que tenha a extensão .cfg será interpretado como arquivo de configuração no Nagios Introdução a ferramenta de monitoramento de redes Nagios 35
Nagios • Configuração • O Nagios trabalha com templates (modelos) • Isto facilita bastante a configuração devido a diminuição de linhas nas configurações • Exemplo de definição de um host, arquivo windows.cfg: Introdução a ferramenta de monitoramento de redes Nagios 36
Nagios • Configuração • Para cada host podem ser definidos serviços a serem monitorados • Os monitoramento são feitos por meio de plugins • Exemplo de definição de um serviço: Introdução a ferramenta de monitoramento de redes Nagios 37
Nagios • Configuração • Exemplo de definição de um modelo, arquivo templates.cfg: Introdução a ferramenta de monitoramento de redes Nagios 38
Nagios • Configuração • O modelo de contato está no arquivo templates.cfg • Exemplo de definição de contatos, arquivo contacts.cfg: Introdução a ferramenta de monitoramento de redes Nagios 39
Nagios • Configuração • Os comandos definem de que forma serão monitorados os hosts e os serviços • São baseados nos plugins (/usr/lib/nagios/plugins/) • Exemplo de definição de comandos, arquivo commands.cfg: Introdução a ferramenta de monitoramento de redes Nagios 40
Nagios • Configuração • Hierarquia de hosts • A diretiva parents indica quais hosts são necessários estarem ativos para o host a ser monitorado possa ser alcançado. • Por exemplo, se um roteador que fique entre o Nagios e o host a ser monitorado não estiver ativo (DOWN) não adianta testar o host requisitado. Introdução a ferramenta de monitoramento de redes Nagios 41
Nagios • Configuração • Depuração da configuração • Para verificar a configuração do Nagios, pode-se utilizar o seguinte comando: • /usr/bin/nagios -v /etc/nagios/nagios.cfg Introdução a ferramenta de monitoramento de redes Nagios 42
Nagios • Plugins • Podem ser criados com qualquer linguagem de programação • As saídas devem ser as seguintes: • Ok (0) - tudo certo • Warning (1) – alerta • Critical (2) - crítico • Unknown (3) - desconhecido • O plugin pode gerar dados de saída para serem usados em gráficos (performance data) Introdução a ferramenta de monitoramento de redes Nagios 43
Nagios Verificação de parâmetros Coleta a quantidade de MACs por SNMP Se maior ou igual ao valor crítico, código 2 (CRITICAL) Se maior ou igual ao valor de alerta, código 1 (WARNING) Se for menor que o valor de alerta, código 0 (OK) Passagem de parâmetros para definir os limites de CRITICAL e WARNING • Plugins • Exemplo • Checagem de endereços MAC na tabela de switches usando SNMP Introdução a ferramenta de monitoramento de redes Nagios 44
Nagios • Demonstração • Usuário: nagiosadmin • Senha: errc2012 • Link da VM (VMWare Player): ftp://192.168.200.3/Nagios_ERRC.zip Introdução a ferramenta de monitoramento de redes Nagios 45
Referências • Livros • PETERSON, L; DAVIE, B. Redes de Computadores – Uma Abordagem de Sistemas. 3ª Ed. Campus, 2004. • KUROSE, J; ROSS, K. Redes de Computadores e a Internet – Uma Abordagem top-down. 3ª Ed. Pearson, 2006. • TANENBAUM, A. Redes de Computadores. 4ª Ed. Campus, 2003. • CISCO, Curso Oficial CCNA – Módulo 1 • BARTH, Wolfgang. Nagios – System and Network Monitoring. 2nd edition. No Starch Press, 2008. Introdução a ferramenta de monitoramento de redes Nagios 46
Referências • Sites • Site do Nagios: http://www.nagios.org/ • Adicionais para o Nagios:http://exchange.nagios.org/ • MulticastStorm:http://multicaststorm.blogspot.com/ Introdução a ferramenta de monitoramento de redes Nagios 47