Ferramentas Livres para Gerência
de Redes e Sistemas Finais
Fábio Pereira Botelho, M.Sc
[email protected]
Recife-PE, 06 de maio de 2006
Objetivos
Apresentar os conceitos básicos de redes
relacionados ao uso das ferramentas
estudadas
Apresentar ferramentas eficientes
oriundas da comunidade de software livre
para gerenciamento dos elementos
computacionais da infraestrutura de redes
TCP/IP e dos sistemas finais
Tópicos Abordados
 Sistemas Finais X Infraestrutura de Redes TCP/IP
 Intranet / Internet e Protocolos
 Protocolos Básicos Utilizados pelas Ferramentas
 ICMP
 SNMP
 Gerenciamento de Rede
 Ferramentas Auxiliares
 snmpwalk (linux)
 getif (windows)
 Nagios
 MRTG
 RRDTOOL
Sistemas Finais X Infraestrutura de
Redes
 Sistemas Finais:
 Localizados nas bordas da rede
 Executam aplicações
 Elementos mais complexos
 Infra-estrutura das redes TCP/IP:
 Núcleo da rede
 Roteadores
 Possibilitam a interconexão
entre as redes
 Redes de acesso, meio físico:
 Formada por switchs nível 2 ou 3,
hubs, pontos de acesso wireless e
enlaces de comunicação que
estão interligados ao roteador
que dá acesso à Internet
Redes TCP/IP - Internet X Intranet
 Protocolos: controlam o envio e a
recepção de mensagens
ex.: TCP, IP, HTTP, FTP, SNMP, ICMP, PPP
 Internet X Intranet



Implementam a pilha de protocolos
TCP/IP
Internet é uma rede de comutação de
pacotes - datagrama pública
Intranets são “Internets” privadas
 Protocolos definidos através das RFCs
mantidas pelo IETF
RFC: Request for comments
IETF: Internet Engineering Task Force
O que é um protocolo?
Um protocolo humano e um protocolo de rede de computadores:
Protocolos SNMP e ICMP no Modelo
Genérico de Camadas da Internet
Sistema Final
de Origem
Sistema Final
de Destino
fim-a-fim
SNMP
SNMP
UDP
UDP
ICMP
ICMP
ICMP: Internet Control Message Protocol
 Usado por computadores e
roteadores para troca de
informação de controle da
camada de rede
 Error reporting:
hospedeiro, rede, porta
ou protocolo
 Echo request/reply (usado
pela aplicação ping)
Tipo
0
3
3
3
3
3
3
4
 Transporte de mensagens:
 Mensagens ICMP
transportadas em
datagramas Ip
 ICMP message: tipo, código,
mais primeiros 8 bytes do
datagrama IP que causou o
erro
8
9
10
11
12
Código descrição
0
echo reply (ping)
0
dest. network unreachable
1
dest host unreachable
2
dest protocol unreachable
3
dest port unreachable
6
dest network unknown
7
dest host unknown
0
source quench (congestio
control - not used)
0
echo request (ping)
0
route advertisement
0
router discovery
0
TTL expired
0
bad IP header
ICMP: Internet Control Message Protocol
Funcionamento do ping
ICMP Echo Request Tipo 8, Código 0
ICMP Echo Reply Tipo 0, Código 0
192.168.0.136/24
192.168.0.171/24
ICMP: Internet Control Message Protocol
C:\Documents and Settings\Administrador>ping 192.168.0.171
Pinging 192.168.0.171 with 32 bytes of data:
Reply from 192.168.0.171: bytes=32 time<1ms TTL=64
Reply from 192.168.0.171: bytes=32 time<1ms TTL=64
Reply from 192.168.0.171: bytes=32 time<1ms TTL=64
Reply from 192.168.0.171: bytes=32 time<1ms TTL=64
Ping statistics for 192.168.0.171:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
ICMP e Nagios
 ICMP é usado pelo Nagios para verificar se os hosts, switchs, roteadores, servidores
de impressão e outros elementos da rede estão acessíveis (up) ou não (down)
dentre outras verificações disponíveis
Infra-estrutura para gerenciamento de redes
Definições:
Padrão de fato para gerenciamento de
redes
SNMP: Simple network management protocol
 Origem na Internet (SGMP)
 Usa o protocolo de transporte UDP
 Começou simples
 Desenvolvido e adotado rapidamente
 Crescimento: tamanho e complexidade
 Atualmente: SNMP V3
 Padrão de fato para gerenciamento de redes
SNMP visão geral: 4 partes-chave
 Management Information Base (MIB):
 Base de dados distribuída com dados de gerenciamento de rede
 Structure of Management Information (SMI):
 Linguagem de definição para objetos da MIB
 Protocolo SNMP
 Transporta informações e comandos sobre objetos entre o
gerenciador e o elemento gerenciado
 Segurança, capacidades administrativas
característica nova do SNMPv3
SNMP usado tradicionalmente apenas para monitorar e não para
controlar os elementos computacionais da rede
SNMP MIB
Um módulo MIB é especificado pela SMI como:
MODULE-IDENTITY
(100 MIBs padronizadas, mais proprietárias)
MODULE
OBJECT TYPE:
OBJECT TYPE:OBJECT TYPE:
objetos especificados via construção
OBJECT-TYPE da SMI
Exemplo de MIB: módulo UDP
Object ID
Nome
Tipo
Comentários
1.3.6.1.2.1.7.1
UDPInDatagrams
Counter32
número total de datagramas
entregues neste nó
1.3.6.1.2.1.7.2
UDPNoPorts
Counter32
número de datagramas
com app destino inexistente
1.3.6.1.2.1.7.3
UDInErrors
1.3.6.1.2.1.7.4
UDPOutDatagrams Counter32 número de datagramas
enviados
1.3.6.1.2.1.7.5
udpTable
Counter32 número de datagramas não
entregues por outras razões
SEQUENCE uma linha para cada porta em
uso por uma aplicação fornece
o número da porta e o
endereço IP
Nomeação de objetos
Questão: como nomear cada possível objeto padrão (protocolos,
dados, outros...) em cada possível padrão de rede??
Resposta: ISO object identifier tree:
 Nomeação hierárquica de todos os objetos
 Cada ramificação tem um nome e um número
1.3.6.1.2.1.7.1
ISO
ISO-ident. org.
US DoD
Internet
udpInDatagrams
UDP
MIB2
management
ISO object identifier tree
Protocolo SNMP
Duas formas de transportar informações da MIB: comandos e
eventos
managing
entidade
gerenciadora
entity
pedido
resposta
agente
agent
data
elemento
gerenciado
Managed
device
modo comando/resposta
managing
entidade
gerenciadora
entity
trap msg
agente
agent
data
elemento
gerenciado
Managed
device
modo evento
Ferramentas Auxiliares
Getif (Windows)
Snmpwalk (Linux)
Ferramentas Auxiliares
Getif
 É uma ferramenta free desenvolvida para
Windows baseada na ferramenta de rede
desenvolvida por Philippe Simonet.
 Entre outras funcionalidades é um excelente
cliente SNMP que permite identificar, coletar e
criar gráficos das variáveis MIB dos dispositos
que possuem o agente SNMP.
 http://www.wtcs.org/snmp4tpc/getif.htm
Ferramentas Auxiliares
Ferramentas Auxiliares
snmpwalk
 É um cliente SNMP disponível para as
plataformas LINUX e UNIX que permite a coleta
de informações das MIBs dos objetos
gerenciáveis executando o agente SNMP
Ferramentas Auxiliares
[fabio@server1 fabio]$ snmpwalk -Os -c public -v 1 192.168.0.5 system
sysDescr.0 = STRING: 1 port Print Server
sysObjectID.0 = OID: enterprises.722.2.6.1
sysUpTime.0 = Timeticks: (29140926) 3 days, 8:56:49.26
sysContact.0 = STRING: Fábio Botelho
sysName.0 = STRING: PrintServer
sysLocation.0 = STRING: [email protected]
sysServices.0 = INTEGER: 79
Servidor de impressão
Entidade gerente consulta agente SNNP para obter o valor das MIBs
Responde informando os valores das MIBs solicitadas
192.168.0.136/24
192.168.0.5/24
Nagios
Nagios
Disponível para download em
http://www.nagios.org
Documentação disponível em
http://nagios.sourceforge.net/docs/1_0/toc.
html
Nagios
 É uma aplicação para gerenciamento dos elementos
computacionais da rede e dos sistemas finais.
 Os hosts e os serviços especificados ou as switchs e
roteadores são monitorados, alertando ao administrador ou
equipe de administradores quando as coisas não vão bem
e quando voltam a melhorar.
 Utiliza os protocolos ICMP, SNMP através de plugins
instalados
 Os plugins podem definir quaisquer aplicações gerente e
agente para obtenção de informações dos hosts.
Nagios
 Características
Desenvolvido para rodar no linux, mas pode rodar em
qualquer unix
Monitoramento de serviços (SMTP, POP3, HTTP, etc)
Monitoramento dos recursos dos hosts (carga do
processador, uso do disco, swap, uso da memória
RAM)
Desenvolvimento de plugins simplificado
Necessita de um servidor web configurado (Apache)
Nagios
Características
Realização de várias atividades ao mesmo
tempo
Possibilidade de se definir uma hierarquia de
hosts com dependências entre equipamentos
de rede
Notificação dos contatos (via e-mail) quando da
ocorrência de problemas em serviços e hosts e
quando os problemas são resolvidos
Nagios
Características
Possibilidade de se configurar manipuladores
de eventos que executarão quando da
ocorrência de problemas em hosts e serviços
Interface web para a observação do status
atual da rede, dos hosts e dos serviços de rede;
das notificações e histórico de problemas; dos
arquivos de log.
Nagios
 Escopo dos objetos de dados
 Serviços tais como HTTP, SMTP, POP3, DNS, etc
 Host
 Grupos de Host
 Contatos
 Grupos de Contatos
 Comandos (onde se configuram os plugins do Nagios)
 Períodos de tempo (usados para notificar os administradores da
rede apenas durante a semana ou 24 X 7)
 Dependências de serviços (Se o servidor web cair, as
aplicações por ele servidas estarão indisponíveis)
 Dependências de elementos computacionais (host, switch e
roteadores)
 Caso o servidor Server1 caia, o serviço DNS e todos os outros nele
mantidos estarão indisponíveis
Nagios
Nagios
MRTG
Multi Router Traffic Grapher (MRTG) foi
desenvolvido em 1994 basicamente para
monitorar a carga de tráfego em links da
rede
Extendida a fim de coletar, registrar e
representar qualquer variável MIB
disponível em qualquer equipamento de
rede que implemente SNMP
MRTG
Gera páginas HTML contendo imagens
gráficas que oferecem uma representação
visual da situação do tráfego
Ou de qualquer outra variável MIB
coletada de um dispositivo executando a
agente SNMP
Encontrado em http://oss.oetiker.ch/mrtg/
MRTG
firewall.algumlugar.com.br
MRTG
Arquivo de configuração do mrtg para o servidor proxy.algumlugar.com.br gerado
após a execução do comando cfgmaker
cfgmaker --global 'WorkDir: /var/www/html/mrtg' --global 'Options[_]:
bits,growright' --output /etc/mrtg/proxy.cfg [email protected]
Target[proxy.algumlugar.com.br_2]: 2:[email protected]:
SetEnv[proxy.algumlugar.com.br_2]: MRTG_INT_IP="192.168.0.203" MRTG_INT_DESCR="eth0"
MaxBytes[proxy.algumlugar.com.br_2]: 12500000
Title[proxy.algumlugar.com.br_2]: Traffic Analysis for 2 -- proxy.algumlugar.com.br
PageTop[proxy.algumlugar.com.br_2]: <H1>Traffic Analysis for 2 -- proxy.algumlugar.com.br</H1>
<TABLE>
<TR><TD>System:</TD> <TD>proxy.algumlugar.com.br in Unknown (edit
/etc/snmp/snmpd.conf)</TD></TR>
<TR><TD>Maintainer:</TD> <TD>Fabio &lt;[email protected]&gt; (configure
/etc/snmp/snmp.local.conf)</TD></TR>
<TR><TD>Description:</TD><TD>eth0 </TD></TR>
<TR><TD>ifType:</TD> <TD>ethernetCsmacd (6)</TD></TR>
<TR><TD>ifName:</TD> <TD></TD></TR>
<TR><TD>Max Speed:</TD> <TD>100.0 Mbits/s</TD></TR>
<TR><TD>Ip:</TD>
<TD>192.168.0.203 (webmail.algumlugar.com.br)</TD></TR>
</TABLE>
MRTG
Pode representar visualmente através de
gráficos outras informações tais como
disponibilidade dos processadores,
memória RAM utilizada, utilização dos
discos
Quaisquer outras informações disponíveis
nas MIBs dos elementos gerenciáveis
Logs não crescem com o tempo
MRTG
 Arquivos de log do MRTG não crescem com o tempo
 condensados estatísticamente
 Mantém condensações dos valores para apresentação de gráficos
Diário
Semanal
Mensal
Anual
MRTG
Execução como
Daemon,ou
através da configuração da crontab
MRTG
Execução como Daemon
MRTG
Dicas importantes para o funcionamento
do MRTG
Disponibilização do serviço SNMP nos
dispositivos gerenciáveis
Identificação das MIBs cujos valores irão ser
coletados nos dispositivos gereciáveis
MRTG
Dicas Importantes
Disponibilização do serviço SNMP nos
dispositivos gerenciáveis
Linux
Windows XP
Switch 3COM
Servidores de impressão
MRTG
Serviço SNMP Hosts Linux Gerenciados
Instalação dos pacotes snmp disponíveis
na distribuição usada (e.g *snmp*.rpm)
libucd-snmp4-4.2.6-45970cl
net-snmp-utils-5.0.9-58894cl
net-snmp-5.0.9-58894cl
Configuração do arquivo
/etc/snmp/snmpd.conf
Conectiva 10
Toda árvore MIB é habilitada para consulta
MRTG
Serviço SNMP Hosts Windows XP/2000 Gerenciados
Instalação dos pacotes snmp
Serviço iniciado
MRTG
Dicas Importantes
 Identificação das MIBs cujos valores irão ser
coletados nos dispositivos gerenciáveis
Uso da ferramenta Getif
Acesso a sites com repositórios MRTG
MRTG
Identificação das MIBs a serem coletadas nos dispositivos
gerenciáveis
 Ferramenta Getif
Necessidade de baixar os arquivos com as
MIBs dos dispositivos a serem gerenciados
Diferentes para cada tipo de equipamento
As MIBs baixadas são postas no diretório de
MIBs a fim de que o Getif possa descrever
cada MIB além de obter o valor
MRTG
Identificação das MIBs a serem coletadas nos dispositivos
gerenciáveis
 Ferramenta Getif
MRTG
Identificação das MIBs a serem coletadas nos dispositivos
gerenciáveis
 Ferramenta Getif
Permite que o Getif identifique, descreva e
consulte cada MIB do elemento gerenciado
MRTG
Dicas Importantes
 Acesso a sites com repositórios MRTG
MRTG
Onde Encontrar Configurações prontas
MRTG
Onde Encontrar Configurações prontas
RRDTOOL
RRDTOOL
 Encontrado em http://oss.oetiker.ch/rrdtool/
 RRD significa Round Robin Database
 Ferramenta concebida para armazenamento e
apresentação visual de séries temporais
 Pode ser considerado uma evolução do MRTG
 Permite gráficos mais elaborados
 Usado conjuntamente com o MRTG
Download

Ferramentas Livres para Administração de Redes e Sistemas Finais