Você está na página 1de 148

Gerenciamento de Redes com SNMP

Instrutor: Andr Luis Boni Do deo@reitoria.unicamp.br 2012

O trabalho Gerenciamento de Redes com SNMP de Andr Luis Boni Do foi licenciado com uma Licena Creative Commons - Atribuio - NoComercial - CompartilhaIgual 3.0 No Adaptada.

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

Queria agradecer em primeiro lugar a Deus pelos talentos a mim confiados, inclusive o dom maravilhoso do ensino. Em segundo lugar a minha amada esposa, grande parte do meu tempo dedicado informtica, inclusive boa parte das minhas horas vagas, e ela tem sido uma companheira em todos os momentos me apoiando e incentivando sempre. Aos meus amigos Bruno Daniel Alves dos Santos e Marcos Antnio de Almeida Cor que sempre me incentivaram a registrar esse conhecimento. Aos incansveis: Adriano Rodrigues Paganotto, Aecio dos Santos Pires e Carlos Eduardo de Oliveira que foram os revisores desse material, sempre me cobrando o melhor, mais detalhado, mais didtico, esse material no seria metade do que , sem vocs amigos. E por ltimo, mas no menos importante ao grande Conrado Pinto Rebessi, reponsvel pela palestra que despertou meu interesse no assunto e por inmeras horas de consultoria sobre o assunto, meu amigo esse material no existiria se no fosse por voc.

Conrado em 2007 no FLISOL Campinas com sua palestra: Monitoramento de servidores com SNMP

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

1.

CONCEITOS DE GERNCIA DE REDES - VISO GERAL ....................................................................... 13 1.1. O QUE GERNCIA DE REDES? ............................................................................................................ 13 1.2. QUAIS OS OBJETIVOS DA GERNCIA DE REDES? ....................................................................................... 13 1.3. POR QUE GERENCIAR UMA REDE? ......................................................................................................... 13 1.4. O QUE GERENCIAR? ........................................................................................................................... 13 1.4.1. Elementos ativos: .................................................................................................................... 13 1.4.2. Servidores: ............................................................................................................................... 14 1.4.3. Clientes: ................................................................................................................................... 14 1.5. PARA QUE GERENCIAR? ...................................................................................................................... 14 1.6. COMO GERENCIAR? .......................................................................................................................... 14 1.7. CONCEITOS E COMPETNCIAS .............................................................................................................. 15 1.8. HABILIDADES.................................................................................................................................... 15 1.9. PROFISSIONAIS ENVOLVIDOS NO GERENCIAMENTO DE REDES .................................................................... 16 1.9.1. Gerente de Redes ..................................................................................................................... 16 1.9.2. Administrador de Redes .......................................................................................................... 16 1.9.3. Gerente de Sistemas ................................................................................................................ 16 1.9.4. Gerente de TI ........................................................................................................................... 17

2.

CONCEITOS DE GERNCIA DE REDES - INTRODUO ...................................................................... 19 2.1. GERENCIAMENTO DE REDES ................................................................................................................ 19 2.2. CICLO DE GERENCIAMENTO................................................................................................................. 19 2.2.1. Coleta de dados: ...................................................................................................................... 19 2.2.2. Diagnstico: ............................................................................................................................ 19 2.2.3. Ao: ........................................................................................................................................ 19 2.3. PERFIL DO GERENTE DE REDES ............................................................................................................. 20 2.4. DEFINIO DO AMBIENTE ................................................................................................................... 20 2.5. INVENTRIO DA REDE ........................................................................................................................ 20 2.6. MAPEAMENTO DA REDE..................................................................................................................... 20 2.7. RESULTADOS ESPERADOS.................................................................................................................... 20 2.8. RELATRIOS ..................................................................................................................................... 20

3.

CONCEITOS E DEFINIES DE GERNCIA DE REDES ......................................................................... 21 3.1. AMBIENTE GERENCIADO..................................................................................................................... 21 3.2. MECANISMO GERENCIADO ................................................................................................................. 21 3.3. SISTEMA DE GERENCIAMENTO DE REDES ............................................................................................... 21 3.4. GERENTE ......................................................................................................................................... 21 3.5. APLICAO GERENTE ......................................................................................................................... 21 3.6. COMPONENTES PRINCIPAIS: ................................................................................................................ 21 3.6.1. Operaes de Gerenciamento ................................................................................................. 22 3.6.2. Management Information Base MIB ................................................................................... 22 3.6.3. Banco de Dados BD .............................................................................................................. 23 3.6.4. Aplicaes de Gerenciamento ................................................................................................. 23 3.6.5. Interface do usurio ................................................................................................................ 23 3.6.6. Agente ..................................................................................................................................... 23 3.6.7. Aplicao Agente .................................................................................................................... 23
3.6.7.1. Componentes chaves: .................................................................................................................... 24 3.6.7.1.1. O Agente .................................................................................................................................. 24 3.6.7.1.2. A MIB do Agente ...................................................................................................................... 24

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral

4.

MODELO DE GERENCIAMENTO OSI E MODELO DE GERENCIAMENTO SNMP .................................. 25 4.1. MODELO DE GERENCIAMENTO OSI ...................................................................................................... 25 4.1.1. Funcionamento ....................................................................................................................... 25 4.1.2. Tarefas/Processos de Gerenciamento .................................................................................... 26
4.1.2.1. 4.1.2.2. 4.1.2.3. 4.1.2.4. 4.1.2.5. Gerenciamento de Falhas .............................................................................................................. 26 Gerenciamento de Configurao ................................................................................................... 26 Gerenciamento de Contabilizao ................................................................................................. 27 Gerenciamento de Desempenho ................................................................................................... 27 Gerenciamento de Segurana ........................................................................................................ 27

4.2. MODELO DE GERENCIAMENTO SNMP .................................................................................................. 27 4.2.1. Estao de Gerenciamento contendo entidades SNMP (Gerente) ......................................... 28 4.2.2. Ns gerenciados contendo a entidade SNMP (Agente) .......................................................... 28 4.2.3. Entidade com Dupla Funo ................................................................................................... 29 4.2.4. Informaes de Gerenciamento .............................................................................................. 29 4.2.5. Protocolo de Gerenciamento .................................................................................................. 29 4.2.6. Monitoramento via SNMP ....................................................................................................... 30 4.2.7. Monitoramento via SNMP utilizando Entidade com Dupla Funo...................................... 30 5. GERENCIAMENTO DE REDES - O PROTOCOLO SNMP ...................................................................... 31 5.1. SMI ............................................................................................................................................... 32 5.2. ASN.1 ............................................................................................................................................ 32 5.2.1. Sintaxe bsica em ASN.1 ......................................................................................................... 32
5.2.1.1. Tipos de dados ............................................................................................................................... 32 5.2.1.2. Notaes em ASN.1........................................................................................................................ 32 5.2.1.3. Exemplos de Definio ASN.1 ........................................................................................................ 32 5.2.1.3.1. Campo SYNTAX: ....................................................................................................................... 33 5.2.1.3.2. Campo ACCESS: ........................................................................................................................ 33 5.2.1.3.3. Campo STATUS......................................................................................................................... 33

5.3. MENSAGEM SNMP .......................................................................................................................... 34 5.4. AS PDUS SNMP .............................................................................................................................. 34 5.4.1. Estrutura das PDUs SNMP ...................................................................................................... 35
5.4.1.1. Prembulo e Cabealho ................................................................................................................. 35 5.4.1.1.1. Verso: ..................................................................................................................................... 35 5.4.1.1.2. Tipo de PDU: ............................................................................................................................ 35 5.4.1.1.3. Request ID: ............................................................................................................................... 35 5.4.1.1.4. Cdigos de erro: ....................................................................................................................... 35 5.4.1.1.5. Error index: .............................................................................................................................. 35

5.5. A ARQUITETURA SNMP ..................................................................................................................... 36 5.6. OPERAES/MENSAGENS SNMP ........................................................................................................ 36 5.6.1. Get-Request ............................................................................................................................. 36 5.6.2. Get-Next-Request .................................................................................................................... 37 5.6.3. Get-Bulk-Request..................................................................................................................... 37 5.6.4. Set-Request .............................................................................................................................. 37 5.6.5. TRAP ........................................................................................................................................ 38 5.6.6. Inform-Request ....................................................................................................................... 38 5.6.7. Exemplo de Operao ............................................................................................................. 39 5.7. LIMITAES DE SNMP....................................................................................................................... 39 5.7.1. Falta de segurana .................................................................................................................. 39 5.7.2. Ineficincia .............................................................................................................................. 39 5.7.3. Falta de funes especficas .................................................................................................... 39 5.7.4. No confivel: .......................................................................................................................... 39

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

5.8. VULNERABILIDADE SNMP - PROTEO: ................................................................................................ 40 5.9. VERSES SNMP:.............................................................................................................................. 40 5.9.1. SNMP V1 .................................................................................................................................. 40
5.9.1.1. 5.9.1.2. 5.9.1.3. Get ................................................................................................................................................. 40 GetNext .......................................................................................................................................... 40 Set .................................................................................................................................................. 40 SNMPv2 Original ............................................................................................................................ 40 SNMPv2 baseado na comunidade .................................................................................................. 40 SNMPv2 baseada no usurio .......................................................................................................... 40 SNMPv2 Estrela .............................................................................................................................. 40

5.9.2.

SNMP V2 .................................................................................................................................. 40

5.9.2.1. 5.9.2.2. 5.9.2.3. 5.9.2.4.

5.9.3.

SNMP V2 (v2c) ........................................................................................................................ 41

5.9.3.1. Caractersticas e Operaes adicionais .......................................................................................... 41 5.9.3.1.1. Trap .......................................................................................................................................... 41 5.9.3.1.2. GetBulk..................................................................................................................................... 41 5.9.3.1.3. Inform ...................................................................................................................................... 41

5.9.4.

SNMP V3 .................................................................................................................................. 41

5.9.4.1. Melhorias de Segurana ................................................................................................................. 41 5.9.4.1.1. USM .......................................................................................................................................... 41 5.9.4.1.2. VACM ....................................................................................................................................... 41 5.9.4.1.3. Configurao dinmica de agentes SNMP utilizando comandos SNMP ................................. 41

5.10. MODELO DE SEGURANA SNMP ......................................................................................................... 41 5.10.1. Modelo mais comum ........................................................................................................... 41 5.10.2. Comunidade default: .......................................................................................................... 41 5.10.3. Uma comunidade define ..................................................................................................... 42 5.10.4. Servio de autenticao ..................................................................................................... 42 5.11. TRAPS EM SNMP ............................................................................................................................. 42 5.11.1. Classificao ....................................................................................................................... 42
5.11.1.1. Traps genricos .............................................................................................................................. 42 5.11.1.1.1. ColdStart: ............................................................................................................................... 42 5.11.1.1.2. WarmStart: ............................................................................................................................ 42 5.11.1.1.3. LinkDown: .............................................................................................................................. 42 5.11.1.1.4. LinkUp: ................................................................................................................................... 42 5.11.1.1.5. AuthenticationFailure: ........................................................................................................... 42 5.11.1.1.6. EgpNeighborLoss: .................................................................................................................. 42 5.11.1.1.7. EnterpriseSpecific: ................................................................................................................. 43

6.

A MIB.............................................................................................................................................. 45 6.1. OBJETOS GERENCIADOS ..................................................................................................................... 45 6.2. MODELOS DE GERENCIAMENTO ........................................................................................................... 45 6.2.1. Modelo Organizacional ........................................................................................................... 45 6.2.2. Modelo funcional..................................................................................................................... 45 6.2.3. Modelo informacional ............................................................................................................. 45 6.3. CARACTERSTICAS DO MODELO OSI...................................................................................................... 45 6.3.1. Classe, Subclasse e Superclasse............................................................................................... 45 6.3.2. Hierarquias dos Objetos Gerenciados ..................................................................................... 46
6.3.2.1. 6.3.2.2. 6.3.2.3. Hierarquia de Herana ................................................................................................................... 46 Hierarquia de Nomeao ............................................................................................................... 46 Hierarquia de Registro ................................................................................................................... 46

6.4. MIB DA INTERNET............................................................................................................................. 46 6.5. A RVORE DA MIB II ......................................................................................................................... 46 6.5.1. N Raiz .................................................................................................................................... 47

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral

6.5.2. 6.5.3. 6.5.4. 6.5.5. 6.5.6. 6.5.7.

N iso ....................................................................................................................................... 47 N internet .............................................................................................................................. 48 N mgmt .................................................................................................................................. 48 rvore MIB II ........................................................................................................................... 49 Exemplo de Objeto da MIB ...................................................................................................... 49 Exemplos de Grupos ................................................................................................................ 49

6.5.7.1. Grupo System ................................................................................................................................. 49 6.5.7.1.1. Descrio textual: .................................................................................................................... 49 6.5.7.1.2. OID ........................................................................................................................................... 50 6.5.7.1.3. Componentes: .......................................................................................................................... 50 6.5.7.2. Grupo Interfaces - Interface da rede com o meio fsico ................................................................. 50 6.5.7.2.1. Descrio textual ..................................................................................................................... 50 6.5.7.2.2. OID ........................................................................................................................................... 50 6.5.7.2.3. Componentes ........................................................................................................................... 50 6.5.7.3. Grupo at (Address Translation) ...................................................................................................... 52 6.5.7.3.1. Descrio textual ..................................................................................................................... 52 6.5.7.3.2. OID ........................................................................................................................................... 52 6.5.7.3.3. Componentes ........................................................................................................................... 52 6.5.7.4. Grupo ip - Protocolo IP................................................................................................................... 52 6.5.7.4.1. Descrio textual ..................................................................................................................... 52 6.5.7.4.2. OID ........................................................................................................................................... 52 6.5.7.4.3. Componentes (Apenas Alguns) ............................................................................................... 52 6.5.7.5. Grupo icmp Protocolo ICMP........................................................................................................ 53 6.5.7.5.1. Descrio textual ..................................................................................................................... 53 6.5.7.5.2. OID ........................................................................................................................................... 53 6.5.7.5.3. Componentes (Apenas Alguns) ............................................................................................... 53 6.5.7.6. Grupo TCP Protocolos TCP .......................................................................................................... 54 6.5.7.6.1. Descrio textual ..................................................................................................................... 54 6.5.7.6.2. OID ........................................................................................................................................... 54 6.5.7.6.3. Componentes (Apenas Alguns) ............................................................................................... 54 6.5.7.7. Grupo UDP Protocolos UDP ........................................................................................................ 54 6.5.7.7.1. Descrio textual ..................................................................................................................... 54 6.5.7.7.2. OID ........................................................................................................................................... 54 6.5.7.7.3. Componentes ........................................................................................................................... 54 6.5.7.8. Grupo EGP Protocolo EGP ........................................................................................................... 55 6.5.7.8.1. Descrio textual ..................................................................................................................... 55 6.5.7.8.2. OID ........................................................................................................................................... 55 6.5.7.8.3. Componentes (Apenas Alguns) ............................................................................................... 55 6.5.7.9. Grupo cmot Protocolo CMOT...................................................................................................... 55 6.5.7.9.1. Descrio textual ..................................................................................................................... 55 6.5.7.9.2. OID ........................................................................................................................................... 55 6.5.7.10. Grupo Transmission Meios de Transmisses .............................................................................. 55 6.5.7.10.1. Descrio textual ................................................................................................................... 55 6.5.7.10.2. OID ......................................................................................................................................... 55 6.5.7.11. Grupo SNMP Protocolo SNMP .................................................................................................... 55 6.5.7.11.1. Descrio textual ................................................................................................................... 55 6.5.7.11.2. OID ......................................................................................................................................... 55 6.5.7.11.3. Componentes ......................................................................................................................... 55

7.

PROTOCOLO DE GERENCIAMENTO RMON ...................................................................................... 59 7.1. 7.2. 7.3. 7.4. ALGUMAS RFCS TRATAM DO PROTOCOLO RMON: ................................................................................. 59 CARACTERSTICAS DO PROTOCOLO........................................................................................................ 60 OBJETIVOS DO RMON....................................................................................................................... 60 ABRANGNCIA DAS VERSES................................................................................................................ 61

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

7.5. EXEMPLO DE FUNCIONAMENTO ........................................................................................................... 61 7.6. MIB RMON1 ................................................................................................................................. 62 7.6.1. Aquisio de Estatsticas de Trfego: ..................................................................................... 62 7.6.2. Deteco e Resoluo de Situaes Crticas e de Erro: .......................................................... 62 7.6.3. Exemplos de Grupos ................................................................................................................ 62
7.6.3.1. RMON1 Statistics......................................................................................................................... 62 7.6.3.1.1. Exemplos de estatsticas Ethernet........................................................................................... 62 7.6.3.2. RMON1 History ........................................................................................................................... 63 7.6.3.2.1. Configurao ............................................................................................................................ 63 7.6.3.3. RMON1 Hosts .............................................................................................................................. 63 7.6.3.3.1. Exemplos: ................................................................................................................................. 63 7.6.3.4. RMON1 Hosts Top N ................................................................................................................... 63 Exemplo: ...................................................................................................................................................... 64 7.6.3.5. RMON1 Matrix ............................................................................................................................ 64 Exemplos: ..................................................................................................................................................... 64 7.6.3.6. RMON1 Token Ring ..................................................................................................................... 64 7.6.3.7. RMON1 Alarm ............................................................................................................................. 64 Exemplos: ..................................................................................................................................................... 65 7.6.3.8. RMON1 Filter............................................................................................................................... 65 Exemplos: ..................................................................................................................................................... 65 7.6.3.9. RMON1 Packet Capture .............................................................................................................. 66 7.6.3.9.1. Captura pacotes para anlise na rede. .................................................................................... 66 7.6.3.10. RMON1 Event .............................................................................................................................. 66

7.7. RMON2......................................................................................................................................... 67 7.7.1. MIB RMON2 ............................................................................................................................. 67


7.7.1.1. RMON2 Protocol Directory ......................................................................................................... 67 7.7.1.2. RMON2 Protocol Distribution ..................................................................................................... 68 7.7.1.3. RMON2 Network Layer Host/Matrix e Application Layer Host/Matrix ....................................... 68 7.7.1.4. RMON2 User History ................................................................................................................... 68 7.7.1.5. RMON2 Probe Configuration ...................................................................................................... 68 7.7.1.5.1. Exemplos: ................................................................................................................................. 68 7.7.1.6. RMON2 Address Map .................................................................................................................. 69

7.8. 8.

RMON CONSIDERAES FINAIS ....................................................................................................... 69

GERENCIAMENTO DE SERVIDORES GNU/LINUX UTILIZANDO SNMP V1 E V2C ................................ 71 8.1. INSTALAO DOS BINRIOS ................................................................................................................. 71 8.2. ESTRUTURA DO NET-SNMP APS A INSTALAO DOS BINRIOS ................................................................... 71 8.3. BACKUP DO ARQUIVO DE CONFIGURAO ORIGINAL (SNMPD.CONF) ........................................................... 71 8.4. CONFIGURAO BSICA DE UM AGENTE SNMP V1/V2C.......................................................................... 72 8.5. ACESSANDO UM AGENTE SNMP V1/V2C.............................................................................................. 72 8.5.1. Comando snmpget .................................................................................................................. 72
8.5.1.1. Explicando o comando: .................................................................................................................. 72 Explicando o comando: .................................................................................................................. 73

8.5.2. 8.5.3. 8.5.4. 8.5.5. 8.5.6. 8.5.7. 9.

Comando snmpset ................................................................................................................... 73 Comando snmpgetnetxt .......................................................................................................... 74 Comando snmpwalk ................................................................................................................ 74 Comando snmpbulkget ........................................................................................................... 75 Comando snmpbulkwalk ........................................................................................................ 76 Informaes Adicionais........................................................................................................... 77

8.5.2.1.

GERENCIAMENTO DE SERVIDORES GNU/LINUX UTILIZANDO SNMP V3 .......................................... 79 9.1. USM.............................................................................................................................................. 79

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral

9.2. VACM ........................................................................................................................................... 79 9.3. MODELO DE PERMISSES VACM ........................................................................................................ 80 9.4. CONFIGURAO BSICA DE UM AGENTE SNMP V3 COMPATVEL COM SNMP V1/V2C .................................. 81 9.4.1. Disponibilizando os recursos .................................................................................................. 82
9.4.1.1. Seo View ..................................................................................................................................... 82 9.4.1.2. Seo com2sec ............................................................................................................................... 82 9.4.1.3. Seo Group ................................................................................................................................... 82 9.4.1.4. Seo Access .................................................................................................................................. 82 9.4.1.5. Compreendendo os Parmetros .................................................................................................... 83 9.4.1.5.1. Seo View ............................................................................................................................... 83 9.4.1.5.2. Seo Com2sec: ....................................................................................................................... 83 9.4.1.5.3. Seo Group: ............................................................................................................................ 83 9.4.1.5.4. Seo Access: ........................................................................................................................... 83

9.5. ACESSANDO UM AGENTE SNMP V3 COMPATVEL COM SNMP V1/V2C: ..................................................... 84 9.6. CONFIGURAO INICIAL DE UM AGENTE EXCLUSIVAMENTE V3 ................................................................... 85 9.6.1. Criar o usurio inicial com permisso de escrita: .................................................................. 85 9.6.2. Criar os usurios adicionais:................................................................................................... 86
9.6.2.1. Parmetros: ................................................................................................................................... 87 Parmetros: ................................................................................................................................... 87

9.6.3. 9.6.4. 9.6.5. 9.6.6.

Alterar a senha dos usurios: ................................................................................................. 87 snmpd.conf v3 bsico: ............................................................................................................. 89 Acessando um Agente SNMP v3: ............................................................................................. 89 snmpd.conf v3 com VACM devidamente configurado: ........................................................... 90
Acessando um Agent SNMP v3: ..................................................................................................... 90

9.6.3.1.

9.6.6.1.

9.7. CONFIGURAO INICIAL DE UM AGENTE EXCLUSIVAMENTE V3 COM AUTENTICAO E PRIVACIDADE.................. 91 9.7.1. Criar o usurio inicial com permisso de escrita: .................................................................. 91 9.7.2. Criar os usurios adicionais:................................................................................................... 92
9.7.2.1. Parmetros: ................................................................................................................................... 92 9.7.2.2. Outro exemplo: .............................................................................................................................. 93 9.7.2.2.1. Parmetros: ............................................................................................................................. 93

9.7.3. 9.7.4. 9.7.5. 9.7.6. 9.7.7.

Alterar a senha dos usurios: ................................................................................................. 93


Parmetros: ................................................................................................................................... 93 Parmetros: ................................................................................................................................... 94

9.7.3.1. 9.7.4.1.

Alterar a chave dos usurios: ................................................................................................. 94 snmpd.conf v3 bsico: ............................................................................................................. 94 Acessando um Agente SNMP v3: ............................................................................................. 95 snmpd.conf v3 com VACM devidamente configurado: ........................................................... 95
Acessando um Agent SNMP v3: ..................................................................................................... 96

9.7.7.1.

9.8. SEGURANA EM SNMP V3: ............................................................................................................... 97 9.8.1. Requisio SNMP v2 ................................................................................................................ 97 9.8.2. Requisio SNMP v3com Autenticao .................................................................................. 98 9.8.3. Requisio SNMP v3com Autenticao e Privacidade ........................................................... 99 10. MONITORANDO RECURSOS DO SISTEMA ................................................................................. 101

10.1. INFORMAES DO SISTEMA............................................................................................................... 101 10.1.1. Acessando o Agent SNMP para leitura de informaes do sistema ................................ 101 10.2. MONITORAMENTO DE PROCESSOS ..................................................................................................... 101 10.2.1. Acessando o Agent SNMP para leitura de informaes sobre processos ........................ 102 10.3. MONITORAMENTO DE USO DE DISCO .................................................................................................. 104 10.3.1. Acessando o Agent SNMP para leitura de informaes sobre o disco............................. 104 10.4. MONITORAMENTO DE CARGA DO SISTEMA ........................................................................................... 106

10

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

10.4.1. Acessando o Agent SNMP para leitura de informaes sobre Carga de sistema (Load) 107 10.5. MONITORAMENTO DE TAMANHO DE ARQUIVO ..................................................................................... 110 10.5.1. Acessando o Agent SNMP para leitura de informaes sobre tamanho de arquivo ...... 110 10.6. MONITORAMENTO UTILIZANDO UM COMANDO CUSTOMIZADO ................................................................ 111 10.6.1. Acessando o Agent SNMP para leitura de informaes com comandos customizados .. 112 10.7. MONITORAMENTO UTILIZANDO UM COMANDO CUSTOMIZADO, COM OID PERSONALIZADA ........................... 115 10.7.1. Acessando o Agent SNMP para leitura de informaes com comandos customizados usando OID personalizada ................................................................................................................. 116 11. GERENCIAMENTO DE SERVIDORES GNU/LINUX UTILIZANDO SNMP V3 - CASOS ESPECIAIS E EXEMPLOS ............................................................................................................................................ 119 11.1. VIEWS VACM, OU COMO RESTRINGIR O ACESSO A DETERMINADOS RAMOS DA RVORE ............................... 119 11.1.1. Acessando o Agent SNMP com acesso restrito (sysUpTime.0) ........................................ 119 11.1.2. Acessando o Agent SNMP com acesso restrito (interfaces.ifTable.ifEntry.infIndex.1) ... 119 11.1.3. Acessando o Agent SNMP com acesso restrito (interfaces.ifTable.ifEntry) .................... 120 11.2. MSCARAS VACM, OU COMO RESTRINGIR O ACESSO A UM DETERMINADO NDICE (LINHA) EM UMA TABELA.... 121 11.2.1. Acessando o Agent SNMP com acesso restrito Uso do parmetro mask ..................... 124 11.2.2. Acessando o Agent SNMP com acesso restrito Uso do parmetro mask ..................... 124 12. COMANDOS SNMP TEIS ......................................................................................................... 125

12.1. SIMPLIFICANDO COMANDOS POR MEIO DE DEFINIES DE VALORES PR-DEFINIDOS...................................... 125 12.1.1. Parmetros: ...................................................................................................................... 125 12.1.2. Acessando o Agent SNMP ................................................................................................. 126 12.1.3. Comando snmpconf .......................................................................................................... 126 12.2. VARIAES NA FORMA COMO O RESULTADO DA CONSULTA EXIBIDO........................................................ 129 12.2.1. Exibio padro ................................................................................................................ 129 12.2.2. Exibindo o OID Completo.................................................................................................. 129 12.2.3. Exibindo o OID completo na forma numrica ................................................................. 129 12.2.4. Exibindo o OID abreviado ................................................................................................. 129 12.2.5. Exibindo o OID abreviado na forma numrica ................................................................ 130 12.2.6. Exibindo apenas o valor, sem OID .................................................................................... 130 12.3. TRADUZINDO INFORMAES ............................................................................................................. 130 12.3.1. Exibindo o OID numrico de um objeto ........................................................................... 130 12.3.2. Exibindo o OID nominal de um objeto: ............................................................................ 130 12.3.3. Exibindo o OID numrico de um objeto e sua descrio:................................................. 130 12.3.4. Exibindo o OID nominal de um OID numrico: ................................................................ 131 12.3.5. Exibindo a descrio de um OID numrico: ..................................................................... 131 12.3.6. Exibindo a hierarquia da MIB a partir de um galho: ...................................................... 132 12.3.7. Exibindo a Tabela de Informaes no formato de tabela: .............................................. 132 13. UTILIZANDO O SNMP EM ATIVOS DE REDE ............................................................................... 133

13.1. SWITCH D-LINK .............................................................................................................................. 133 13.1.1. Definir as views ................................................................................................................. 133 13.1.2. Mapear nome de comunidade para nome de acesso ....................................................... 133 13.1.3. Definir os grupos .............................................................................................................. 134 13.1.4. Definir acesso do grupo na view ...................................................................................... 134 13.1.5. Definir o IP do gerente ..................................................................................................... 135 13.2. ROUTER CISCO ............................................................................................................................... 135 13.2.1. Habilitar SNMP v1/v2c .................................................................................................... 135
13.2.1.1. Acessando um Agent SNMP do router para leitura de informaes ............................................ 136

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral

11

13.2.2.
13.2.2.1.

Habilitar SNMP V3 compatvel com SNMP v1/v2c .......................................................... 136


Acessando um Agente SNMP v3 compatvel com SNMP v2c: ...................................................... 137

13.2.3.
13.2.3.1.

Habilitar SNMP V3 ............................................................................................................ 137


Acessando um Agente SNMP v3: ................................................................................................. 138

13.2.4.
13.2.4.1.

Habilitar SNMP V3 com Autenticao e Privacidade ...................................................... 139


Acessando um Agente SNMP v3: ................................................................................................. 139

14. 15.

ALGUMAS EXTENSES AO SNMP ............................................................................................. 141 REFERNCIAS ............................................................................................................................ 143

12

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

1. Conceitos de Gerncia de Redes - Viso Geral


Neste primeiro captulo teremos uma viso geral sobre o tema e os profissionais envolvidos.

1.1.O que Gerncia de Redes?


um conjunto de ferramentas, procedimentos, tcnicas e polticas usadas para manter a eficincia e o funcionamento de uma rede de computadores. Independentemente de seu tamanho. A gerncia pode ser integrada atravs de ferramentas que cooperam entre si, aplicando polticas homogneas em um ambiente heterogneo.

1.2.Quais os objetivos da Gerncia de redes?


O objetivo principal da Gerncia de redes garantir a disponibilidade e eficincia da rede. Para atingir esse objetivo podemos destacar alguns itens: Monitorar e manter o funcionamento da rede; Coletar informaes sobre os diversos dispositivos; Gerar informaes sobre a qualidade dos equipamentos e dos links; Gerar informaes para revisar o projeto de rede e sua arquitetura; Gerar informaes para previses de possveis falhas (gerenciamento prativo); Justificar os investimentos em ativos de rede e links de comunicao mais apropriados demanda da rede.

1.3.Por que gerenciar uma rede?


No possvel realizar os objetivos da Gerncia de redes sem realizar algumas aes: Controlar o desempenho da rede; Registrar a ocorrncia de eventos; Garantir a segurana da rede; Contabilizar os recursos disponveis e indisponveis da rede; Detectar, diagnosticar e prevenir possveis falhas; Planejar o crescimento organizado da rede; Minimizar os impactos gerados pela diversidade de plataformas.

1.4.O que gerenciar? 1.4.1. Elementos ativos:


Todo equipamento conectado a rede: Switches; Roteadores; No-Break; Racks Gerenciveis; Cmeras de Vigilncia IP; Catracas eletrnicas; Leitores de acesso Biomtricos; Impressoras.
Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral 13

1.4.2. Servidores:
Todo equipamento de rede que prove um servio na rede: DNS; SMTP; POP; HTTP; Banco de Dados; Arquivos; Autenticao de usurios.

1.4.3. Clientes:
Todo recurso utilizado pelo usurio para desempenhar suas atribuies e que precisa de liberao e controle: Softwares instalados; Inventario de Hardware; Controle de usurios; Controle de acesso.

1.5.Para que gerenciar?


Para alcanar os objetivos da Gerncia de redes precisamos obter informaes referentes rede. Isso nos possibilita: Dominar a complexidade da rede, a sua dimenso e a diversidade de servios; Melhorar a qualidade dos servios, mantendo-os sempre eficientes, sem gargalos; Reduzir o tempo de down-time; Reduzir custos de gerenciamento e administrao.

1.6.Como Gerenciar?
No existe uma receita pronta de como gerenciar uma rede, mas se utilizando de padres, ferramentas e algumas aes especficas podemos alcanar este objetivo. O qual consiste em: Monitorar a operao dos equipamentos e servios; Utilizar ferramentas (softwares) para a automatizao dos processos; Utilizar padres de gerncia; Construir um modelo hierrquico.

14

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

1.7.Conceitos e Competncias
Para que o profissional responsvel pela gerncia da rede desempenhe seu trabalho de maneira eficiente, alguns conceitos devem ser inocorporados e algumas competncias desenvolvidas: Analisar, compreender e configurar os servios e funes dos sistemas operacionais, ferramentas de administrao, recursos disponveis, manipulao de arquivos, segurana e etc. Compreender as arquiteturas de rede, servios e funes de servidores de rede. Conhecer as principais reas de gerenciamento de uma rede de computadores: o Falhas Fault Management; o Configurao Configuration Management; o Contabilizao Accounting Management; o Desempenho Performance Management; o Segurana Security Management. Controlar o trfego de dados na rede. Descrever componentes de redes de computadores. Desenvolver os servios de administrao do sistema operacional de rede e protocolos de comunicao. Gerenciar a segurana e contabilizao dos servios da rede. Descrever caractersticas tcnicas de equipamentos e componentes de acordo com parmetros de custos e benefcios, atendendo s necessidades da organizao e do usurio. Identificar e informar as necessidades dos usurios em relao segurana da rede conforme as polticas corporativas de acesso aos recursos computacionais. Avaliar e especificar as necessidades de treinamento e de suporte tcnico aos usurios. Selecionar programas de aplicao a partir da avaliao das necessidades do usurio. Conhecer tcnicas de trabalho em grupo.

1.8.Habilidades
So muitas as habilidades que um profissional responsvel pela Gerncia de redes deve desenvolver, aes que vo desde o suporte tcnico a especificao de equipamentos. Para citar alguns itens: Efetuar o gerenciamento da rede; Descrever configuraes para softwares de rede; Efetuar configuraes nos softwares aplicativos; Elaborar pesquisas (e no buscas) na Internet; Fazer levantamento de informaes de trfego; Instalar e configurar protocolos e software de rede; Realizar pesquisa de novas tecnologias no mercado; Redigir relatrios;

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral

15

Utilizar adequadamente os principais softwares aplicativos na resoluo de problemas; Executar aes de suporte tcnico; Descrever as necessidades do usurio entre os recursos da rede; Orientar os usurios quanto ao uso dos recursos da rede; Utilizar os recursos oferecidos pela rede atendendo s especificaes e necessidades dos usurios; Aplicar as tcnicas de trabalho realizadas em grupo; Manter tica profissional.

1.9.Profissionais Envolvidos no Gerenciamento de Redes


Dependendo do tamanho e complexidade da rede a ser gerenciada, as funes abaixo podem ser executadas por uma nica pessoa, ou por uma equipe para cada uma das funes.

1.9.1. Gerente de Redes


O gerente de redes responsvel por monitorar e manter o funcionamento da rede (hardware e software). O gerente de redes precisa garantir que a rede sob sua responsabilidade possa oferecer operaes ininterruptas. Nos dias de hoje se a rede parar, o negcio tambm para. Ao mesmo tempo em que o gerente de redes pressionado a oferecer esses nveis de servio, ele obrigado a trabalhar dentro dos limites do oramento e com recursos limitados.

1.9.2. Administrador de Redes


O Administrador de redes responsvel por desenvolver, implantar e dar manuteno ao hardware e ao software bsico utilizados no desenvolvimento de aplicaes e servios de rede e aos recursos computacionais ligados a esta rede. No aspecto pessoal, o profissional deve ser dinmico e ter interesse em buscar alternativas tcnicas e gerenciais atravs de auto-dedicao.

1.9.3. Gerente de Sistemas


O Gerenciamento de sistemas compreende monitorar e manter dispositivos individuais como softwares, backups, no-breaks, usurios, etc. Deve negociar entre as diversas reas das organizaes com o objetivo de propor solues, com o menor impacto possvel a rede, bem como do ponto de vista financeiro, de forma que se possam suprir todas as necessidades solicitadas, no interferindo no processo normal de cada rea e sim melhorando os processos internos e externos da organizao.

16

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

1.9.4. Gerente de TI
O gerente de TI deve se preocupar em estabelecer para a sua equipe uma viso geral do processo de gerncia, planejar, conhecer as prioridades do negcio, ter bom relacionamento com todos, ser organizado, responsvel e, principalmente, que saiba atender, com agilidade, os requisitos de custos, prazos, qualidade e especificaes estabelecidas pelas organizaes. Para um profissional bem sucedido obter essas caractersticas necessrio que, alm do seu esforo, busque treinamentos adequados, que o qualifiquem conforme as exigncias atuais. Deve estar adequado s tecnologias do momento e sempre aberto s novas tecnologias e tendncias. Deve ter domnio completo de tudo o que trafega na organizao e sempre estar pronto para reconstruir processos quando necessrio. Estar bem representado por uma equipe capacitada e com bom nimo. Geralmente sabe mais da organizao que o prprio proprietrio ou diretor.

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Viso Geral

17

18

Conceitos de Gerncia de Redes - Viso Geral | Gerenciamento de Redes com SNMP

2. Conceitos de Gerncia de Redes - Introduo


2.1.Gerenciamento de Redes
Compreende o Monitoramento e o Controle automatizado dos dispositivos (hardware e software) e ferramentas, que alm de suas funes principais, pode agregar funcionalidades de gerenciamento desde que o profissional que atua com estas ferramentas e dispositivos esteja capacitado para tal. Quando falamos de gerenciamento de redes devemos primeiro estabelecer o que ser gerenciado e o que se espera como resultado desse gerenciamento. Somente assim poderemos selecionar uma ferramenta adequada, seja de deteco de falhas, de estatsticas ou de anlise de pacotes, mas que atenda as necessidades.

2.2.Ciclo de Gerenciamento 2.2.1. Coleta de dados:


Compreende o monitoramento automtico dos recursos. Nessa fase o administrador de redes vai coletar uma quantidade imensa de informaes, que ser a base para o prximo passo.

2.2.2. Diagnstico:
Tratamento e anlise dos dados colhidos na etapa anterior. Dentre toda a informao coletada separar os dados que sero manipulados posteriormente, daqueles sem valor para o gerenciamento, essa com certeza uma etapa que demanda conhecimento e disponibilidade de tempo.

2.2.3. Ao:
Controle sobre os recursos gerenciados. Ao neste contexto pode em muitos casos
no ser necessariamente a resoluo de um problema imediato. Mas uma interverso justamente para evitar o surgimento do mesmo. Desta forma temos uma ao proativa e antecipada, tendo como base os dados colhidos e analisados nas etapas anteriores. Efetuada as alteraes

e configuraes necessrias, reinicia-se todo o processo de comparar os dados anteriores com os atuais.

Figura 1 - Ciclo de Gerenciamento

Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Introduo

19

2.3.Perfil do Gerente de Redes


O perfil do gerente de redes est relacionado ao tamanho e a estrutura da rede, mas alguns pontos so essenciais, como conhecer detalhadamente os protocolos envolvidos na arquitetura da rede, conhecer a arquitetura de hardware da rede, estar sempre atualizado, tomar aes para evitar perda de performance e reduzir o downtime.

2.4.Definio do Ambiente
A delimitao do ambiente a ser gerenciado pode ser definida utilizando-se de algumas diretivas: Inventrio total dos dispositivos de rede (Hardware e Software); Mapeamento lgico dos dispositivos de rede (Layout Lgico e Fsico da Topologia).

2.5.Inventrio da Rede
Algumas informaes so extremamente necessrias para o gerenciamento: Identificao do fabricante e fornecedor; Anlise dos dispositivos que apresentam o suporte de gerenciamento e qual a funo suportada (Verso do protocolo SNMP, Caractersticas do Protocolo RMON); Identificao da arquitetura da rede e do modelo de gerenciamento suportado; Documentao das informaes apuradas de forma textual-grfica e em mdia impressa e digital.

2.6.Mapeamento da Rede
O mapeamento da rede deve ser feito destacando-se os dispositivos que desempenham funes de interconexo ou prestam servios (Servidores), cujo tempo de inatividade, inviabilizar os processos de comunicao, produo e obteno de informaes via rede, acarretando em prejuzos financeiros ou operacionais para a organizao.

2.7.Resultados Esperados
Antes de comear um projeto de gerncia de redes, preciso realizar um levantamento do que se pretende monitorar em cada host, e os objetivos que pretendem ser alcanados com esse gerenciamento, alguns itens bsicos: Visualizao Grfica da Rede (Topologia); Emisso de Alarmes (Erros e Falhas); Dados sobre utilizao de Banda, CPU, Memria, Processos; Envio de alertas (E-mail, SMS, Alertas sonoros) relatando falhas.

2.8.Relatrios
Ao final de um projeto de gerncia de redes espera-se ser capaz de gerar dados sobre a rede, entre estes dados esto os relatrios, alguns exemplos: Estatsticas de carga da rede; Inventrio; Grficos (% de utilizao da banda por exemplo); Consumo de disco e memria; Uptime e Downtime (SLI).
20 Conceitos de Gerncia de Redes - Introduo | Gerenciamento de Redes com SNMP

3. Conceitos e Definies de Gerncia de Redes


Existem diferentes Modelos de Gerenciamento e Arquiteturas, porm, seus princpios so semelhantes. Os conceitos e definies a seguir servem para fundamentar nossos estudos sobre Gerenciamento de Redes.

3.1.Ambiente Gerenciado
So mecanismos com suporte a funcionalidades de gerenciamento, juntamente com os aspectos de comunicao que permitem suas interconexes. O ambiente gerenciado pode ser constitudo de um ou mais mecanismos como: Roteador(es), Switch(es); Conexes TCP de um determinado nmero de servidores; Todos os dispositivos gerenciveis de uma mesma sub-rede; Todos os dispositivos gerenciveis de um conjunto de LANs interligadas.

3.2.Mecanismo Gerenciado
Hardware ou Software que apresenta necessidade e condies de serem gerenciados, como interfaces de rede, discos, impressoras, aspectos relacionados implementao da pilha TCP/IP, estatsticas sobre o processamento de datagramas IP.

3.3.Sistema de Gerenciamento de Redes


Grupo de ferramentas utilizadas para monitoramento e controle da rede. Normalmente uma arquitetura genrica, organizada em trs camadas, poder ser usada para representar as categorias de software presentes em um sistema de gerenciamento de rede. A coleo de software de um sistema de gerenciamento tambm organizada para assumir o papel de gerente, agente ou ambos.

3.4.Gerente
Permite a obteno e o envio de informaes de gerenciamento junto aos mecanismos gerenciados mediante comunicao com um ou mais agentes. Informaes de gerenciamento podem ser obtidas com o uso de requisies efetuadas pelo gerente ao agente ou mediante envio automtico do agente para um determinado gerente.

3.5.Aplicao Gerente
O modelo SNMP apresenta a Aplicao Gerente como uma entidade de rede que usa determinados protocolos das camadas de transporte, de rede, de acesso rede e de aplicao, para a comunicao com a entidade de rede gerenciada.

3.6.Componentes Principais:
Operaes de Gerenciamento; Management Information Base MIB; Banco de dados; Aplicaes de Gerenciamento; Interface do usurio.

Gerenciamento de Redes com SNMP | Conceitos e Definies de Gerncia de Redes

21

Figura 2 - Aplicao Gerente

3.6.1. Operaes de Gerenciamento


So componentes da Aplicao Gerente que controlam e monitoram os Agentes pertencentes comunidade de um determinado domnio de gerenciamento. Uma Operao de gerenciamento uma entidade de software que implementa as regras estabelecidas no protocolo SNMP. Podem ler e escrever em variveis da MIB de cada Agente. Podem armazenar informaes de gerenciamento recuperadas junto aos Agentes em uma MIB prpria e/ou em um Banco de Dados. Devem implementar processos para execuo das requisies de GetRequest, SetRequest e GetNextRequest PDUs (Protocol Data Units).

3.6.2. Management Information Base MIB


A MIB da Aplicao Gerente, quando existir, conter a relao mestre para as MIBs de todos os Agentes pertencentes comunidade de gerenciamento.

22

Conceitos e Definies de Gerncia de Redes | Gerenciamento de Redes com SNMP

3.6.3. Banco de Dados BD


constitudo por um conjunto de variveis de interesse, que compreendem todos os nomes, configuraes, topologia e dados de auditoria dos dispositivos gerenciados. Obs.: Deve ser do tipo relacional e de preferncia, ser SQL.

3.6.4. Aplicaes de Gerenciamento


So programas que transformam os dados SNMP em informaes usadas pelos usurios da Aplicao Gerente. As aplicaes de gerenciamento auxiliam no processamento e anlise dos dados obtidos via operaes de gerenciamento, ou junto ao Banco de Dados.

3.6.5. Interface do usurio


So interfaces no especificadas pelo modelo SNMP que permitem a interao do usurio com o Sistema de Gerenciamento: Comandos de Gerenciamento (I/O); Visualizao de mensagens (traps). Interfaces do tipo GUI (Graphic User Interface) permitem ainda: Apresentao de estatsticas de desempenho; Resumos de contabilizao; Relatrio de falhas; Inventrios de configurao; Formulrios para criao de queries e mapas da topologia de rede.

3.6.6. Agente
Software especfico presente nos dispositivos gerenciados, cuja funo principal o atendimento das requisies enviadas pelo gerente e o envio automtico de informaes ao gerente, indicando a ocorrncia de um evento previamente programado.

3.6.7. Aplicao Agente


definida como uma Entidade junto a um dispositivo de rede. A aplicao Agente utiliza os protocolos de rede e o protocolo SNMP para se comunicar via interconexo de rede com uma Aplicao Gerente.

Figura 3 - Aplicao Agente

Gerenciamento de Redes com SNMP | Conceitos e Definies de Gerncia de Redes

23

3.6.7.1. Componentes chaves: Os componentes chave da Aplicao Agente so:


O Agente A MIB do Agente

3.6.7.1.1. O Agente Todo sistema gerenciado por SNMP dever conter uma entidade Agente rodando em background. Pode suportar mais de um protocolo de transporte. Porm, o UDP foi o protocolo da Pilha TCP/IP escolhido por possibilitar a interoperao entre qualquer Gerente e Agente. 3.6.7.1.2. A MIB do Agente A MIB uma coleo de variveis de interesse. Seus valores dependem das funcionalidades do dispositivo e de quais recursos ou servios o agente dever gerenciar.

24

Conceitos e Definies de Gerncia de Redes | Gerenciamento de Redes com SNMP

4. Modelo de Gerenciamento OSI e Modelo de Gerenciamento SNMP


Vrios modelos foram criados por diversos rgos com o objetivo de gerenciar redes, dados e telecomunicaes em geral. Neste captulo sero abordados os dois dos principais modelos, o modelo OSI e o modelo SNMP.

4.1.Modelo de Gerenciamento OSI


O Modelo OSI (Open Systems Interconnection), pertencente a ISO (International Organization for Standardization), baseia-se na teoria da orientao a objetos. Com isso, o sistema representa os recursos gerenciados atravs de entidades lgicas, as quais recebem a denominao de objetos gerenciados. Prov uma arquitetura de gerenciamento capaz de atender diversidade de equipamentos da rede.

4.1.1. Funcionamento
O Gerente transmite operaes de gerenciamento aos agentes a fim de obter informaes atualizadas sobre os objetos gerenciados. O Agente recebe as operaes de gerenciamento emitidas pelo gerente e executa as aes necessrias sobre os objetos gerenciados. Ele ainda pode transmitir ao gerente notificaes geradas pelos objetos gerenciados ou notificaes sobre a ocorrncia de eventos.

Figura 4 - Operaes de Gerenciamento

O conjunto de objetos gerenciados constitui a Base de Informaes de Gerenciamento, a MIB.

Figura 5 - MIB

Gerenciamento de Redes com SNMP | Modelo de Gerenciamento OSI e Modelo de Gerenciamento SNMP

25

Para efetuar a troca de informaes de Gerenciamento o Modelo OSI utiliza o servio CMIS (Common Management Information Service) e o protocolo CMIP (Common Management Information Protocol).

Figura 6 - Informaes de Gerenciamento

4.1.2. Tarefas/Processos de Gerenciamento


O Modelo de Gerenciamento OSI divide as Tarefas/Processos de Gerenciamento em cinco reas funcionais: Gerenciamento de Falhas(Fault Management); Gerenciamento de Configurao (Configuration Management); Gerenciamento de Contabilizao (Accounting Management); Gerenciamento de Desempenho (PerformanceManagement); Gerenciamento de Segurana (Security Management). Tambm conhecido como Modelo FCAPS, formado a partir das iniciais de cada rea de gerenciamento, em ingls. 4.1.2.1. Gerenciamento de Falhas Deve detectar e resolver rapidamente situaes que degradam o funcionamento da rede. Possui um conjunto de facilidades que habilitam: Deteco de falhas; Notificao de usurios; Isolamento da falha; Correo do problema; Gravao de log (com a deteco e sua resoluo). a rea mais amplamente implementada, pois tem procedncia sobre as demais. Pode ser reativa, reage s falhas na medida em que ocorrem, ou pr-ativa, busca detectar falhas antes que elas ocorram. 4.1.2.2. Gerenciamento de Configurao Utilizado para que se tenha controle sobre diferentes verses de elementos de hardware e software presentes na rede. Verifica a mudana de estado dos objetos, conexes fsicas e lgicas entre dispositivos, modo de operao de cada dispositivo.

26

Modelo de Gerenciamento OSI e Modelo de Gerenciamento SNMP | Gerenciamento de Redes com SNMP

Pode ser divida em trs aspectos: Inventrio: Conjunto de dispositivos na rede, hardware e software; Configurao: Mapeamento das conexes entre os dispositivos; Proviso: Parmetros operacionais modificveis que apresentam o comportamento de cada dispositivo. 4.1.2.3. Gerenciamento de Contabilizao Distribuio justa dos custos da rede, fazendo apropriao e tarifao de acordo com a utilizao. Planejar o crescimento da rede e evitar abusos na utilizao de recursos da organizao. 4.1.2.4. Gerenciamento de Desempenho Conjunto de funes para medir, monitorar, avaliar e relatar os nveis de desempenho alcanados pela rede garantindo um nvel de servio aceitvel ao usurio. Quando a performance se torna inaceitvel, envia mensagens de alerta ao Operador. 4.1.2.5. Gerenciamento de Segurana A meta controlar o acesso aos recursos da rede de acordo com as definies de cada organizao para evitar sabotagens e proteger os dados para que no sejam acessados por pessoas no autorizadas. Visa: Proteo das informaes; Controle de acesso ao sistema; Monitorar uso dos recursos; Criar, manter e examinar log-files. essencial em hosts conectados a Internet.

4.2.Modelo de Gerenciamento SNMP


O modelo SNMP, tambm chamado de Modelo Internet, possui uma abordagem genrica, podendo gerenciar diferentes tipos de sistemas, bastando apenas possuir alguns componentes elementares: Gerente; Agente; Entidade com Dupla Funo (Opcional); Informaes de Gerenciamento; Protocolo de Gerenciamento.

Gerenciamento de Redes com SNMP | Modelo de Gerenciamento OSI e Modelo de Gerenciamento SNMP

27

4.2.1. Estao de Gerenciamento contendo entidades SNMP (Gerente)


Estao de Gerenciamento, contendo o Gerente que recebe todas as informaes e realiza aes nos agentes. Aplicao de Gerenciamento, o software escolhido para interpretar as informaes coletadas e adicionar funcionalidades como a gerao de grfico, armazenamento em Banco de Dados, disparo de alertas para dispositivos especficos entre outros.

Figura 7 - Gerente SNMP

4.2.2. Ns gerenciados contendo a entidade SNMP (Agente)


Dispositivos dos quais os dados sero coletados e enviados ao Gerente. Em casos extremos dispara os Traps.

Figura 8 - Agentes SNMP

28

Modelo de Gerenciamento OSI e Modelo de Gerenciamento SNMP | Gerenciamento de Redes com SNMP

4.2.3. Entidade com Dupla Funo


Opcionalmente, entidades SNMP com dupla funo, capazes de desempenhar o papel de Agente e Gerente simultaneamente.

Figura 9 - Entidade Dupla Funo

4.2.4. Informaes de Gerenciamento


Informaes de gerenciamento em cada n, as quais descrevem a configurao, o estado, as estatsticas e as aes que controlam os ns gerenciados.

Figura 10 - informaes de Gerenciamento

4.2.5. Protocolo de Gerenciamento


Um protocolo de gerenciamento utilizado pelos Gerentes e Agentes durante a troca de mensagens.

Figura 11 - Protocolo de Gerenciamento

Gerenciamento de Redes com SNMP | Modelo de Gerenciamento OSI e Modelo de Gerenciamento SNMP

29

4.2.6. Monitoramento via SNMP


Viso do processo completo de comunicao entre Agente e Gerente. A comunicao entre os agentes e a aplicao gerente ocorre por meio do protocolo SNMP atravs deste protocolos que as Informaes de Gerenciamento colhidas pelo Agente so enviadas pelo Gerente, que por sua vez ir repassar Aplicao de gerenciamento, que efetuar as aes adicionais como armazenar em banco de dados, alimentar grficos, disparar alertas entre outras.

Figura 12 - Monitoramento via SNMP

4.2.7. Monitoramento via SNMP utilizando Entidade com Dupla Funo


Viso do conjunto de elementos envolvidos em uma soluo de gerenciamento com SNMP.

Figura 13 - Monitoramento via SNMP (Entidade com Dupla Funo)

30

Modelo de Gerenciamento OSI e Modelo de Gerenciamento SNMP | Gerenciamento de Redes com SNMP

5. Gerenciamento de Redes - O Protocolo SNMP


O SNMP (Simple Network Management Protocol) um protocolo da camada de aplicao que tem como objetivo principal coletar informaes de dispositivos gerenciveis. o responsvel por veicular informaes de gerncia (valores das MIBs).

Figura 14 - Protocolo SNMP

Suas interaes so sem conexo, trabalha com mensagens no protocolo UDP/IP, utiliza as portas 161 e 162 e seus pacotes tem tamanho varivel. Esse protocolo se tornou padro para gerncia na Internet, por ser simples de implementar e amplamente difundido. composto de um protocolo para troca de mensagens e padres para estruturar a informao.

Figura 15 - Componentes SNMP

As Informaes de Gerenciamento so armazenadas em MIBs que so definidas atravs da SMI (Structure of Management Information) e transportadas atravs do protocolo SNMP.

Gerenciamento de Redes com SNMP | Gerenciamento de Redes - O Protocolo SNMP

31

5.1. SMI
Podemos entender a SMI como uma descrio lgica das informaes. composta dos seguintes elementos: Nomes dos objetos gerenciados: Referenciados atravs dos OIDs (Object IDentifiers); Sintaxe dos dados: Seguindo os padres da ASN.1 (Abstract Syntax Notation 1); Sintaxe de transferncia: Seguindo as regras da BER (Basic Encoding Rules).

5.2. ASN.1
uma linguagem de descrio de dados da ISO, definida em formato texto no ambguo, que permite definir o modelo de dados com formato independente de mquina. A implementao de dados no considerada.

5.2.1. Sintaxe bsica em ASN.1


5.2.1.1. Tipos de dados Primitivos: INTEGER, OCTET STRING, OBJECT IDENTIFIER, NULL, Subtipos; Construtores: Listas e Tabelas; Definidos: Nomes alternativos para tipos ASN.1. 5.2.1.2. Notaes em ASN.1 As notaes em ASN.1 seguem algumas convenes:

Tabela 01 - Notaes em ASN.1

5.2.1.3. Exemplos de Definio ASN.1 Estrutura genrica:


sysContact OBJECT-TYPE SYNTAX DisplayString (SIZE (0...255)) ACCESS read-write STATUS mandatory DESCRIPTION Texto xxxxxxxxxxxxxxxxxxxxxxxx

32

Gerenciamento de Redes - O Protocolo SNMP | Gerenciamento de Redes com SNMP

Exemplo real de definio:


parDhcpStartTime OBJECT-TYPE SYNTAX DisplayString (SIZE (1..30)) ACCESS read-only STATUS mandatory DESCRIPTION Dhcp Server start time

5.2.1.3.1. Campo SYNTAX: Define o contedo do objeto, que pode ser do tipo: INTEGER: Inteiros de 32 bits; INTEGER (1...100) Sub-tipo inteiro; OCTET STRING: String de bytes; OBJECT IDENTIFIER: Localizao de outro objeto na MIB. Aceita alguns tipos especficos de aplicao: IpAddress: OCTET STRING com 4 bytes; Counter: Inteiro 32 bits; Gauge: Inteiro 32 bits; TimeTicks: Inteiro 32 bits (1/100 de segundo). 5.2.1.3.2. Campo ACCESS: Define a acessibilidade do objeto: read only: Somente leitura; read-write: Leitura e escrita; write-only: Somente escrita, senha do equipamento, por exemplo; not-accessible: No acessvel, campo para operaes internas, por exemplo. 5.2.1.3.3. Campo STATUS Representa a situao do objeto na MIB: Mandatory: Devem ser implementados por todos os agentes, os valores contidos devem ser vlidos; Optional: Pode ou no ser implementado; Deprecated: Foi substituido por novo objeto, mas ainda vlido, tornando-se obsoleto mais tarde; Obsolete: No deve ser considerado.

Gerenciamento de Redes com SNMP | Gerenciamento de Redes - O Protocolo SNMP

33

5.3. Mensagem SNMP


A mensagem possui tamanho varivel, limitada a 484 bytes. Message length: Tamanho da mensagem lembre-se que o pacote SNMP tem tamanho varivel; Protocol Version: Verso do Protocolo SNMP; Community String: Nome da comunidade; PDU Header: Cabealho do PDU; PDU Body: Dados da PDU.

Figura 16 - Mensagem SNMP

5.4.As PDUs SNMP


PDU (Protocol Data Unit) ou simplesmente Unidade de Dados de Protocolo, identifica uma srie de informaes, como verso do protocolo, tipo de operao e cdigos de erro.

Figura 17 - PDUs SNMP

Toda operao SNMP gera uma resposta, com exceo da Operao de Trap. Os dados das operaes so transportados na porta 161 UDP/IP, e os traps so transportados na porta 162 UDP/IP.

34

Gerenciamento de Redes - O Protocolo SNMP | Gerenciamento de Redes com SNMP

5.4.1. Estrutura das PDUs SNMP


A figura 18 mostra a estrutura das PDUs SNMP. Cada parte da PDU ser explicada nas sees seguintes.

Figura 18 - Estrutura das PDUs SNMP

5.4.1.1.

Prembulo e Cabealho

5.4.1.1.1. Verso: 0: SNMPv1 1: SNMPv2c 2: SNMPv2u/SNMPv2p 3: SNMPv3 5.4.1.1.2. Tipo de PDU: 0: getRequest 1: getNextRequest 2: getResponse 3: setRequest 4: trap

5.4.1.1.3. Request ID: Valor numrico usado para fazer referncia a pedidos e respostas.

5.4.1.1.4. Cdigos de erro: 0: noError: Sucesso na operao. 1: tooBig: Resposta muito grande. 2: noSuchName: OID no suportado pelo agente. 3: badvalue: Valor incorreto para operao set. 4: readOnly: Tentativa de escrita invlida. 5: genErr: Erro no relacionado ao protocolo.

5.4.1.1.5. Error index: Indica qual varivel listada na PDU causou o erro.

Gerenciamento de Redes com SNMP | Gerenciamento de Redes - O Protocolo SNMP

35

5.5.A Arquitetura SNMP


O Sistema de Gerenciamento possui a Aplicao Gerente que alm de receber as informaes do Gerente SNMP, pode tambm solicita-las. O Gerente SNMP ir disparar ento uma operao no Agente SNMP. No Sistema Gerenciado as requisies que chegam ao Agent SNMP, so submetidas s MIBs para validar a existncia dos objetos, permisses, tipos de dados e etc. A etapa seguinte consiste em consultar o recurso para obter o valor, lembre-se que a MIB s organiza os objetos, mas no possui dados.

Figura 19 - Arquitetura SNMP

5.6.Operaes/Mensagens SNMP 5.6.1. Get-Request


Recupera o valor de informaes de gerenciamento.

Figura 19 - Get-Request

36

Gerenciamento de Redes - O Protocolo SNMP | Gerenciamento de Redes com SNMP

5.6.2. Get-Next-Request
Recupera o valor de informaes de gerenciamento existentes aps um determinado identificador; pega o valor da prxima varivel.

Figura 201 - Get-Next-Request

5.6.3. Get-Bulk-Request
Estende a funcionalidade da funo Get-Next. Traz um bloco de informaes de cada vez.

Figura 212 - Get-Bulk-Request

5.6.4. Set-Request
Modifica o valor de informaes de gerenciamento.

Figura 23 - Set-Request

Gerenciamento de Redes com SNMP | Gerenciamento de Redes - O Protocolo SNMP

37

5.6.5. TRAP
Informa um evento ocorrido no sistema gerenciado.

Figura 224 - Trap

5.6.6. Inform-Request
Fornece uma informao de gerenciamento no solicitada. usado entre gerentes, porm, diferentemente do Trap, no caso do Inform-Request existe a confirmao do recebimento da mensagem.

Figura 235 - Inform-Request

38

Gerenciamento de Redes - O Protocolo SNMP | Gerenciamento de Redes com SNMP

5.6.7. Exemplo de Operao


Na figura 26 temos um exemplo de operao, primeiro uma ao do tipo GetRequest, que retorna o nome do equipamento, em seguida uma ao de GetNextRequest que retorna a informao referente a verso do equipamento e por ltimo uma ao de Set-Request em um objeto que apenas leitura (read only) e portanto a resposta de erro.

Figura 246 - Exemplo de Operao SNMP

5.7.Limitaes de SNMP 5.7.1. Falta de segurana


Esquema de autenticao trivial; Limitaes no uso do mtodo SET.

5.7.2. Ineficincia
Esquema de eventos limitado e fixo; Operao baseada em pooling; Comandos transportam poucos dados.

5.7.3. Falta de funes especficas


MIB com estrutura fixa; Falta de comandos de controle; Falta de comunicao entre gerenciadores.

5.7.4. No confivel:
Baseado em UDP/IP; Traps sem reconhecimento.

Gerenciamento de Redes com SNMP | Gerenciamento de Redes - O Protocolo SNMP

39

5.8.Vulnerabilidade SNMP - Proteo:


Aplicar patchs fornecidos pelo fabricante; Utilizar aplicaes SNMP somente onde seja necessrio; Filtrar o acesso aos dispositivos gerenciados, permitindo somente o trfego a partir de seus prprios servidores de gerenciamento; Alterar o nome padro das comunidades; Isolar o trfego de gerncia em uma rede especfica, uma VLAN por exemplo.

5.9.Verses SNMP:
SNMP v1 SNMP v2 SNMP v3

5.9.1. SNMP V1
Caractersticas e Operaes Bsicas. 5.9.1.1. Get Usado pelo NMS (Network Management System Sistema de Gerenciamento de Redes) para adquirir o valor de uma ou mais instncias de um objeto de um agente. 5.9.1.2. GetNext Usado pelo NMS para adquirir o valor do prximo objeto em uma tabela ou lista. 5.9.1.3. Set Usado pelo NMS para atribuir um valor a um objeto no agente.

5.9.2. SNMP V2
Durante a divergncia SNMP v2 foram definidos quatro variaes: 5.9.2.1. SNMPv2 Original SNMPv2p: Com o "p" referindo-se a "party-based security; 5.9.2.2. SNMPv2 baseado na comunidade SNMPv2c: Padro utilizado at hoje. 5.9.2.3. SNMPv2 baseada no usurio SNMPv2u: Esquema de segurana baseado em usurios e senha. 5.9.2.4. SNMPv2 Estrela SNMPv2*: Combina elementos de SNMPv2p e SNMPv2u. Nunca foi formalmente padronizado. As trs primeiras variaes foram documentadas em conjuntos de padres SNMP RFC Standard, a quarta no foi.

40

Gerenciamento de Redes - O Protocolo SNMP | Gerenciamento de Redes com SNMP

A estrutura do formato de mensagem global para cada variante discutida num padro administrativo ou de segurana para a variao em questo, que faz referncia norma SNMPv2 compartilhada para o formato de PDU (RFC 1905).

5.9.3. SNMP V2 (v2c)


5.9.3.1. Caractersticas e Operaes adicionais

5.9.3.1.1. Trap Mensagem no solicitada, enviada por um agente para informar ao NMS sobre um evento significante. 5.9.3.1.2. GetBulk Usado pelo NMS para adquirir eficientemente grandes blocos de dados. 5.9.3.1.3. Inform Permite que um NMS envie traps para outro NMS e receba respostas desses

traps.

5.9.4. SNMP V3
5.9.4.1. Melhorias de Segurana

5.9.4.1.1. USM User-based Security Model: Modelo de Segurana Baseada em Usurios. 5.9.4.1.2. VACM View-based Access Control Model: Modelo de controle de acesso baseado em vi-

ses.
5.9.4.1.3. Configurao dinmica de agentes SNMP utilizando comandos SNMP Apresenta a capacidade de configurar dinamicamente o agente SNMP usando comandos SET SNMP contra os objetos MIB que representam a configurao do agente. Permite configurao dinmica de adio, excluso e modificao de entradas de configurao local ou remotamente. Podemos via comando alterar as configuraes do snmpd.conf do host local ou remoto.

5.10. Modelo de Segurana SNMP 5.10.1. Modelo mais comum


SNMP V2c: Baseado no conceito de comunidade, cada dispositivo implementa uma ou mais comunidades.

5.10.2.

Comunidade default:

public: Leitura; private: Gravao.

Gerenciamento de Redes com SNMP | Gerenciamento de Redes - O Protocolo SNMP

41

5.10.3.

Uma comunidade define

Mtodo para autenticar o acesso (senha); Visibilidade da MIB; Privilgios de acesso MIB.

5.10.4.

Servio de autenticao

Todas as mensagens SNMP so autenticadas; o nome da comunidade serve como senha, porm, esse um sistema de segurana frgil e limitado, alm de no permitir a operao SET em alguns casos. Alguns dispositivos controlam o acesso usando o nome da comunidade e o nmero IP do(s) gerente(s), o que eleva um pouco a segurana, mas no resolve o problema.

5.11.

Traps em SNMP

So mensagens enviadas pelo agente ao gerente; no so respostas a pedidos, ou seja, so mensagens no solicitadas e representam eventos anormais.

5.11.1.

Classificao

Genricos: Presentes na MIB padro; Especficos: Definidos na MIB enterprises.

5.11.1.1. Traps genricos


42

5.11.1.1.1. ColdStart: Dispositivo foi ligado; Configurao local pode ter sido alterada; Informa ao gerente sobre sua existncia. 5.11.1.1.2. WarmStart: Dispositivo foi reinicializado; Configurao local no foi alterada. 5.11.1.1.3. LinkDown: Link ou porta de comunicao ligada ao n falhou. 5.11.1.1.4. LinkUp: Link ou porta local foi (re)ativada. 5.11.1.1.5. AuthenticationFailure: O dispositivo recebeu mensagem SNMP no autorizada; Comunidade no reconhecida; Nmero IP de gerente invlido. 5.11.1.1.6. EgpNeighborLoss: Exterior Gateway Protocol falhou no n; Normalmente usado em roteadores.

Gerenciamento de Redes - O Protocolo SNMP | Gerenciamento de Redes com SNMP

5.11.1.1.7. EnterpriseSpecific: Indica que a trap especfica de uma empresa; Fornencedores definem suas prprias traps na ramificao da empresa privada na rvore MIB.

Gerenciamento de Redes com SNMP | Gerenciamento de Redes - O Protocolo SNMP

43

44

Gerenciamento de Redes - O Protocolo SNMP | Gerenciamento de Redes com SNMP

6. A MIB
A MIB (Management Information Base - Base de Informaes de Gerenciamento) um conjunto dos objetos gerenciados, com o objetivo de abranger informaes necessrias para a gerncia da rede. importante salientar que a MIB no contm objetos reais, somente os organiza.

6.1.Objetos Gerenciados
So estruturas de dados resultantes da modelagem dos recursos da rede a serem gerenciados, podem ter permisses para serem lidos ou alterados sendo que cada leitura representar o estado real do recurso e cada alterao ser refletida no prprio recurso, isso permite automatizao de grande parte das tarefas de gerncia.

6.2.Modelos de Gerenciamento
O padro OSI define trs modelos para gerenciamento de redes: Modelo Organizacional; Modelo Funcional; Modelo Informacional.

6.2.1. Modelo Organizacional


Descreve a forma pela qual a gerncia pode ser distribuda entre domnios e sistemas dentro de um domnio.

6.2.2. Modelo funcional


Descreve as reas funcionais e seus relacionamentos.

6.2.3. Modelo informacional


Prov a base para a definio de objetos gerenciados e suas relaes, classes atributos, aes e nomes.

6.3.Caractersticas do Modelo OSI


Na definio de objetos gerenciados utilizada a orientao a objetos. Objetos com caractersticas semelhantes so agrupados em classes de objetos, uma classe pode ser uma subclasse de outra, e a segunda herda todas as propriedades da primeira, tambm chamada de super-classe.

6.3.1. Classe, Subclasse e Superclasse


Uma classe definida por: Atributos da classe; Aes que podem ser invocadas; Eventos que podem ser relatados; Subclasse a qual ela deriva; Superclasse na qual ela est contida.

Gerenciamento de Redes com SNMP | A MIB

45

6.3.2. Hierarquias dos Objetos Gerenciados


Para a definio dos objetos gerenciados deve-se considerar trs hierarquias: Hierarquia de herana; Hierarquia de nomeao; Hierarquia de registros: Usados na caracterizao e identificao de objetos gerenciados. 6.3.2.1. Hierarquia de Herana Conhecida tambm como hierarquia de classe tem como objetivo facilitar a modelagem dos objetos, atravs da utilizao do paradigma da orientao a objetos. Essa caracterstica facilita a definio de classes, superclasses, subclasses. 6.3.2.2. Hierarquia de Nomeao Hierarquia usada para identificar uma instncia de um objeto. Conhecida como Hierarquia de containment, descreve a relao de "estar contido em" aplicado aos objetos. Um objeto gerenciado est contido dentro de um (e somente um) objeto gerenciado, um objeto gerenciado existe somente se o objeto que o contm existir. 6.3.2.3. Hierarquia de Registro Hierarquia usada para identificar os objetos, independentemente das hierarquias de heranas e nomeao. especificada segundo regras estabelecidas pela notao ASN.1 (Abstract Syntax Notation. One). Cada objeto identificado por uma sequncia de nmeros, correspondente aos ns percorridos desde a raiz, at o objeto em questo.

6.4.MIB da Internet
O RFC (Request for Comments) 1066 apresentou a primeira verso da MIB, a MIB-1, o IAB (Internet Activities Board) aceita MIB como padro no RFC 1156. O RFC 1158 props uma segunda MIB, a MIB-II, aceita e formalizada como padro no RFC 1213.

6.5.A rvore da MIB II


Usa arquitetura de rvore de registro, cada parte da informao da rvore um n rotulado formado por: Identificador de objetos (OID): 1.3.6.1.1 Descrio textual: directory(1)

46

A MIB | Gerenciamento de Redes com SNMP

6.5.1. N Raiz
O n raiz da rvore (MIB) possui trs sub-rvores: ccitt(0): Administrao CCITT (Comite Consultatif Internationale de Telegraphie et Telephonie); iso(1): Administrao ISO; joint-iso-ccitt(2): Administrao ISO e CCITT.

Figura 27 - N raiz da rvore MIB

6.5.2. N iso
Sob o n iso(1) temos as subrvores: org(3); dod(6); Internet(1).

Figura 258 -N iso(1)

Gerenciamento de Redes com SNMP | A MIB

47

6.5.3. N internet
O n Internet(1) possui quatro subrvores: directory(1): Contm informaes sobre o servio de diretrios OSI; mgmt(2): Informaes de gerenciamento; experimental(3): Objetos em pesquisa pela IAB; private(4): Objetos definidos por outras organizaes.

Figura 29 - N internet(1)

6.5.4. N mgmt
Abaixo do n mgmt(2) esto os objetos usados para se obter informaes especficas de rede.

Figura 30 - N mgmt

48

A MIB | Gerenciamento de Redes com SNMP

6.5.5. rvore MIB II


Viso geral da rvore da MIB II.

Figura 31 - rvore MIB II

6.5.6. Exemplo de Objeto da MIB


Objeto System (1.3.6.1.2.1.1)

Figura 32 - Objeto System (1.3.6.1.2.1.1)

6.5.7. Exemplos de Grupos


6.5.7.1. Grupo System Sistema de operao dos dispositivos da rede
6.5.7.1.1. Descrio textual: iso.org.dod.internet.mgmt.mib-2.system
Gerenciamento de Redes com SNMP | A MIB 49

6.5.7.1.2. 1.3.6.1.2.1.1

OID

6.5.7.1.3. Componentes: sysDesc(1): Descrio do sistema, nome completo e verso do tipo de hardware, sistema operacional e software de rede; sysObjectId(2): OID de registro (fabricante do sistema); sysUpTime(3): Tempo de atividade do sistema (1/100 s); sysContact (4): Pessoa ou grupo responsvel pelo n; sysName(5): Nome do n na rede; sysLocation(6): Localizao fsica do n; sysServices(7): Flags indicando servios suportados.

6.5.7.2.

Grupo Interfaces - Interface da rede com o meio fsico

6.5.7.2.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.interface 6.5.7.2.2. 1.3.6.1.2.1.2 OID

6.5.7.2.3. Componentes ifNumber(1): Nmero de interfaces de rede (independentemente do seu estado atual) presentes no sistema; ifTable(2): A tabela de informaes sobre cada interface de rede, o nmero de interfaces dado pelo valor do ifNumber; ifEntry(ifTable 1): Entradas de valores sobre cada uma das interfaces; ifIndex(ifEntry 1): Um valor nico para cada interface, permite identificar a interface; ifDescr(ifEntry 2): Identificao da interface, deve incluir o nome do fabricante, o nome do produto e a verso da interface; ifType(ifEntry 3): Tipo de interface; ifMtu(ifEntry 4): Tamanho mximo do datagrama suportado pela interface, especificado em octetos; ifSpeed(ifEntry 5): Uma estimativa da largura de banda atual da interface em bits por segundo. Para interfaces que no variam em largura de banda ou ainda para aquelas onde essa estimativa no considerada necessria, esse objeto deve conter a largura de banda nominal; ifPhysAddress(ifEntry 6): Endereo fsico da interface, Para interfaces que no tm tal endereo (por exemplo, uma linha serial), esse objeto deve conter um octeto string de comprimento zero; ifAdminStatus(ifEntry 7): Indica o estado desejado da interface; ifOperStatus(ifEntry 8): Indica o estado atual de funcionamento do interface; o up(1), -- pronto para passar pacotes; o down(2), -- interface desabilitada; o testing(3) -- indica que nenhum pacote em estado operacional podem ser passados.

50

A MIB | Gerenciamento de Redes com SNMP

ifLastChange(ifEntry 9): O tempo de funcionamento desde que a interface entrou em estado operacional; ifInOctets(ifEntry 10): O nmero total de octetos recebidos na interface, incluindo caracteres de enquadramento (framing characters); ifInUcastPkts(ifEntry 11): O nmero de pacotes unicast entregues a um protocolo de camada superior; ifInNUcastPkts(ifEntry 12): O nmero de pacotes no unicast (ou seja, broadcast ou multicast) entregues a um protocolo de camada superior; ifInDiscards(ifEntry 13): O nmero de pacotes de entrada que foram escolhidos para serem descartados, mesmo que nenhum erro tenha sido detectado, impede a entrega dos pacotes a um protocolo de camada superior. Uma razo possvel para descartar tais pacotes poderia ser para liberar espao de buffer; ifInErrors(ifEntry 14): O nmero de pacotes de entrada que continham erros que impedem seu fornecimento a um protocolo de camada superior; ifInUnknownProtos(ifEntry 15): O nmero de pacotes recebidos atravs da interface que foram descartados por causa de um protocolo desconhecido ou no suportado; ifOutOctets(ifEntry 16): O nmero total de octetos transmitidos na interface, incluindo caracteres de enquadramento (framing characters); ifOutUcastPkts(ifEntry 17): O nmero total de pacotes que o protocolo de camada superior solicitou que fossem transmitidos, incluindo aqueles que foram descartados ou no enviados; ifOutNUcastPkts(ifEntry 18): O nmero total de pacotes no unicast (ou seja, broadcast ou multicast) que o protocolo de camada superior solicitou que fossem transmitidos, incluindo aqueles que foram descartados ou no enviados; ifOutDiscards(ifEntry 19): O nmero de pacotes de sada que foram escolhidos para serem descartados, mesmo que nenhum erro tenha sido detectado, impede a transmisso dos pacotes. Uma razo possvel para descartar tais pacotes poderia ser para liberar espao de buffer; ifOutErrors(ifEntry 20): O nmero de pacotes de sada que no puderam ser transmitidos devido a erros; ifOutQLen(ifEntry 21): O comprimento da fila de sada de pacotes (em pacotes); ifSpecific(ifEntry 22): Uma referncia a definies MIB especficas para uma mdia em particular, sendo usado para realizar a interface com o objeto. Por exemplo, se a interface realizado por uma ethernet, ento o valor deste objeto refere-se a um documento que define objetos especficos para ethernet. Se esta informao no presente, seu valor deve ser definido como OBJECT IDENTIFIER { 0 0 }, que uma sintaxe vlida para identificador de objeto, e estar em conformidade com qualquer implementao de ASN.1 e BER que dever ser capaz de gerar e reconhecer esse valor.

Gerenciamento de Redes com SNMP | A MIB

51

6.5.7.3. Grupo at (Address Translation) Mapeamento de endereos IP em endereos fsicos.


6.5.7.3.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.at 6.5.7.3.2. 1.3.6.1.2.1.3 OID

6.5.7.3.3. Componentes atTable(1): As tabelas de traduo de endereos, devem conter o endereo de rede para seu endereo fsico equivalente. Algumas interfaces no usam tabelas de converso para determinar equivalncias endereo (por exemplo, DDN-X.25 tem um mtodo algortmico). Se todas as interfaces so deste tipo, ento a tabela Address Translation est vazia, ou seja, tem zero entradas; atEntry(atTable 1): Cada entrada contm um endereo de rede para seu endereo fsico equivalente; atIfIndex(atEntry 1): A interface identificada por um determinado valor deste ndice a mesma interface identificada pelo mesmo valor de ifIndex; atPhysAddress(atEntry 2): Endereo fsico da interface; atNetAddress(atEntry 3): O endereo da rede (por exemplo, o endereo IP).

6.5.7.4.

Grupo ip - Protocolo IP

6.5.7.4.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.ip 6.5.7.4.2. 1.3.6.1.2.1.4 OID

6.5.7.4.3. Componentes (Apenas Alguns) ipForwarding(1): Se o IP Forward est ou no habilitado no dispositivo; o forwarding(1) o not-forwarding(2) ipInReceives(3): O nmero total de datagramas de entrada recebidos pela interface,incluindo aqueles recebidos com erro; ipInAddrErrors(5): O nmero de datagramas de entrada descartados porque o endereo IP de destino em seu campo de cabealho IP no era um endereo vlido. Essa contagem inclui endereos invlidos (por exemplo, 0.0.0.0) e os endereos de Classes no suportsadas (por exemplo, Classe E); ipInUnknownProtos(7): O nmero de datagramas recebido com sucesso, mas descartados por causa de um protocolo desconhecido ou no suportado;

52

A MIB | Gerenciamento de Redes com SNMP

ipOutDiscards(11): O nmero de datagramas IP de sada para os quais no foram encontrados problemas para impedir a sua transmisso ao seu destino, mas que foram descartados (por exemplo, por falta de espao de buffer); ipOutNoRoutes(12): O nmero de datagramas IP descartados, porque nenhuma rota podia ser encontrada para transmiti-los aos seus destinos; ipAddrTable(20): Tabela de endereamento IP; ipAdEntReasmMaxSize(ipAddrEntry 5): O tamanho do maior datagrama IP que esta entidade pode re-montar a partir dos datagramas IP fragmentados recebidos por esta interface; ipRouteTable(21): Tabela de roteamento IP; ipRouteDest(ipRouteEntry 1): Endereo IP do destino da rota. Uma entrada com valor 0.0.0.0 considerada uma rota padro; ipRouteMetric1(ipRouteEntry 3): A mtrica de roteamento primrio para esta rota. A semntica desta mtrica determinada pelo protocolo de roteamento especificado na rota do valor ipRouteProto. Se essa mtrica no utilizada, seu valor deve ser definido como -1; ipRouteNextHop(ipRouteEntry 7): O endereo IP do prximo salto da rota. (No caso de uma rota ligada a uma interface que se realiza atravs de uma mdia de broadcast, o valor deste campo o endereo IP do agente daquela interface). Grupo icmp Protocolo ICMP

6.5.7.5.

6.5.7.5.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.icmp 6.5.7.5.2. 1.3.6.1.2.1.5 OID

6.5.7.5.3. Componentes (Apenas Alguns) icmpInMsgs(icmp 1): O nmero total de mensagens ICMP que a entidade recebeu. Note que a contagem inclui todos os contadores de icmpInErrors; icmpInErrors(icmp 2): O nmero de mensagens ICMP que a entidade recebeu, mas determinada por erros ICMP especficos (ICMP checksums com erro, erro no tamanho, etc); icmpInDestUnreachs(icmp 3): O nmero de mensagens ICMP recebidas com destino inacessvel; icmpInTimeExcds(icmp 4): O nmero de mensagens ICMP recebidas com tempo excedido.

Gerenciamento de Redes com SNMP | A MIB

53

6.5.7.6.

Grupo TCP Protocolos TCP

6.5.7.6.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.tcp 6.5.7.6.2. 1.3.6.1.2.1.6 OID

6.5.7.6.3. Componentes (Apenas Alguns) tcpConnTable(13): Uma tabela contendo informaes de conexo TCP especficas; tcpConnState(tcpConnEntry 1): O estado da conexo TCP; tcpConnLocalAddress(tcpConnEntry 2): O endereo IP local para esta conexo TCP. No caso de uma conexo no estado ouvindo, disposta a aceitar conexes para qualquer interface IP associada ao n, o valor 0.0.0.0 usado; tcpConnRemAddress(tcpConnEntry 4): O endereo IP remoto para essa conexo TCP; tcpConnRemPort(tcpConnEntry 5): O nmero da porta remota para esta conexo TCP.

6.5.7.7.

Grupo UDP Protocolos UDP

6.5.7.7.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.udp 6.5.7.7.2. 1.3.6.1.2.1.7 OID

6.5.7.7.3. Componentes udpInDatagrams(1): O nmero total de datagramas UDP entregues aos usurios UDP; udpNoPorts(2): O nmero total de datagramas UDP recebidos para os quais no houve aplicao na porta de destino; udpInErrors(3): O nmero de datagramas UDP recebidos que no puderam ser entregues por outras razes que no a falta de uma aplicao na porta de destino; udpOutDatagrams(4): O nmero total de datagramas UDP enviados a partir desta entidade; udpTable(5): Uma tabela contendo informaes sobre os ouvintes UDP; udpEntry(udpTable 1): Informaes sobre um determinado ouvinte UDP; udpLocalAddress(udpEntry 1): O endereo IP local para este ouvinte UDP. No caso de um ouvinte UDP que est disposto a aceitar datagramas para qualquer interface IP associado com o n, o valor 0.0.0.0 usado; udpLocalPort(udpEntry 2): O nmero da porta local para este ouvinte UDP.

54

A MIB | Gerenciamento de Redes com SNMP

6.5.7.8.

Grupo EGP Protocolo EGP

6.5.7.8.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.egp 6.5.7.8.2. 1.3.6.1.2.1.8 OID

6.5.7.8.3. Componentes (Apenas Alguns) egpInMsgs(1): O nmero de mensagens EGP recebidas sem erro; egpInErrors(2): O nmero de mensagens EGP recebidas com erro; egpOutMsgs(3): O nmero total de mensagens EGP gerados localmente; egpOutErros(4): O nmero de mensagens EGP gerados localmente no enviadas devido a limitaes de recursos dentro de uma entidade EGP; egpNeighTable(5): A tabela de vizinhos EGP.

6.5.7.9.

Grupo cmot Protocolo CMOT

6.5.7.9.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.cmot 6.5.7.9.2. 1.3.6.1.2.1.9 Histrico. OID

6.5.7.10. Grupo Transmission Meios de Transmisses


6.5.7.10.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.transmission 6.5.7.10.2. 1.3.6.1.2.1.10 Histrico. OID

6.5.7.11. Grupo SNMP Protocolo SNMP


6.5.7.11.1. Descrio textual iso.org.dod.internet.mgmt.mib-2.snmp 6.5.7.11.2. 1.3.6.1.2.1.11 OID

6.5.7.11.3. Componentes snmpInPkts(1): O nmero total de mensagens entregues entidade SNMP pelo servio de transporte; snmpOutPkts(2): O nmero total de mensagens SNMP que foram passados da entidade protocolo SNMP para o servio de transporte; snmpInBadVersions(3): O nmero total de mensagens SNMP que foram entregues entidade protocolo SNMP, mas eram de uma verso SNMP no suportada;
Gerenciamento de Redes com SNMP | A MIB 55

snmpInBadCommunityNames(4): O nmero total de mensagens SNMP entregues entidade protocolo SNMP, mas que usaram um nome da comunidade SNMP desconhecida pela entidade; snmpInBadCommunityUses(5): O nmero total de mensagens SNMP entregues entidade protocolo SNMP que representaram uma operao SNMP que no era permitida pela comunidade SNMP nomeada na mensagem; snmpInASNParseErrs(6): O nmero total de erros ASN.1 ou BER encontrados pela entidade protocolo SNMP quando decodificou as Mensagens SNMP recebidas; -- (7): No usado; snmpInTooBigs(8): O nmero total de PDUs SNMP que foram entregues entidade protocolo SNMP e para os quais o valor do campo status de erro `tooBig '; SnmpInNoSuchNames(9): O nmero total de PDUs SNMP que foram entregues entidade protocolo SNMP e para os quais o valor do campo status de erro `noSuchName '; SnmpInBadValues(10): O nmero total de PDUs SNMP que foram entregues entidade protocolo SNMP e para os quais o valor do campo status de erro `badValue '; snmpInReadOnlys(11): O nmero total vlido de PDUs SNMP que foram entregues entidade protocolo SNMP e para os quais o valor do campo status de erro 'readOnly'. Note que um erro de protocolo para gerar um PDU SNMP que contm o valor `readOnly ' no campo erro de status, e como tal, este objeto fornecido como um meio de detectar implementaes incorretas do SNMP; snmpInGenErrs(12): O nmero total de PDUs SNMP que foram entregues entidade protocolo SNMP e para os quais o valor do campo status de erro `genErr'; snmpInTotalReqVars(13): O nmero total de objetos MIB que foram recuperados com sucesso pela entidade protocolo SNMP como o resultado de receber PDUs SNMP Get-Request e Get-Next vlidos; snmpInTotalSetVars(14): O nmero total de objetos MIB que foram alterados com sucesso pela entidade protocolo SNMP, como o resultado de receber PDUs SNMP Set-Request vlidos; snmpInGetRequests(15): O nmero total de PDUs SNMP Get-Request que foram aceitas e processadas pela entidade protocolo SNMP; snmpInGetNexts(16): O nmero total de PDUs SNMP Get-Next que foram aceitas e processadas pela entidade protocolo SNMP; snmpInSetRequests(17): O nmero total de PDUs SNMP Set-Request que foram aceitas e processadas pela entidade protocolo SNMP; snmpInGetResponses(18): O nmero total de PDUs SNMP Get-Response que foram aceitas e processadas pela entidade protocolo SNMP; snmpInTraps(19): O nmero total de PDUs SNMP Trap que foram aceitas e processadas pela entidade protocolo SNMP;

56

A MIB | Gerenciamento de Redes com SNMP

snmpOutTooBigs(20): O nmero total de PDUs SNMP que foram gerados pela entidade protocolo SNMP e para os quais o valor do campo status de erro `tooBig '; snmpOutNoSuchNames(21): O nmero total de PDUs SNMP que foram gerados pela entidade protocolo SNMP e para os quais o valor do campo status de erro ` noSuchName '; snmpOutBadValues(22): O nmero total de PDUs SNMP que foram gerados pela entidade protocolo SNMP e para os quais o valor do campo status de erro ` badValue '; -- (23): No usado; snmpOutGenErrs(24): O nmero total de PDUs SNMP que foram gerados pela entidade protocolo SNMP e para os quais o valor do campo status de erro ` genErr '; snmpOutGetRequests(25): O nmero total de PDUs SNMP Get-Request que foram gerados pela entidade protocolo SNMP; snmpOutGetNexts(26): O nmero total de PDUs SNMP Get-Next que foram gerados pela entidade protocolo SNMP; snmpOutSetRequests(27): O nmero total de PDUs SNMP Set-Request que foram gerados pela entidade protocolo SNMP; snmpOutGetResponses(28): O nmero total de PDUs SNMP GetResponse que foram gerados pela entidade protocolo SNMP; snmpOutTraps(29): O nmero total de PDUs SNMP Trap que foram gerados pela entidade protocolo SNMP; snmpEnableAuthenTraps(30): Indica se o processo do agente SNMP esta configurado para gerar traps de falha de autenticao. O valor deste objeto substitui qualquer informao de configurao, como tal, fornece um meio pelo qual todos os traps de falha de autenticao possam ser desabilitados. Note que altamente recomendvel que esse objeto seja armazenados em memria no-voltil para que ele permanea constante entre as reinicializaes do sistema de gerencia de rede. o enabled(1); o disabled(2).

Gerenciamento de Redes com SNMP | A MIB

57

58

A MIB | Gerenciamento de Redes com SNMP

7. Protocolo de Gerenciamento RMON


O padro RMON para monitoramento remoto oferece uma arquitetura de gerenciamento distribuda para anlise de trfego, resoluo de problemas, demonstrao de tendncias e gerenciamento proativo de redes de modo geral. Criado pelos mesmos grupos que desenvolveram o TCP/IP e o SNMP, o RMON um padro IETF (Internet Engineering Task Force) de gerenciamento de redes cuja sigla significa Remote Network Monitoring MIB. Primeiramente, desenvolveu-se o padro SNMP, somente depois se pensou no RMON. O Simple Network Management Protocol, ou SNMP, um protocolo de gerenciamento realmente simples: a nica informao que se tem atravs de um alerta SNMP que existe um problema em um ponto da rede. Os alertas do SNMP padro notificam um problema somente quando ele j atingiu uma condio extrema suficiente a ponto de comprometer a comunicao na rede como um todo. Ao contrrio do que se pode imaginar, o SNMP no capaz de definir o problema, nem sua gravidade, nem fornece, tampouco, recursos para uma investigao das causas desse problema. O diagnstico do problema uma tarefa do administrador da rede. O comit do IETF decidiu que, para promover uma expanso qualificada das tecnologias de rede, era necessrio um padro de gerenciamento de redes mais sofisticado. As principais caractersticas do novo padro, o RMON, seriam: Interoperabilidade independentemente de fabricante; Capacidade de fornecer informaes precisas a respeito das causas de falha no funcionamento normal da rede, assim como da severidade dessa falha; Oferecer ferramentas adequadas para diagnstico da rede. Alm destas caractersticas, o padro deveria oferecer um mecanismo proativo para alertar o administrador dos eventuais problemas da rede, alm de mtodos automticos capazes de coletar dados a respeito desses problemas. Assim, o RMON tornou-se um padro por volta de 1990. O RMON II foi publicado para estender as capacidades do RMON.

7.1.Algumas RFCs tratam do protocolo RMON:


RMON1: RFC 1757 - Remote Network Monitoring Management Information Base (Draft) Fev. 1995; RMON1: RFC 2819 - Remote Network Monitoring Management Information Base Mai 2000; RFC 1513 - Token Ring Extensions to the Remote Network Monitoring MIB Set 1993; RMON2: RFC 2021 - Remote Network Monitoring Management Information Base Version 2 using SMIv2 (Obsolete) Jan 1997*; RFC 3273 - Remote Network Monitoring Management Information Base for High Capacity Networks Jul 2002 **; RMON2: RFC 4502 - Remote Network Monitoring Management Information Base Version 2 using SMIv2 Mai 2006; o * Substituiu; o ** Atualizou.
Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON 59

SMON: RFC 2613 - Remote Network Monitoring MIB Extensions for Switched Networks (Proposto) Jun 1999; Overview: RFC 3577 - Introduction to the RMON Family of MIB Modules Ago 2003.

7.2.Caractersticas do Protocolo
O protocolo RMON uma MIB SNMP e, portanto o dispositivo deve possuir um agente SNMP. especfico para tecnologias Ethernet e Token Ring, apesar de existir uma implementao para ATM. O dispositivo que implementa o suporte para RMON se chama probe RMON. Um probe pode ser implementado em um dispositivo dedicado ou em um elemento de rede, como um hub, switch ou roteador. O probe visa monitorar trfego de um segmento da rede. Deve ficar em um ponto da rede por onde passa todo o trfego do segmento. Dessa forma deve haver um probe RMON por segmento de rede a ser monitorado. Em redes comutadas, o RMON implementado normalmente nos equipamentos ativos ou atravs de espelhamento do trfego de suas portas para uma porta de monitorao (port mirroring).

7.3.Objetivos do RMON
Realizar anlise e levantar informaes estatsticas sobre os dados coletados em uma sub-rede, liberando a estao gerente desta tarefa. Reduzir trfego entre rede local gerenciada e a estao gerente remota. Detectar, registrar e informar estao gerente sobre situaes de erro e eventos significativos da rede. Permitir o gerenciamento pr-ativo da rede, diagnosticando e registrando eventos que possibilitem detectar o mal funcionamento e prever falhas que interrompam a sua operao. Enviar informaes de gerenciamento para mltiplas estaes gerentes.

60

Protocolo de Gerenciamento RMON | Gerenciamento de Redes com SNMP

7.4.Abrangncia das verses

Tabela 02 - Camadas de atuao de cada verso do Protocolo RMON

7.5.Exemplo de funcionamento

Figura 33 - Exemplo de consulta RMON

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

61

7.6.MIB RMON1

Figura 264 - MIB RMON I

7.6.1. Aquisio de Estatsticas de Trfego:


Estatstico (Statistics); Histrico (History); Hosts; Classificao de n Hosts (Host Top N); Matriz (Matrix); Token Ring.

7.6.2. Deteco e Resoluo de Situaes Crticas e de Erro:


Alarme (Alarm); Filtro (Filter); Captura de pacote (Packet Capture); Evento (Event).

7.6.3. Exemplos de Grupos


7.6.3.1. RMON1 Statistics Estatsticas bsicas do trfego em cada segmento de rede Ethernet.
62

7.6.3.1.1. Exemplos de estatsticas Ethernet Bytes trafegados; Pacotes trafegados (<uni/broad/multi>cast); Pacotes < 64 bytes; Pacotes > 1518 bytes; Pacotes com erro de CRC; Nmero de colises.

Protocolo de Gerenciamento RMON | Gerenciamento de Redes com SNMP

7.6.3.2. RMON1 History Armazena n ltimas estatsticas da rede.


7.6.3.2.1. Configurao Intervalos de amostragem; Quantidade de amostras armazenadas.

Anlise da tendncia de comportamento de uma rede: Cria subsdios para um gerenciamento pr-ativo.

Figura 275 - Exemplo coleta Grupo History RMON I

7.6.3.3. RMON1 Hosts Estatsticas para cada host do segmento de rede.


7.6.3.3.1. Exemplos: Nmero de bytes transmitidos e recebidos; Nmero de pacotes transmitidos e recebidos; Nmero de pacotes com erro transmitidos; Nmero de pacotes broadcast transmitidos; Nmero de pacotes multicast transmitidos.

7.6.3.4. RMON1 Hosts Top N Classifica os hosts de acordo com valores de variveis do grupo hosts. Permite definir: Varivel para ordenao; Durao da amostragem; Quantidade de hosts na lista.
Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON 63

Exemplo: As 10 mquinas que mais transmitiram pacotes na rede hoje; As 5 mquinas que mais transmitiram pacotes com erros nas ltimas 2 horas; As 20 mquinas que mais geraram trfego de broadcast na semana.

7.6.3.5. RMON1 Matrix Associa estatsticas de trfego entre pares de mquinas.


Exemplos: Pacotes transmitidos; Octetos transmitidos; Pacotes com erros transmitidos.

Facilita a obteno de informaes em relao comunicao entre um par qualquer de estaes.

Figura 286 - Grupo Matrix RMON I

7.6.3.6. RMON1 Token Ring O suporte a Token Ring pode ser feito de 2 formas: Extenso dos grupos Statistics e History para redes Token Ring: Grupos Statistics e History originais eram dependentes de Ethernet. Novo grupo Token Ring. 7.6.3.7. RMON1 Alarm Estabelece limites de operao para variveis de MIB. Se os limites forem ultrapassados, alarmes so gerados.

64

Protocolo de Gerenciamento RMON | Gerenciamento de Redes com SNMP

Exemplos: Mais de 20 pacotes com erro nos ltimos 5 minutos; Se a taxa de bytes enviados for menor que 100.000.000/5s.

Figura 297 - Grupo Alarm RMON I

7.6.3.8. RMON1 Filter Define condies associadas a pacotes trafegados pela rede. Se o pacote atende s condies estabelecidas: Captura o pacote ou Registra estatsticas baseadas no mesmo.
Exemplos: Captura todos os pacotes vindos do servidor S1; Conta quantos pacotes esto indo para o roteador e no so originrios dos servidores: trfego entre segmentos de redes das estaes.

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

65

7.6.3.9. RMON1 Packet Capture Troubleshooting em segmentos de redes remotos. Como capturar o trfego em um segmento de rede? Colocar no segmento um sniffer; Utilizar o probe RMON.

Figura 38 - Grupo Packet Capture RMON I

7.6.3.9.1. Captura pacotes para anlise na rede. Parmetros da captura: Quantos bytes de cada pacote sero armazenados? Default so os 100 primeiros bytes; Qual filtro determina os pacotes a serem capturados? Qual o tamanho do buffer a ser utilizado?

7.6.3.10. RMON1 Event Algumas aes do probe provocam eventos, por exemplo: Alarme disparado; Pacote que atende condies de um filtro. Grupo event determina o que fazer nestes casos: Log interno; snmp-trap; Log-and-trap.

66

Protocolo de Gerenciamento RMON | Gerenciamento de Redes com SNMP

7.7.RMON2
O RMON1 trabalha na camada de enlace de dados. Mas e as demandadas de Estatsticas de IP, IPX? Estatsticas de HTTP, FTP, etc? O RMON2 visa atender a essas necessidades.

7.7.1. MIB RMON2


A MIB do RMON2 um subconjunto da rvore MIB: So 9 novos grupos bsicos de variveis.

Figura 39 - MIB RMON II

7.7.1.1. RMON2 Protocol Directory Diretrio de Protocolo. Lista dos protocolos que o probe RMON2 consegue monitorar. Visa a interoperabilidade.

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

67

7.7.1.2. RMON2 Protocol Distribution Estatsticas sobre todos os protocolos suportados pelo probe. Nmero de bytes e de pacotes referentes a cada protocolo trafegando naquele segmento de rede.

Figura 40 - Grupo Protocol Distribution RMON II

7.7.1.3. RMON2 Network Layer Host/Matrix e Application Layer Host/Matrix

Tabela 03 - Network Layer Hot/Matrix e Application Layer Host/Matrix RMON II

7.7.1.4. RMON2 User History Histrico de Coleta do Usurio. Equivalente ao grupo history do RMON1, porm, permite configurar quais variveis sero mantidas no histrico, alm do intervalo e quantidade da amostragem. 7.7.1.5. RMON2 Probe Configuration Configurao do Probe. Padroniza a configurao do probe RMON, visando interoperabilidade entre probes e softwares gerentes de diferentes fabricantes.
68

7.7.1.5.1. Exemplos: Reboot do probe; Atualizao de Software.

Protocolo de Gerenciamento RMON | Gerenciamento de Redes com SNMP

7.7.1.6. RMON2 Address Map Mapeamento de Endereos. Relaciona endereos MAC e endereos de Rede (IP, IPX).

7.8.RMON Consideraes Finais


O RMON pode exigir bastante processamento: nem sempre um determinado equipamento ou dispositivo tem recursos de processamento e armazenamento para suportar todos os grupos de variveis da RMON-MIB. suficiente que seja implementado um nico desses grupos, para o elemento ser considerado em conformidade com o RMON. Na especificao dos dispositivos so definidos quais grupos de RMON eles suportam. No caso de existirem mltiplos gerentes, o elemento RMON deve determinar quais informaes de gerenciamento devem ser encaminhadas para cada gerente.

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

69

70

Protocolo de Gerenciamento RMON | Gerenciamento de Redes com SNMP

8. Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c


A implementao do protocolo SNMP em Servidores Linux se d geralmente atravs do net-snmp (http://www.net-snmp.org). Na distribuio CentOS (http://www.centos.org), utilizada durante todos os exemplo prticos, temos 4 pacotes que fazem essa implementao: net-snmp: Binrios, arquivos de configurao, arquivos de inicializao e documentao; net-snmp-devel: Arquivos fontes; net-snmp-utils: Binrios adicionais, como snmpget, snmpgetnext, snmpset, snmpwalk, etc; e arquivos man; net-snmp-libs: Bibliotecas, documentaes e MIBS default localizadas no /usr/share/snmp/mibs.

8.1.Instalao dos binrios


# yum -y install net-snmp net-snmp-devel net-snmp-utils net-snmplibs

8.2.Estrutura do net-snmp aps a instalao dos binrios


/etc/rc.d/init.d/: Arquivos de inicializao; /etc/snmp: Arquivos de configurao; /etc/sysconfig/snmpd: Arquivos de configurao de sistema; geram o /var/run/snmpd.pid; /usr/bin/ e /usr/sbin/: Binrios do sistema; /usr/include/net-snmp: Arquivos fonte; /usr/lib64/: Bibliotecas 64 bits; /usr/share/doc/ e /usr/share/man/: Documentao; /usr/share/snmp: Arquivos e dados de configurao usados pelo sistema e MIBs default; /var/lib/net-snmp: No momento em que o servio iniciado, carrega a configurao do net-snmpd.conf e as mibs disponveis no sistema; /var/run/net-snmp: Previsto para armazenar dados temporrios de execuo que descrevem o estado do sistema, como PIDs, por exemplo, que no caso do CentOS armazenado direto em /var/run/snmpd.pid.

8.3.Backup do arquivo de configurao original (snmpd.conf)


As boas prticas em administrao de servidores nos sinalizam que importante realizar um backup dos arquivos de configurao originais de todo e qualquer servio, antes de realizarmos alteraes nas condiguraes padro. A fora isso, no caso do snmpd.conf, o mesmo uma exelente fonte de estudos. Em nosso caso, vamos mover o arquivo, pois em todos os exemplos criaremos o nosso prprio arquivo de configurao.
# mv /etc/snmp/snmpd.conf /etc/snmp/snmpd.conf.orig

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c

71

8.4. Configurao Bsica de um Agente SNMP v1/v2c


Para que um servidor responda s solicitaes do protocolo SNMP v1 e v2c, ele s precisa de uma linha no seguinte formato:
rocommunity nome_da_comunidade

Representa uma comunidade com direito de leitura.


rwcommunity nome_da_comunidade

Representa uma comunidade com direito de leitura e escrita. Podem ser informadas apenas comunidades com direito de leitura, comunidades com direito de escrita ou ambas; basta colocar uma informao por linha.
# cat snmpd.conf # /etc/snmp/snmpd.conf v1/v2c basico # rocommunity public rwcommunity private

Aps alterar o arquivo, necessrio reiniciar o servio:


# service snmpd restart

O status do servio pode ser verificado atravs do comando:


# service snmpd status

8.5.Acessando um Agente SNMP v1/v2c 8.5.1. Comando snmpget


A leitura de informaes de um host feita atravs do comando snmpget:
# snmpget -v 1 -c public localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: root@localhost

# snmpget -v 2c -c public localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: root@localhost

8.5.1.1. Explicando o comando: snmpget: Comando para ler informaes do host; -v: Verso do protocolo pode ser 1 ou 2c; -c: Comunidade, no nosso exemplo, public; localhost: Endereo do host ao qual ser solicitada a informao, sendo nome DNS ou IP. sysContact.0: Informao que ser solicitada ao host. Como pode ser observado acima, o servidor responde s solicitaes da verso 1 e 2c do protocolo SNMP. Nesse caso solicitamos a informao sysContact.0, que corres72 Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c | Gerenciamento de Redes com SNMP

ponde ao responsvel pelo host. Como isso no foi informado no arquivo de configurao, a resposta a default do sistema. Por que sysContact.0 e no apenas sysContact? Como j mencionamos anteriormente, cada objeto possui uma identificao nica, que sua posio na rvore da MIB. No caso do contato, teremos apenas um responsvel cadastrado, mas se pensarmos, em interfaces de rede, por exemplo, geralmente teremos mais de uma, e nesse caso poderamos ler informaes como: A descrio da primeira interface de rede:
# snmpget -v 2c -c public localhost ifDescr.1 IF-MIB::ifDescr.1 = STRING: lo

A descrio da segunda interface de rede:


# snmpget -v 2c -c public localhost ifDescr.2 IF-MIB::ifDescr.2 = STRING: eth0

8.5.2. Comando snmpset


A alterao de informaes de um host feita atravs do comando snmpset, que vai confirmar se a comunidade utilizada possui ou no privilgio suficiente para executar essa ao:
# snmpset -v 1 -c public localhost sysContact.0 s aulas Error in packet. Reason: (noSuchName) There is no such variable name in this MIB. Failed object: SNMPv2-MIB::sysContact.0

# snmpset -v 2c -c public localhost sysContact.0 s aulas Error in packet. Reason: noAccess Failed object: SNMPv2-MIB::sysContact.0

Observe que na verso 2c as mensagens se tornaram mais claras, por isso sempre que o host possuir suporte, aconselhvel utilizar a verso 2c. Nesses exemplos o problema foi a utilizao da comunidade public, que tem direito apenas de leitura no host.
# snmpset -v 2c -c private localhost sysContact.0 s aulas SNMPv2-MIB::sysContact.0 = STRING: aulas

8.5.2.1. Explicando o comando: snmpset: Comando para alterar informaes do host; -v: Verso do protocolo pode ser 1 ou 2c; -c: Comunidade no nosso exemplo private;
Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c 73

localhost: Endereo do host ao qual ser solicitada a informao, sendo nome DNS ou IP. sysContact.0: Informao que ser alterada no host; s: Tipo de dado da informao, neste caso String; aulas: Dado que ser gravado no campo sysContact.0.

Observe que sempre que realizarmos uma alterao no host, receberemos uma mensagem de retorno, que pode ser uma mensagem de falha ou a confirmao de que a informao foi alterada, como no exemplo acima: SNMPv2-MIB::sysContact.0 = STRING: aulas

8.5.3. Comando snmpgetnetxt


Sabendo da existncia de uma determinada informao, podemos solicitar ao host qual a prxima informao, e assim percorrer todas as informaes daquele host, para isso utilizamos o comando snmpgetnext:
# snmpgetnext -v 2c -c public localhost sysContact.0 SNMPv2-MIB::sysName.0 = STRING: aulas

O comando retorna que a prxima informao depois de sysContact.0 sysName.0, dado do tipo string, e que o valor atual aulas: SNMPv2-MIB::sysName.0 = STRING: aulas. sysName.0 o campo que contem o nome que identifica este host. Mais um exemplo:
# snmpgetnext -v 2c -c public localhost sysName.0 SNMPv2-MIB::sysLocation.0 = STRING: Unknown

O comando retorna que a prxima informao, depois de sysName.0, sysLocation.0, dado do tipo string e que o valor atual desconhecido: SNMPv2MIB::sysLocation.0 = STRING: Unknown. sysLocation.0 o campo com a identificao da localizao do host.

8.5.4. Comando snmpwalk


O comando snmpgetnext til quando desejamos conhecer uma ou duas informaes a partir de determinado ponto da rvore da MIB, mas para percorrermos um galho inteiro ou mesmo toda a rvore, o mesmo se torna invivel. Para isso temos o comando snmpwalk:
# snmpwalk -v 2c -c public localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (88242) 0:14:42.42 SNMPv2-MIB::sysContact.0 = STRING: aulas 74 Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c | Gerenciamento de Redes com SNMP

SNMPv2-MIB::sysName.0 = STRING: aulas SNMPv2-MIB::sysLocation.0 = STRING: Unknown

Neste exemplo percorremos todo o galho system; se o objetivo ler todas as informaes do host, basta executar:
# snmpwalk -v 2c -c public localhost

8.5.5. Comando snmpbulkget


Conforme visto nos captulos anteriores, na verso 2c do protocolo SNMP foram acrescentadas as funes de Bulk* (bulkget, bulkwalk), que ao invs de trazer uma nica informao, trazem um bloco de informaes da tabela na qual a informao est contida, o que torna a execuo dos comandos mais eficiente e consequentemente mais rpida.
# snmpbulkget -v 2c -c public localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (146987) 0:24:29.87 SNMPv2-MIB::sysContact.0 = STRING: aulas SNMPv2-MIB::sysName.0 = STRING: aulas SNMPv2-MIB::sysLocation.0 = STRING: Unknown SNMPv2-MIB::sysORLastChange.0 = Timeticks: (14) 0:00:00.14 SNMPv2-MIB::sysORID.1 = OID: SNMP-MPDMIB::snmpMPDMIBObjects.3.1.1 SNMPv2-MIB::sysORID.2 = OID: SNMP-USER-BASED-SMMIB::usmMIBCompliance SNMPv2-MIB::sysORID.3 = OID: SNMP-FRAMEWORKMIB::snmpFrameworkMIBCompliance

Nesse exemplo, o comando retornou toda a tabela system, mas veja o que acontece ao solicitar uma nica informao, sysLocation, por exemplo:
# snmpbulkget -v 2c -c public localhost sysLocation SNMPv2-MIB::sysLocation.0 = STRING: Unknown SNMPv2-MIB::sysORLastChange.0 = Timeticks: (14) 0:00:00.14 SNMPv2-MIB::sysORID.1 = OID: SNMP-MPDMIB::snmpMPDMIBObjects.3.1.1 SNMPv2-MIB::sysORID.2 = OID: SNMP-USER-BASED-SMMIB::usmMIBCompliance SNMPv2-MIB::sysORID.3 = OID: SNMP-FRAMEWORKMIB::snmpFrameworkMIBCompliance SNMPv2-MIB::sysORID.4 = OID: SNMPv2-MIB::snmpMIB SNMPv2-MIB::sysORID.5 = OID: TCP-MIB::tcpMIB SNMPv2-MIB::sysORID.6 = OID: IP-MIB::ip SNMPv2-MIB::sysORID.7 = OID: UDP-MIB::udpMIB SNMPv2-MIB::sysORID.8 = OID: SNMP-VIEW-BASED-ACMMIB::vacmBasicGroup Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c 75

O bloco de informaes comeou na linha que continha a informao solicitada sysLocation.0, e foi at sysORID.8, ao contrrio da execuo anterior, que foi at sysORID.3.

8.5.6. Comando snmpbulkwalk


Ao executarmos o comando snmpbulkwalk, o resultado ser o mesmo da execuo do snmpwalk:
# snmpbulkwalk -v 2c -c public localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (199795) 0:33:17.95 SNMPv2-MIB::sysContact.0 = STRING: aulas SNMPv2-MIB::sysName.0 = STRING: aulas SNMPv2-MIB::sysLocation.0 = STRING: Unknown

Entretanto, o tempo de resposta e o consumo de recursos da mquina so muito menores:


# time snmpwalk -v 2c -c public localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10 real 0m0.623s user 0m0.111s sys 0m0.192s

# time snmpbulkwalk -v 2c -c public localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10 real 0m0.348s user 0m0.112s sys 0m0.114s

76

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c | Gerenciamento de Redes com SNMP

8.5.7. Informaes Adicionais


Vale a pena lembrar que esses comandos no so compatveis com a verso 1 do protocolo SNMP:
# snmpbulkget -v 1 -c public localhost system snmpbulkget: Cannot send V2 PDU on V1 session (Sub-id not found: (top) -> system)

# snmpbulkwalk -v 1 -c public localhost system snmpbulkwalk: Cannot send V2 PDU on V1 session (Sub-id not found: (top) -> system)

Mas e o que vem antes da informao: SNMPv2-MIB::, IF-MIB::, DISMANEVENT-MIB::?. Esta informao nos diz quem foi a MIB que respondeu aquela solicitao. Lembre-se: se eu no possuir a MIB do equipamento do qual estou solicitando as informaes, poderei ler o dado se souber a OID do objeto, mas no vou ter condies de interpreta-lo. Por exemplo:
# snmpget -v 2c -c public localhost .1.3.6.1.2.1.2.2.1.2.1 IF-MIB::ifDescr.1 = STRING: lo

O OID .1.3.6.1.2.1.2.2.1.2.1 representa o objeto ifDescr.1. Podemos observar acima que a resposta foi a mesma da execuo anterior; agora veja o que acontece se eu no possuir a MIB:
# snmpget -v 2c -c public localhost .1.3.6.1.2.1.2.2.1.2.1 SNMPv2-SMI::mib-2.2.2.1.2.1 = STRING: "lo"

Obtivemos a resposta STRING: "lo", mas que dado esse? Fica muito difcil identificar, j se eu possuir a MIB, receberei a resposta ifDescr.1 = STRING: lo, muito mais fcil de identificar o que esse objeto. Alm disso, aprenderemos um comando que consulta o objeto na MIB e nos traz a descrio desse objeto, que nesse caso seria:
A textual string containing information about the interface. This string should include the name of the manufacturer, the product name and the version of the interface hardware/software."

Por isso to importante possuir uma cpia da MIB de todos os equipamentos que voc deseja monitorar atravs do seu servidor de gerenciamento (Estao de gerenciamento).

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c

77

78

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v1 e v2c | Gerenciamento de Redes com SNMP

9. Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3


A verso 3 do protocolo SNMP focada em melhorias de segurana. Conforme visto anteriormente, na verso 3 foram adotados: USM - User-based Security Model: Modelo de Segurana Baseada em Usurios; VACM - View-based Access Control Model: Modelo de controle de acesso baseado em vises; Configurao dinmica de agentes SNMP utilizando comandos SNMP.

9.1.USM
At a verso 2 do protocolo SNMP, o controle de acesso era baseado em comunidades(communities) como public, private. Este um sistema de segurana muito frgil e limitado, pois se algum descobre o nome da comunidade, tem acesso total ao host, ainda que ele esteja configurado apenas para leitura. Disponibilizar essas informaes a uma pessoa mal intencionada o mesmo que deix-la visitar sua rede e realizar anotaes, e posteriormente montar o plano de ataque sem pressa alguma. A partir do SNMPv3, os usurios e suas respectivas senhas devem ser cadastrados na base de dados SNMP, sendo que esses dados so salvos criptografados. 9.2. VACM Os usurios so colocados em grupos. So criadas views que representam partes da rvore SNMP, semelhantes s views dos bancos de dados, ou compartilhamentos de diretrios em servidores de arquivos. A view o recurso que desejamos disponibilizar, e por fim permisses so dadas para os grupos acessarem as views.

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3

79

9.3.Modelo de Permisses VACM


Este esquema demonstra como esse processo estruturado no arquivo de configurao (snmpd.conf):

Figura 41 - snmpd.conf de acordo com o Modelo VACM

O primeiro passo compartilhar os recursos, ou seja, definir as views:


view view view nome demoWrite demoRead tipo included included sub-rvore .1.3.6.1.4.1.2021.14.1.1 .1.3.6.1.4.1.2021.14.1.1 mscara

Neste caso, estamos definindo duas views, a view demoWrite e a view demoRead, e estamos incluindo a informao: .1.3.6.1.4.1.2021.14.1.1 (.iso.org.dod.internet.private.enterprises.ucdavis.ucdDemoMIB.ucdDemoMIBObjects. ucdDemoPublic); este o recurso que estamos disponibilizando. Fazendo uma analogia com o servidor de arquivos, como se existissem dois nomes de compartilhamento diferentes para o mesmo diretrio. Esse segundo passo opcional, pois podemos ter um host exclusivamente SNMP v3 ou um host compatvel com SNMP v1, v2c e v3. Nesse caso queremos um host compatvel com todas as verses, e por isso vamos informar ao servidor que quando ele receber uma solicitao em nome de uma comunidade, ele vai transformar esse nome de comunidade em um nome de usurio, essa linha faz este mapeamento:
com2sec com2sec nome v2cUser origem default comunidade demopublic

Essa linha informa que toda vez que uma solicitao v1 ou v2c for realizada de qualquer endereo IP, por isso a palavra default, com a comunidade demopublic, o servidor deve interpretar isso como uma solicitao do usurio v2cuser.

80

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

O prximo passo colocar os usurios existentes em grupos:


group group nome demogroup modelo v2c segurana v2cUser

Essa linha indica que o usurio v2cUser ser membro do grupo demogroup, e que esse grupo s responde a solicitaes da verso 2c do protocolo SNMP. Por ltimo, vamos definir qual a permisso do grupo no recurso compartilhado, exatamente como fazemos no compartilhamento de diretrios:
access nome contexto leitura escrita notificao access demogroup demoRead demoWrite none modelo any nvel noauth prefixo prefix

Essa linha indica que o grupo demogroup em qualquer contexto ( ), recebendo solicitaes de qualquer verso do protocolo, pois na linha anterior j foram definidas as verses que ele vai responder, com nvel de autenticao noauth e com prefixo do tipo prefix, possui direito de leitura na view demoRead e escrita na view demoWrite, e que no enviar notificaes (Traps) para nenhum servidor.

9.4.Configurao Bsica de um Agente SNMP v3 compatvel com SNMP v1/v2c


Como j dito, podemos ter um host configurado para trabalhar com o SNMP v3, mas mantendo a compatibilidade com as verses 1 e 2c. Exemplo:
# cat snmpd.conf # /etc/snmp/snmpd.conf compativel com v1 e v2c (snmpd.conf.2) # # view name inc/excl tree mask view all included .1 80 #com2sec com2sec com2sec #group group group group group user readonly readwrite name compat compat compat1 compat1 source(IP,host...) default default v1/v2c/usm v1 v2c v1 v2c community public private

user readonly readonly readwrite readwrite level prefx

#access user write notify access compat noauth exact all access compat1 noauth exact all read

context any/v1/v2c/usm "" none "" all any none any none

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3

81

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

9.4.1. Disponibilizando os recursos


9.4.1.1. Seo View A primeira seo a ser configurada a das "views", ou seja, partes da rvore de OIDs que podero ser visualizadas, e possui o seguinte formato:
view nome included/excluded parte_da_rvore_MIB mscara

Por exemplo:
view all included .1 80

9.4.1.2. Seo com2sec A segunda seo trata do processo de associao entre as comunidades e os nveis de acesso so realizados atravs das linhas com2sec, e possui o seguinte formato:
com2sec "security name" origem_da_requisio community

Por exemplo:
com2sec com2sec readonly readwrite default default public private

9.4.1.3. Seo Group O prximo passo realizar a associao dos grupos de acessos verso do protocolo snmp e a um "security name", definindo acessos a informaes diferentes dependendo da verso do protocolo utilizado. Estas linhas possuem o seguinte formato:
group grupo verso_do_protocolo security_name

Por exemplo:
group group group group compat compat compat1 compat1 v1 v2c v1 v2c readonly readonly readwrite readwrite

9.4.1.4. Seo Access Finalmente devem-se aplicar as permisses (visualizar/alterar) nas views pelos grupos. A configurao padro ir permitir que compat possa visualizar qualquer configurao, enquanto compat1 poder visualizar e alterar qualquer configurao. Possui o seguinte formato:
access prefixo read usurio write contexto notify verso_do_protocolo level

82

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

Por Exemplo:
access all access exact all exact compat none compat1 all "" none "" none any any noauth noauth

9.4.1.5.

Compreendendo os Parmetros

9.4.1.5.1. Seo View View: Comando para definir uma nova view; Name: Nome da view; Included/Excluded: Partes da rvore MIB que sero includas ou excludas na view; Tree: As informaes referentes opo anterior, o que eu estou incluindo ou excluindo da view; posso, por exemplo, excluir a rvore toda (.1) e depois disponibilizar apenas galhos da rvore, como por exemplo, as informaes referentes ao protocolo IP (.iso.org.dod.internet.mgmt.mib2.ip). Nesse caso essa view s apresentar essas informaes; Mask: Mscara no formato hexadecimal; permite criar filtros avanados dentro do galho disponibilizado. 9.4.1.5.2. Seo Com2sec: Com2sec: Comando para definir uma nova associao entre nome de comunidade (v1/v2c) e nvel de acesso (v3); Name: Nome do usurio; Source: Origem da requisio, indica a mquina que pode realizar requisies nesse host. Pode ser informado no formato ip/prefixo ou pode-se utilizar a palavra "default", que indica qualquer origem. Community: Nome da comunidade no modelo v1/v2c; esse nome ser passado no momento da requisio. 9.4.1.5.3. Seo Group: Group: Comando para definir um novo grupo; Name: Nome do grupo; Model: Verso do protocolo que o host aceita ao receber requisies: o Qualquer verso: any; o Requisies v1: v1; o Requisies v2c: v2c; o Requisies v3: usm. User: Nome do usurio que pertence ao grupo. 9.4.1.5.4. Seo Access: Access: Comando para definir um novo acesso; Group: Nome do grupo ao qual ser liberado acesso;

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3

83

Context: Contexto ou escopo; uma maneira de se criar filtros de acesso para determinadas situaes. Pode ser contexto em um dispositivo, contexto em um conjunto de dispositivos, etc. Por exemplo: o Ler as informaes de espao em disco de todos os meus dispositivos; o Ler as informaes de trfego de portas do switch1; o Ler as informaes de trfego de rede de entrada da porta 24 (... ifTable.ifEntry.ifInOctets.24 ) do switch 2. Security Model: Verso do protocolo que o host aceita ao receber requisies: o Qualquer verso: any; o Requisies v1: v1; o Requisies v2c: v2c; o Requisies v3: usm. Level: Nvel de segurana da autenticao: o NoAuth: Sem autenticao; o Auth: Com autenticao; o Priv: Autenticao com Criptografia. Prefix: Define o que ser analisado no momento da requisio: o Exact: A correspondncia exata de prefixo e contexto; o Prefix: Apenas o prefixo, que o OID numrico ou identificao do objeto como, por exemplo, sysName. Read: Qual view o grupo tem direito de leitura; Write: Qual view o grupo tem direito de escrita; Notify: Qual host receber as notificaes em caso de situaes anormais (Traps).

9.5.Acessando um Agente SNMP v3 compatvel com SNMP v1/v2c:


# snmpget -v 1 -c public localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: aulas

# snmpset -v 2c -c private localhost sysContact.0 s Curso SNMPv2-MIB::sysContact.0 = STRING: Curso

# snmpgetnext -v 1 -c public localhost sysContact.0 SNMPv2-MIB::sysName.0 = STRING: aulas

# snmpwalk -v 2c -c public localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10

84

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (12017) 0:02:00.17 SNMPv2-MIB::sysContact.0 = STRING: Curso SNMPv2-MIB::sysName.0 = STRING: aulas SNMPv2-MIB::sysLocation.0 = STRING: Unknown

# snmpbulkget -v 2c -c public localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (12831) 0:02:08.31 SNMPv2-MIB::sysContact.0 = STRING: Curso SNMPv2-MIB::sysName.0 = STRING: aulas SNMPv2-MIB::sysLocation.0 = STRING: Unknown SNMPv2-MIB::sysORLastChange.0 = Timeticks: (24) 0:00:00.24 SNMPv2-MIB::sysORID.1 = OID: SNMP-MPDMIB::snmpMPDMIBObjects.3.1.1 SNMPv2-MIB::sysORID.2 = OID: SNMP-USER-BASED-SMMIB::usmMIBCompliance SNMPv2-MIB::sysORID.3 = OID: SNMP-FRAMEWORKMIB::snmpFrameworkMIBCompliance

Como pode ser observado realizamos vrias requisies v1 e v2c, utilizando tanto a comunidade public quanto a private e o host respondeu perfeitamente s requisies, ou seja, podemos ter um host configurado para SNMP v3, mas mantendo a compatibilidade com as verses anteriores se isso for uma necessidade do ambiente.

9.6.Configurao inicial de um Agente exclusivamente v3


Como abordado no inicio do artigo, o SNMP v3 focado em segurana, por isso importante trabalhar exclusivamente com a verso 3, sempre que isso for possvel no seu ambiente.

9.6.1. Criar o usurio inicial com permisso de escrita:


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 inicial (snmpd.conf.3) # # Declarando um usurio Inicial com permisso de escrita rwuser initial # Criando o usurio na base do snmp #IMPORTANTE: Esta linha deve ser apagada aps a adio dos novos usurios createUser initial MD5 setup_passphrase DES

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 85

Os usurios criptografados so armazenados no arquivo /var/lib/netsnmp/snmpd.conf. Abaixo, seguem as diferenas entre o arquivo antes e depois da criao do usurio initial. NUNCA EDITE ESSE ARQUIVO! /var/lib/net-snmp/snmpd.conf Antes da adio do usurio Initial:
psyscontact aulas setserialno 2003046206 engineBoots 13

/var/lib/net-snmp/snmpd.conf Aps adio do usurio Initial:


usmUser 1 3 0x80001f888056bd9740f0601d4f 0x696e697469616c00 0x696e697469616c00 NULL .1.3.6.1.6.3.10.1.1.2 0xa7b4e95eaa45873c69a0815fc1736d31 .1.3.6.1.6.3.10.1.2.2 0xa7b4e95eaa45873c69a0815fc1736d31 "" psyscontact Curso setserialno 2003046207 engineBoots 14

Podemos observar a linha que contem as informaes referentes ao usurio initial, devidamente criptografada:
usmUser 1 3 0x80001f888056bd9740f0601d4f 0x696e697469616c00 0x696e697469616c00 NULL .1.3.6.1.6.3.10.1.1.2 0xa7b4e95eaa45873c69a0815fc1736d31 .1.3.6.1.6.3.10.1.2.2 0xa7b4e95eaa45873c69a0815fc1736d31 ""

O serial alterado:
setserialno 2003046207

E o nmero de vezes que o servio foi reinicializado:


engineBoots 14

9.6.2. Criar os usurios adicionais:


# snmpusm -v 3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A setup_passphrase localhost create user1 initial User successfully created.

# snmpusm -v 3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A setup_passphrase localhost create user2 initial User successfully created.

# snmpusm -v 3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A setup_passphrase localhost create user3 initial User successfully created.

86

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

9.6.2.1. Parmetros: snmpusm: Comando para criar e manipular usurios; -v 3: Verso do protocolo SNMP; -u initial: -u (User) initial, nome do usurio com permisso de escrita; -n "": Contexto; -x DES: Tipo de criptografia usada na senha (DES ou AES) protocolo usado na privacidade; -l authNoPriv: Nvel de segurana na autenticao, so trs nveis: o noAuthNoPriv: Sem autenticao e sem privacidade; o authNoPriv: Com autenticao, sem privacidade; o authPriv: Com autenticao e privacidade.
For privacy, the Security Model defines what portion of the message is encrypted. IEEE - rfc3411

-a MD5: Tipo de Hash utilizado na senha (MD5 ou SHA); -A: A senha ser hasheada; ser criado um hash da senha; setup_passphrase: Senha do usurio initial; localhost: Nome DNS ou IP do Servidor; create user1 initial: Criar o usurio user1, clonando de initial; clona inclusive a senha.

9.6.3. Alterar a senha dos usurios:


# snmpusm -v 3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A setup_passphrase localhost passwd setup_passphrase senhateste user1 SNMPv3 Key(s) successfully changed.

# snmpusm -v 3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A setup_passphrase localhost passwd setup_passphrase senhateste2 user2 SNMPv3 Key(s) successfully changed.

# snmpusm -v 3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A setup_passphrase localhost passwd setup_passphrase senhateste3 user3 SNMPv3 Key(s) successfully changed.

9.6.3.1. Parmetros: passwd: Comando para alterar a senha; setup_passphrase: Senha atual do usurio user1; senhateste user1: Nova senha para o usurio user1, com mnimo de 8 caracteres.

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3

87

/var/lib/net-snmp/snmpd.conf Aps adio dos usurios user2, user3 e user4:


usmUser 1 3 0x80001f888056bd9740f0601d4f 0x757365723100 0x757365723100 NULL .1.3.6.1.6.3.10.1.1.2 0x90d09d5d787216facf896a3540b462c9 .1.3.6.1.6.3.10.1.2.2 0x90d09d5d787216facf896a3540b462c9 0x usmUser 1 3 0x80001f888056bd9740f0601d4f 0x757365723200 0x757365723200 NULL .1.3.6.1.6.3.10.1.1.2 0xf972172c26d4928dd2035e6c8d713d6f .1.3.6.1.6.3.10.1.2.2 0xf972172c26d4928dd2035e6c8d713d6f 0x usmUser 1 3 0x80001f888056bd9740f0601d4f 0x757365723300 0x757365723300 NULL .1.3.6.1.6.3.10.1.1.2 0x4fb0c593d94929128c47e7809d88c4d6 .1.3.6.1.6.3.10.1.2.2 0x4fb0c593d94929128c47e7809d88c4d6 0x usmUser 1 3 0x80001f888056bd9740f0601d4f 0x696e697469616c00 0x696e697469616c00 NULL .1.3.6.1.6.3.10.1.1.2 0xa7b4e95eaa45873c69a0815fc1736d31 .1.3.6.1.6.3.10.1.2.2 0xa7b4e95eaa45873c69a0815fc1736d31 0x psyscontact Curso setserialno 2003046208 engineBoots 15

Podemos observar as linhas que contem as informaes referentes aos novos usurios devidamente criptografada:
usmUser 1 3 0x80001f888056bd9740f0601d4f 0x757365723100 0x757365723100 NULL .1.3.6.1.6.3.10.1.1.2 0x90d09d5d787216facf896a3540b462c9 .1.3.6.1.6.3.10.1.2.2 0x90d09d5d787216facf896a3540b462c9 0x usmUser 1 3 0x80001f888056bd9740f0601d4f 0x757365723200 0x757365723200 NULL .1.3.6.1.6.3.10.1.1.2 0xf972172c26d4928dd2035e6c8d713d6f .1.3.6.1.6.3.10.1.2.2 0xf972172c26d4928dd2035e6c8d713d6f 0x usmUser 1 3 0x80001f888056bd9740f0601d4f 0x757365723300 0x757365723300 NULL .1.3.6.1.6.3.10.1.1.2 0x4fb0c593d94929128c47e7809d88c4d6 .1.3.6.1.6.3.10.1.2.2 0x4fb0c593d94929128c47e7809d88c4d6 0x

O serial alterado:
setserialno 2003046208

E o nmero de vezes que o servio foi reinicializado:


engineBoots 15

88

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

9.6.4. snmpd.conf v3 bsico:


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 bsico (snmpd.conf.4) # # mantive o usurio initial com permisso de escrita rwuser initial # Dei permisso de leitura aos 3 usurios # recm-criados. rouser user1 rouser user2 rouser user3

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

9.6.5. Acessando um Agente SNMP v3:


# snmpget -v 3 -u user3 -n "" -l authNoPriv -a MD5 -A senhateste3 -x DES localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: Curso

# snmpset -v 3 -u initial -n "" -l authNoPriv -a MD5 -A setup_passphrase -x DES localhost sysContact.0 s "Andr Do" SNMPv2-MIB::sysContact.0 = STRING: Andr Do

# snmpgetnext -v 3 -u initial -n "" -l authNoPriv -a MD5 -A setup_passphrase -x DES localhost sysContact.0 SNMPv2-MIB::sysName.0 = STRING: aulas

# snmpbulkget -v 3 -u initial -n "" -l authNoPriv -a MD5 -A setup_passphrase -x DES localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (19793) 0:03:17.93 SNMPv2-MIB::sysContact.0 = STRING: Andr Do SNMPv2-MIB::sysName.0 = STRING: aulas SNMPv2-MIB::sysLocation.0 = STRING: Unknown SNMPv2-MIB::sysORLastChange.0 = Timeticks: (19) 0:00:00.19 SNMPv2-MIB::sysORID.1 = OID: SNMP-MPDMIB::snmpMPDMIBObjects.3.1.1 SNMPv2-MIB::sysORID.2 = OID: SNMP-USER-BASED-SMMIB::usmMIBCompliance Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 89

SNMPv2-MIB::sysORID.3 = OID: SNMP-FRAMEWORKMIB::snmpFrameworkMIBCompliance

9.6.6. snmpd.conf v3 com VACM devidamente configurado:


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 devidamente configurado (snmpd.conf.5) # Definir as Views # view nome incl/excl. sub-rvore mscara View all included .1 80 view ip included iso.org.dod.internet.mgmt.mib-2.ip # Agrupar os usurios #group nome group rogroup1 group rogroup1 group rogroup2 group rwgroup # Atribuir #access coincidir ler access exact ip access exact all access exact all

modelo_de_segurana usm usm usm usm

usurio user1 user2 user3 initial

Permisses aos grupos grupo contexto alterar notificar rogroup2 none none rogroup1 none none rwgroup all none

mod_seg any any any

nvel_seg noauth noauth noauth

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

9.6.6.1.

Acessando um Agent SNMP v3:

# snmpget -v 3 -u user3 -n "" -l authNoPriv -a MD5 -A senhateste3 -x DES localhost sysContact.0 SNMPv2-MIB::sysContact.0 = No Such Object available on this agent at this OID

Esse erro ocorre porque o usurio user3 faz parte do grupo rogroup2, cuja nica permisso ler a view ip, que disponibiliza o galho .iso.org.dod.internet.mgmt.mib-2.ip, no qual no existe a informao sysContact.0.
# snmpget -v 3 -u user2 -n "" -l authNoPriv -a MD5 -A senhateste2 -x DES localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: Andr Do

O usurio user2 faz parte do grupo rogroup1, cuja permisso de leitura na view all, que disponibiliza a raiz inteira da MIB (.1). Portanto, ele pode ler a informao sysContact.0.

90

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

# snmpset -v 3 -u user2 -n "" -l authNoPriv -a MD5 -A setup_passphrase -x DES localhost sysLocation.0 s Curso snmpset: Authentication failure (incorrect password, community or key) (Sub-id not found: (top) -> sysLocation)

Esse erro ocorre porque o user2 no possui privilgios de escrita na view all.
# snmpset -v 3 -u initial -n "" -l authNoPriv -a MD5 -A setup_passphrase -x DES localhost sysLocation.0 s Curso SNMPv2-MIB::sysLocation.0 = STRING: Curso

O usurio initial faz parte do grupo rwgroup, cuja permisso de leitura e escrita na view all, que disponibiliza a raiz inteira da MIB (.1). Portanto ele pode alterar a informao sysLocation.0.
# snmpbulkwalk -v 3 -u user3 -n "" -l authNoPriv -a MD5 -A senhateste3 -x DES localhost IP-MIB::ipForwarding.0 = INTEGER: notForwarding(2) IP-MIB::ipDefaultTTL.0 = INTEGER: 64 IP-MIB::ipInReceives.0 = Counter32: 6946 IP-MIB::ipInHdrErrors.0 = Counter32: 0 IP-MIB::ipInAddrErrors.0 = Counter32: 7 IP-MIB::ipForwDatagrams.0 = Counter32: 0 ... IP-MIB::ipDefaultRouterLifetime.ipv4."192.168.1.1".2 = Gauge32: 4294967295 seconds IP-MIB::ipDefaultRouterPreference.ipv4."192.168.1.1".2 = INTEGER: medium(0) IP-MIB::ipDefaultRouterPreference.ipv4."192.168.1.1".2 = No more variables left in this MIB View (It is past the end of the MIB tree)

O usurio user3 faz parte do grupo rogroup2, cuja nica permisso ler a view ip, que disponibiliza o galho .iso.org.dod.internet.mgmt.mib-2.ip. Por isso todas as informaes apresentadas so da MIB IP-MIB. Outro detalhe interessante a mensagem no final da execuo do comando No more variables left in this MIB View (It is past the end of the MIB tree). Todas as vezes que essa mensagem for apresentada no significa que voc no chegou ao fim da MIB, significa que voc chegou ao fim da sua permisso. Se no for essa a sua inteno, preciso revisar a configurao do host e alterar o que for necessrio.

9.7.Configurao inicial de um Agente exclusivamente v3 com Autenticao e Privacidade


Nesse captulo veremos como criar um usurio SNMP v3 com o nvel mximo de segurana. Se o seu ambiente permite a configurao exclusiva da verso 3, no tem porque no aproveitar ao mximo os recursos oferecidos por ela.

9.7.1. Criar o usurio inicial com permisso de escrita:


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 inicial com autenticao e privacidade (snmpd.conf.6) Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 91

# # Declarando um usurio Inicial com permisso de escrita rwuser initial # Criando o usurio na base do snmp #IMPORTANTE: Esta linha deve ser apagada aps a adio dos novos usurios createUser initial MD5 setup_passphrase DES setup_passkey

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

9.7.2. Criar os usurios adicionais:


# snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost create user1 initial User successfully created.

# snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost create user2 initial User successfully created.

# snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost create user3 initial User successfully created.

9.7.2.1. Parmetros: snmpusm: Comando para criar e manipular usurios; -v 3: Verso do protocolo SNMP; -u initial: -u (User) initial, nome do usurio com permisso de escrita; -n "": Contexto; -x DES: Tipo de criptografia usada na senha (DES ou AES) protocolo usado na privacidade; -X setup_passkey: Chave criptogrfica; -l authPriv: Nvel de segurana na autenticao; so trs nveis: o noAuthNoPriv: Sem autenticao e sem privacidade; o authNoPriv: Com autenticao, sem privacidade; o authPriv: Com autenticao e privacidade.
For privacy, the Security Model defines what portion of the message is encrypted. IEEE - rfc3411


92

-a MD5: Tipo de Hash utilizado na senha (MD5 ou SHA); -A: A senha ser hasheada; ser criado um hash da senha; setup_passphrase: Senha do usurio initial; localhost: Nome DNS ou IP do Servidor; create user1 initial: Criar o usurio user1; clonando de initial, clona inclusive a senha.

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

9.7.2.2.

Outro exemplo:

# snmpusm -v3 -u initial -n "" -l authPriv -x DES -X 123 -a MD5 A 234 localhost create user1 initial

9.7.2.2.1. Parmetros: -x DES -X 123 -a MD5 -A 234: Criptografia do tipo DES (-x), chave criptogrfica 123 (-X), hash do tipo MD5 (-a), chave criptogrfica 234 (-A). Veja este trecho do man snmpcmd:
-a authProtocol Set the authentication protocol (MD5 or SHA) used for authenticated SNMPv3 messages. Overrides the defAuthType token in the snmp.conf file. -A authPassword Set the authentication pass phrase used for authenticated SNMPv3 messages. Overrides the defAuthPassphrase token in the snmp.conf file. It is insecure to specify pass phrases on the command line, see snmp.conf(5). -x privProtocol Set the privacy protocol (DES or AES) used for encrypted SNMPv3 messages. Overrides the defPrivType token in the snmp.conf file. This option is only valid if the Net-SNMP software was build to use OpenSSL. -X privPassword Set the privacy pass phrase used for encrypted SNMPv3 messages. Overrides the defPrivPassphrase token in the snmp.conf file. It is insecure to specify pass phrases on the command line, see snmp.conf(5).

9.7.3. Alterar a senha dos usurios:


# snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost -Ca passwd setup_passphrase senhateste user1 SNMPv3 Key(s) successfully changed.

# snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost -Ca passwd setup_passphrase senhateste2 user2 SNMPv3 Key(s) successfully changed.

# snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost -Ca passwd setup_passphrase senhateste3 user3 SNMPv3 Key(s) successfully changed.

9.7.3.1. Parmetros: -Ca: Alterar a chave de autenticao; passwd: Comando para alterar a senha; setup_passphrase: Senha atual do usurio user1;
Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 93

senhateste user1: Nova senha para o usurio user1, com mnimo de 8 caracteres.

9.7.4. Alterar a chave dos usurios:


# snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost -Cx passwd setup_passkey senha_key user1 SNMPv3 Key(s) successfully changed. # snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost -Cx passwd setup_passkey senha_key2 user2 SNMPv3 Key(s) successfully changed. # snmpusm -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost -Cx passwd setup_passkey senha_key3 user3 SNMPv3 Key(s) successfully changed.

9.7.4.1. Parmetros: -Cx: Alterar a chave de privacidade; passwd: Comando para alterar a senha; setup_passkey: Chave atual do usurio user1; senha_key user1: Nova chave para o usurio user1, com mnimo de 8 caracteres.

9.7.5. snmpd.conf v3 bsico:


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 bsico com autenticao e privacidade (snmpd.conf.7) # # mantive o usurio initial com permisso de escrita rwuser initial # Dei permisso de leitura aos 3 usurios # recm-criados. rouser user1 rouser user2 rouser user3

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

94

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

9.7.6. Acessando um Agente SNMP v3:


# snmpget -v 3 -u user1 -n "" -x DES -X senha_key -l authPriv -a MD5 -A senhateste localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: Curso

# snmpset -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost sysContact.0 s "Andr Do" SNMPv2-MIB::sysContact.0 = STRING: Andr Do

# snmpgetnext -v 3 -u user3 -n "" -x DES -X senha_key3 -l authPriv -a MD5 -A senhateste3 localhost sysContact.0 SNMPv2-MIB::sysName.0 = STRING: aulas

# snmpbulkget -v 3 -u user2 -n "" -x DES -X senha_key2 -l authPriv -a MD5 -A senhateste2 localhost system SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas 2.6.3271.29.1.el6.i686 #1 SMP Mon Jun 27 18:07:00 BST 2011 i686 SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10 DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (19793) 0:03:17.93 SNMPv2-MIB::sysContact.0 = STRING: Andr Do SNMPv2-MIB::sysName.0 = STRING: aulas SNMPv2-MIB::sysLocation.0 = STRING: Unknown SNMPv2-MIB::sysORLastChange.0 = Timeticks: (19) 0:00:00.19 SNMPv2-MIB::sysORID.1 = OID: SNMP-MPDMIB::snmpMPDMIBObjects.3.1.1 SNMPv2-MIB::sysORID.2 = OID: SNMP-USER-BASED-SMMIB::usmMIBCompliance SNMPv2-MIB::sysORID.3 = OID: SNMP-FRAMEWORKMIB::snmpFrameworkMIBCompliance

9.7.7. snmpd.conf v3 com VACM devidamente configurado:


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 devidamente configurado com autenticao e privacidade (snmpd.conf.8) # Definir as Views # view nome incl/excl. sub-rvore mscara View all included .1 80 view ip included iso.org.dod.internet.mgmt.mib-2.ip # Agrupar os usurios #group nome group rogroup1 group rogroup1 group rogroup2

modelo_de_segurana usm usm usm

usurio user1 user2 user3 95

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3

group # Atribuir #access coincidir ler access exact ip access exact all access exact all

rwgroup

usm mod_seg any any any

initial nvel_seg noauth noauth noauth

Permisses aos grupos grupo contexto alterar notificar rogroup2 none none rogroup1 none none rwgroup all none

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

9.7.7.1.

Acessando um Agent SNMP v3:

# snmpget -v 3 -u user3 -n "" -x DES -X senha_key3 -l authPriv -a MD5 -A senhateste3 localhost sysContact.0 SNMPv2-MIB::sysContact.0 = No Such Object available on this agent at this OID

Esse erro ocorre porque o usurio user3 faz parte do grupo rogroup2, cuja nica permisso ler a view ip, que disponibiliza o galho .iso.org.dod.internet.mgmt.mib-2.ip, no qual no existe a informao sysContact.0.
# snmpget -v 3 -u user2 -n "" -x DES -X senha_key2 -l authPriv -a MD5 -A senhateste2 localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: Andr Do

O usurio user2 faz parte do grupo rogroup1, cuja permisso de leitura na view all, que disponibiliza a raiz inteira da MIB (.1). Portanto, ele pode ler a informao sysContact.0.
# snmpset -v 3 -u user2 -n "" -x DES -X senha_key2 -l authPriv -a MD5 -A senhateste2 localhost sysLocation.0 s Curso Error in packet. Reason: noAccess Failed object: SNMPv2-MIB::sysLocation.0

Esse erro ocorre porque o user2 no possui privilgios de escrita na view all.
# snmpset -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost sysLocation.0 s Curso SNMPv2-MIB::sysLocation.0 = STRING: Curso

O usurio initial faz parte do grupo rwgroup, cuja permisso de leitura e escrita na view all, que disponibiliza a raiz inteira da MIB (.1). Portanto, ele pode alterar a informao sysLocation.0.
# snmpbulkwalk -v 3 -u thPriv -a MD5 -A senhateste3 IP-MIB::ipForwarding.0 IP-MIB::ipDefaultTTL.0 96 user3 -n "" -x DES -X senha_key3 -l aulocalhost = INTEGER: notForwarding(2) = INTEGER: 64

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

IP-MIB::ipInReceives.0 = Counter32: 6946 IP-MIB::ipInHdrErrors.0 = Counter32: 0 IP-MIB::ipInAddrErrors.0 = Counter32: 7 IP-MIB::ipForwDatagrams.0 = Counter32: 0 ... IP-MIB::ipDefaultRouterLifetime.ipv4."192.168.1.1".2 = Gauge32: 4294967295 seconds IP-MIB::ipDefaultRouterPreference.ipv4."192.168.1.1".2 = INTEGER: medium(0) IP-MIB::ipDefaultRouterPreference.ipv4."192.168.1.1".2 = No more variables left in this MIB View (It is past the end of the MIB tree)

O usurio user3 faz parte do grupo rogroup2, cuja nica permisso ler a view ip, que disponibiliza o galho .iso.org.dod.internet.mgmt.mib-2.ip, e por isso todas as informaes apresentadas so da MIB IP-MIB.

9.8.Segurana em SNMP V3:


Estou usando apenas SNMP v3 na minha rede, por isso estou seguro Ser mesmo? O SNMP v3 s garante a segurana quando usamos o nvel mximo de autenticidade e privacidade (authPriv), pois nesse modelo a senha e os dados so transmitidos na rede de forma criptografada.

9.8.1. Requisio SNMP v2

Figura 302 - Requisio SNMP v2

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3

97

Figura 313 - Trfego SNMP v2 capturado Dados em texto plano

9.8.2. Requisio SNMP v3com Autenticao

Figura 44 - Requisio SNMP v3 com Autenticao

98

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

Figura 45 - Trfego SNMP v3 capturado Dados em texto plano

9.8.3. Requisio SNMP v3com Autenticao e Privacidade

Figura 46 - Requisio SNMP v3 com Autenticao e Privacidade

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3

99

Figura 47 - Trfego SNMP v3 capturado Dados Criptografados

100

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 | Gerenciamento de Redes com SNMP

10.Monitorando Recursos do Sistema


Essas informaes so compatveis com todas as verses do protocolo SNMP, no entanto, vou continuar com a verso 3 do protocolo SNMP, sempre acrescentando a nova informao ao final do arquivo anterior.

10.1.

Informaes do Sistema

# cat snmpd.conf # /etc/snmp/snmpd.conf v3 devidamente configurado Informaes do Sistema (snmpd.conf.9) ... # local syslocation Curso # Contato syscontact Andr Do andredeo@gmail.com # Descricao sysdescr Computador do curso

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

10.1.1. Acessando o Agent SNMP para leitura de informaes do sistema


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost sysLocation.0 SNMPv2-MIB::sysLocation.0 = STRING: Curso

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: Andr Do andredeo@gmail.com

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost sysDescr.0 SNMPv2-MIB::sysDescr.0 = STRING: Computador do Curso

10.2.

Monitoramento de Processos
v3 devidamente configurado Monitoramento

# cat snmpd.conf # /etc/snmp/snmpd.conf de Processos (snmpd.conf.10) ... # proc processo proc httpd proc mysqld proc postfix

mximo 9 3

mnimo 5

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema 101

As sadas estaro abaixo do OID: .1.3.6.1.4.1.2021.2.1 enterprises.ucdavis.prTable.prEntry (), sendo elas: .1.X prIndex = INTEGER: 1 .2.X prNames = STRING: httpd .3.X prMin = INTEGER: 5 .4.X prMax = INTEGER: 9 .5.X prCount = INTEGER: 10 .100.X prErrorFlag = INTEGER: error(1) .101.X prErrMessage = STRING: Too many httpd running (# = 10) .102.X prErrFix = INTEGER: noError(0) .103.X prErrFixCmd = STRING:

10.2.1. Acessando o Agent SNMP para leitura de informaes sobre processos


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.1.1 UCD-SNMP-MIB::prIndex.1 = INTEGER: 1

Nmero de ndice do processo 1: 1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.2.1 UCD-SNMP-MIB::prNames.1 = STRING: httpd

Nome do processo 1: httpd


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.3.1 UCD-SNMP-MIB::prMin.1 = INTEGER: 5

Nmero mnimo de processos do processo 1: 5


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.4.1 UCD-SNMP-MIB::prMax.1 = INTEGER: 9

Nmero mximo de processos do processo 1: 9


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.5.1 UCD-SNMP-MIB::prCount.1 = INTEGER: 10

Contagem de processos do processo 1: 10


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.100.1 UCD-SNMP-MIB::prErrorFlag.1 = INTEGER: error(1)

Processo 1 est com flag de erro: error(1)

102

Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.101.1 UCD-SNMP-MIB::prErrMessage.1 = STRING: Too many httpd running (# = 10)

Mensagem de erro do processo 1: Too many httpd running (# = 10)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.102.1 UCD-SNMP-MIB::prErrFix.1 = INTEGER: noError(0)

Executar correes quando ocorrer erro no processo 1: noError(0)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.103.1 UCD-SNMP-MIB::prErrFixCmd.1 = STRING:

Comando a ser executado quando ocorrer erro no processo 1:


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.2.2 UCD-SNMP-MIB::prNames.2 = STRING: mysqld

Nome do processo 2: mysqld


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.3.2 UCD-SNMP-MIB::prMin.2 = INTEGER: 0

Nmero mnimo de processos do processo 2: 0


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.4.2 UCD-SNMP-MIB::prMax.2 = INTEGER: 3

Nmero mximo de processos do processo 2: 3


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.5.2 UCD-SNMP-MIB::prCount.2 = INTEGER: 1

Contagem de processos do processo 2: 1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.2.3 UCD-SNMP-MIB::prNames.3 = STRING: postfix

Nome do processo 3: postfix


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.3.3 UCD-SNMP-MIB::prMin.3 = INTEGER: 0

Nmero mnimo de processos do processo 3: 0


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.4.3 UCD-SNMP-MIB::prMax.3 = INTEGER: 0

Nmero mximo de processos do processo 3: 0


Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema 103

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.2.1.5.3 UCD-SNMP-MIB::prCount.3 = INTEGER: 0

Contagem de processos do processo 3: 0

10.3.

Monitoramento de uso de disco

# cat snmpd.conf # /etc/snmp/snmpd.conf v3 devidamente configurado Monitoramento de uso de disco (snmpd.conf.11) ... #disk Ponto de Montagem Espao/Porcentagem mnima disponvel disk / 90% disk /boot 60000

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

As sadas estaro abaixo do OID: .1.3.6.1.4.1.2021.9.1 enterprises.ucdavis.dskTable.dskEntry (), sendo elas: .1.X dskIndex = INTEGER: 1 .2.X dskPath = STRING: / .3.X dskDevice = STRING: /dev/sda3 .4.X dskMinimum = INTEGER: -1 .5.X dskMinPercent = INTEGER: 90 .6.X dskTotal = INTEGER: 7638904 .7.X dskAvail = INTEGER: 2114148 .8.X dskUsed = INTEGER: 5136712 .9.X dskPercent = INTEGER: 71 .10.X dskPercentNode = INTEGER: 41 .100.X dskErrorFlag = INTEGER: error(1) .101.X dskErrorMsg = less than 90% free (= 71%)

10.3.1. Acessando o Agent SNMP para leitura de informaes sobre o disco


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.1.1 UCD-SNMP-MIB::dskIndex.1 = INTEGER: 1

Nmero de ndice do ponto de montagem 1: 1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.2.1 UCD-SNMP-MIB::dskPath.1 = STRING: /

Ponto de montagem 1: /

104

Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.3.1 UCD-SNMP-MIB::dskDevice.1 = STRING: /dev/sda3

Partio do ponto de montagem 1: /dev/sda3


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.4.1 UCD-SNMP-MIB::dskMinimum.1 = INTEGER: -1

Espao mnimo no ponto de montagem 1: No configurado (-1)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.5.1 UCD-SNMP-MIB::dskMinPercent.1 = INTEGER: 90

Porcentagem mnima no ponto de montagem 1: 90(%)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.6.1 UCD-SNMP-MIB::dskTotal.1 = INTEGER: 7638904

Tamanho do ponto de montagem 1: 7638904


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.7.1 UCD-SNMP-MIB::dskAvail.1 = INTEGER: 2114148

Espao livre no ponto de montagem 1: 2114148


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.8.1 UCD-SNMP-MIB::dskUsed.1 = INTEGER: 5136712

Espao utilizado no ponto de montagem 1: 5136712


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.9.1 UCD-SNMP-MIB::dskPercent.1 = INTEGER: 71

Percentual utilizado no ponto de montagem 1: 71(%)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.10.1 UCD-SNMP-MIB::dskPercentNode.1 = INTEGER: 41

Percentual de inodes usados no ponto de montagem 1: 41(%)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.100.1 UCD-SNMP-MIB::dskErrorFlag.1 = INTEGER: error(1)

Ponto de montagem 1 est com flag de erro: error(1)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.101.1 UCD-SNMP-MIB::dskErrorMsg.1 = STRING: /: less than 90% free (= 71%)

Mensagem de erro no ponto de montagem 1: less than 90% free (= 71%)


Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema 105

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.2.2 UCD-SNMP-MIB::dskPath.2 = STRING: /boot

Ponto de montagem 2: /boot


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.3.2 UCD-SNMP-MIB::dskDevice.2 = STRING: /dev/sda1

Partio do ponto de montagem 2: /dev/sda1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.4.2 UCD-SNMP-MIB::dskMinimum.2 = INTEGER: 50000

Espao mnimo no ponto de montagem 2: 50000


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.9.1.5.2 UCD-SNMP-MIB::dskMinPercent.2 = INTEGER: -1

Porcentagem mnima no ponto de montagem 2: No configurado (-1)

10.4.

Monitoramento de Carga do sistema

# cat snmpd.conf # /etc/snmp/snmpd.conf v3 devidamente configurado Monitoramento de Carga do sistema (snmpd.conf.12) ... #Limite mximo de carga nos ltimos 1min 5min 15min load 1 5 5

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

As sadas estaro abaixo do OID: .1.3.6.1.4.1.2021.10.1 enterprises.ucdavis.dskTable.dskEntry (), sendo elas:


106

.1.1 laIndex = INTEGER: 1 .1.2 laIndex = INTEGER: 2 .1.3 laIndex = INTEGER: 3 .2.1 laNames = STRING: Load-1 .2.2 laNames = STRING: Load-5 .2.3 laNames = STRING: Load-15 .3.1 laLoad = STRING: 3.77 .3.2 laLoad = STRING: 1.39 .3.3 laLoad = STRING: 0.50 .4.1 laConfig = STRING: 1.00 .4.2 laConfig = STRING: 5.00 .4.3 laConfig = STRING: 5.00 .5.1 laLoadInt = INTEGER: 210 .5.2 laLoadInt = INTEGER: 126 .5.3 laLoadInt = INTEGER: 48

Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

1.27)

.6.1 laLoadFloat = Opaque: Float: 1.780000 .6.2 laLoadFloat = Opaque: Float: 1.200000 .6.3 laLoadFloat = Opaque: Float: 0.480000 .100.1 laErrorFlag = INTEGER: error(1) .100.2 laErrorFlag = INTEGER: noError(0) .100.3 laErrorFlag = INTEGER: noError(0) .101.1 laErrMessage = STRING: 1 min Load Average too high (= .101.2 laErrMessage = STRING: .101.3 laErrMessage = STRING:

10.4.1. Acessando o Agent SNMP para leitura de informaes sobre Carga de sistema (Load)
# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.1.1 UCD-SNMP-MIB::laIndex.1 = INTEGER: 1

Nmero de ndice do Load 1: 1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.1.2 UCD-SNMP-MIB::laIndex.2 = INTEGER: 2

Nmero de ndice do Load 2: 2


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.1.3 UCD-SNMP-MIB::laIndex.3 = INTEGER: 3

Nmero de ndice do Load 3: 3


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.2.1 UCD-SNMP-MIB::laNames.1 = STRING: Load-1

Nome do Load 1: Load-1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.2.2 UCD-SNMP-MIB::laNames.2 = STRING: Load-5

Nome do Load 2: Load-5


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.2.3 UCD-SNMP-MIB::laNames.3 = STRING: Load-15

Nome do Load 3: Load-15


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.3.1 UCD-SNMP-MIB::laLoad.1 = STRING: 3.77

Carga do Load 1: 3.77


Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema 107

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.3.2 UCD-SNMP-MIB::laLoad.2 = STRING: 1.39

Carga do Load 2: 1.39


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.3.3 UCD-SNMP-MIB::laLoad.3 = STRING: 0.50

Carga do Load 3: 0.50


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.4.1 UCD-SNMP-MIB::laConfig.1 = STRING: 1.00

Configurao de limite do Load 1: 1.00


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.4.2 UCD-SNMP-MIB::laConfig.2 = STRING: 5.00

Configurao de limite do Load 2: 5.00


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.4.3 UCD-SNMP-MIB::laConfig.3 = STRING: 5.00

Configurao de limite do Load 3: 5.00


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.5.1 UCD-SNMP-MIB::laLoadInt.1 = INTEGER: 210

Converso da leitura do Load 1 para inteiro: 210


The 1, 5 and 15 minute load averages as an integer. This is computed by taking the floating point loadaverage value and multiplying by 100, then converting the value to an integer.

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.5.2 UCD-SNMP-MIB::laLoadInt.2 = INTEGER: 126

Converso da leitura do Load 2 para inteiro: 126


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.5.3 UCD-SNMP-MIB::laLoadInt.3 = INTEGER: 48

Converso da leitura do Load 3 para inteiro: 48


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.6.1 UCD-SNMP-MIB::laLoadFloat.1 = Opaque: Float: 1.780000

Leitura do Load 1 em Float: 1.780000


108 Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

The 1,5 and 15 minute load averages as an opaquely wrapped floating point number.

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.6.2 UCD-SNMP-MIB::laLoadFloat.2 = Opaque: Float: 1.200000

Leitura do Load 2 em Float: 1.200000


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.6.3 UCD-SNMP-MIB::laLoadFloat.3 = Opaque: Float: 0.480000

Leitura do Load 3 em Float: 0.480000


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.100.1 UCD-SNMP-MIB::laErrorFlag.1 = INTEGER: error(1)

Load 1 est com erro: error(1)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.100.2 UCD-SNMP-MIB::laErrorFlag.2 = INTEGER: noError(0)

Load 2 est com erro: noError(0)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.100.3 UCD-SNMP-MIB::laErrorFlag.3 = INTEGER: noError(0)

Load 3 est com erro: noError(0)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.101.1 UCD-SNMP-MIB::laErrMessage.1 = STRING: 1 min Load Average too high (= 1.27)

Mensagem de erro do Load 1: 1 min Load Average too high (= 1.27)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.101.2 UCD-SNMP-MIB::laErrMessage.2 = STRING:

Mensagem de erro do Load 2:


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.10.1.101.3 UCD-SNMP-MIB::laErrMessage.3 = STRING:

Mensagem de erro do Load 3:

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

109

10.5.

Monitoramento de Tamanho de arquivo

# cat snmpd.conf # /etc/snmp/snmpd.conf v3 devidamente configurado Monitoramento de Tamanho de arquivo (snmpd.conf.13) ... # Tamanho do arquivo #file Caminho_do_arquivo tamanho_maximo (kB) file /etc/services 16 file /boot/grub/menu.lst 4

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

As sadas estaro abaixo do OID: .1.3.6.1.4.1.2021.15.1 enterprises.ucdavis.fileTable.fileEntry (), sendo elas: 626kb) .1.X fileIndex = INTEGER: 1 .2.X fileName = STRING: /etc/services .3.X fileSize = INTEGER: 626 kB .4.X fileMax = INTEGER: 16 kB .100.X fileErrorFlag = INTEGER: error(1) .101.X fileErrorMsg = STRING: /etc/services: size exceeds 16kb (=

10.5.1. Acessando o Agent SNMP para leitura de informaes sobre tamanho de arquivo
# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.1.1 UCD-SNMP-MIB::fileIndex.1 = INTEGER: 1

Nmero de ndice do Arquivo 1: 1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.2.1 UCD-SNMP-MIB::fileName.1 = STRING: /etc/services

Nome do Arquivo 1: /etc/services


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.3.1 UCD-SNMP-MIB::fileSize.1 = INTEGER: 626 kB

Tamanho do Arquivo 1: 626 kB


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.4.1 UCD-SNMP-MIB::fileMax.1 = INTEGER: 16 kB

Tamanho Mximo do Arquivo 1: 16 kB

110

Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.100.1 UCD-SNMP-MIB::fileErrorFlag.1 = INTEGER: error(1)

Arquivo 1 est com flag de erro: error(1)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.101.1 UCD-SNMP-MIB::fileErrorMsg.1 = STRING: /etc/services: size exceeds 16kb (= 626kb)

Mensagem de erro do Arquivo 1: /etc/services: size exceeds 16kb (= 626kb)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.1.2 UCD-SNMP-MIB::fileIndex.2 = INTEGER: 2

Nmero de ndice do Arquivo 2: 1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.2.2 UCD-SNMP-MIB::fileName.2 = STRING: /boot/grub/menu.lst

Nome do Arquivo 2: /boot/grub/menu.lst


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.3.2 UCD-SNMP-MIB::fileSize.2 = INTEGER: 1 kB

Tamanho do Arquivo 2: 1 kB
# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.4.2 UCD-SNMP-MIB::fileMax.2 = INTEGER: 4 kB

Tamanho Mximo do Arquivo 2: 4 kB


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.100.2 UCD-SNMP-MIB::fileErrorFlag.2 = INTEGER: noError(0)

Arquivo 2 est com flag de erro: noError(0)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.15.1.101.2 UCD-SNMP-MIB::fileErrorMsg.2 = STRING:

Mensagem de erro do Arquivo 2:

10.6.

Monitoramento utilizando um comando customizado

# cat snmpd.conf # /etc/snmp/snmpd.conf v3 devidamente configurado Monitoramento utilizando um comando customizado (snmpd.conf.14) ... #exec Nome comando Parmetros exec Teste1 /bin/cat /etc/passwd

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

111

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

As sadas estaro abaixo do OID: .1.3.6.1.4.1.2021.8.1 enterprises.ucdavis.extTable.extEntry (), sendo elas: .1.X extIndex = INTEGER: 1 .2.X extNames = STRING: Teste1 .3.X extCommand = STRING: /bin/cat .100.X extResult = INTEGER: 0 .101.X extOutput = STRING: ... 1 linha da sada do comando ... .102.X extErrFix = INTEGER: noError(0) .103.X extErrFixCmd = STRING:

10.6.1. Acessando o Agent SNMP para leitura de informaes com comandos customizados
# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.8.1.1.1 UCD-SNMP-MIB::extIndex.1 = INTEGER: 1

Nmero de ndice do Comando 1: 1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.8.1.2.1 UCD-SNMP-MIB::extNames.1 = STRING: Teste1

Nome do Comando 1: Teste1


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.8.1.3.1 UCD-SNMP-MIB::extCommand.1 = STRING: /bin/cat

Comando 1 sem parmetros: /bin/cat


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.8.1.100.1 UCD-SNMP-MIB::extResult.1 = INTEGER: 0

Cdigo de execuo (exit status) do Comando 1: 0


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.8.1.101.1 UCD-SNMP-MIB::extOutput.1 = STRING: root:x:0:0:root:/root:/bin/bash

Resultado da execuo do Comando 1, exibe apenas a primeira linha: root:x:0:0:root:/root:/bin/bash

112

Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.8.1.102.1 UCD-SNMP-MIB::extErrFix.1 = INTEGER: noError(0)

Executar comando para corrigir erros, se Comando 1 apresentar erro: noError(0)


# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.2021.8.1.103.1 UCD-SNMP-MIB::extErrFixCmd.1 = STRING:

Comando a ser executado, caso a opo anterior esteja configurada como 1: Mostrar apenas a primeira linha do resultado no til na maioria dos casos, porm, olhando no /etc/snmp/snmpd.conf, encontramos outras OID que armazenam a informao toda. Por questes bvias vou usar o /etc/fstab neste exemplo:
# snmpwalk -On -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.3.6.1.4.1.8072.1.3.2 .1.3.6.1.4.1.8072.1.3.2.1.0 = INTEGER: 1 .1.3.6.1.4.1.8072.1.3.2.2.1.2.6.84.101.115.116.101.49 = STRING: /bin/cat .1.3.6.1.4.1.8072.1.3.2.2.1.3.6.84.101.115.116.101.49 = STRING: /etc/fstab .1.3.6.1.4.1.8072.1.3.2.2.1.4.6.84.101.115.116.101.49 = STRING: .1.3.6.1.4.1.8072.1.3.2.2.1.5.6.84.101.115.116.101.49 = INTEGER: 5 .1.3.6.1.4.1.8072.1.3.2.2.1.6.6.84.101.115.116.101.49 = INTEGER: exec(1) .1.3.6.1.4.1.8072.1.3.2.2.1.7.6.84.101.115.116.101.49 = INTEGER: run-on-read(1) .1.3.6.1.4.1.8072.1.3.2.2.1.20.6.84.101.115.116.101.49 = INTEGER: permanent(4) .1.3.6.1.4.1.8072.1.3.2.2.1.21.6.84.101.115.116.101.49 = INTEGER: active(1) .1.3.6.1.4.1.8072.1.3.2.3.1.1.6.84.101.115.116.101.49 = STRING: .1.3.6.1.4.1.8072.1.3.2.3.1.2.6.84.101.115.116.101.49 = STRING: # # /etc/fstab # Created by anaconda on Wed Jul 13 08:18:09 2011 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=971a8fa5-5800-4737-b2cd-731a986164f4 / ext4 defaults 1 1 UUID=16eba1c5-2469-4129-b056-64aeb35bb7c4 /boot ext4 defaults 1 2 UUID=29082312-bca7-41c5-a2b7-fe2acb1d54d2 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

113

devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0 .1.3.6.1.4.1.8072.1.3.2.3.1.3.6.84.101.115.116.101.49 = INTEGER: 15 .1.3.6.1.4.1.8072.1.3.2.3.1.4.6.84.101.115.116.101.49 = INTEGER: 0 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.1 = STRING: .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.2 = STRING: # .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.3 = STRING: # /etc/fstab .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.4 = STRING: # Created by anaconda on Wed Jul 13 08:18:09 2011 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.5 = STRING: # .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.6 = STRING: # Accessible filesystems, by reference, are maintained under '/dev/disk' .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.7 = STRING: # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.8 = STRING: # .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.9 = STRING: UUID=971a8fa5-5800-4737-b2cd-731a986164f4 / ext4 defaults 1 1 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.10 = STRING: UUID=16eba1c5-2469-4129-b056-64aeb35bb7c4 /boot ext4 defaults 1 2 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.11 = STRING: UUID=29082312-bca7-41c5-a2b7-fe2acb1d54d2 swap swap defaults 0 0 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.12 = STRING: tmpfs /dev/shm tmpfs defaults 0 0 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.13 = STRING: devpts /dev/pts devpts gid=5,mode=620 0 0 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.14 = STRING: sysfs /sys sysfs defaults 0 0 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.15 = STRING: proc /proc proc defaults 0 0

114

Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

Alguns detalhes a serem observados: Usei o comando snmpwalk -On para que fossem exibidos os OIDs numricos. No OID .1.3.6.1.4.1.8072.1.3.2.3.1.3.6.84.101.115.116.101.49 exibida a quantidade de linhas que a execuo do comando retornou (INTEGER: 15), e esse nmero ser a base para as prximas OIDs, retornando uma linha por OID:
.1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.1 = STRING: .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.2 = STRING: # .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.3 = STRING: # /etc/fstab ... .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.14 = STRING: sysfs /sys sysfs defaults 0 0 .1.3.6.1.4.1.8072.1.3.2.4.1.2.6.84.101.115.116.101.49.15 = STRING: proc /proc proc defaults 0 0

10.7. Monitoramento utilizando um comando customizado, com OID personalizada


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 devidamente configurado Monitoramento utilizando um comando customizado com OID personalizada (snmpd.conf.15) ... # Caso seja especificado um OID, a sada difere um pouco: #extend OID Nome comando Parmetros extend .1.1.1.1.1 Teste2 /bin/cat /etc/fstab

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

As sadas estaro abaixo do OID especificado, sendo elas: .1.0 = INTEGER: 1 .2.1.2.6.84.101.115.116.101.50 = STRING: "/bin/cat" .2.1.3.6.84.101.115.116.101.50 = STRING: "/etc/fstab" .2.1.4.6.84.101.115.116.101.50 = "" .2.1.5.6.84.101.115.116.101.50 = INTEGER: 5 .2.1.6.6.84.101.115.116.101.50 = INTEGER: 1 .2.1.7.6.84.101.115.116.101.50 = INTEGER: 1 .2.1.20.6.84.101.115.116.101.50 = INTEGER: 4 .2.1.21.6.84.101.115.116.101.50 = INTEGER: 1 .3.1.2.6.84.101.115.116.101.50 = STRING: "sada do comando"

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

115

10.7.1. Acessando o Agent SNMP para leitura de informaes com comandos customizados usando OID personalizada
# snmpwalk -On -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost .1.1.1.1.1 .1.1.1.1.1.1.0 = INTEGER: 1 .1.1.1.1.1.2.1.2.6.84.101.115.116.101.50 = STRING: "/bin/cat" .1.1.1.1.1.2.1.3.6.84.101.115.116.101.50 = STRING: "/etc/fstab" .1.1.1.1.1.2.1.4.6.84.101.115.116.101.50 = "" .1.1.1.1.1.2.1.5.6.84.101.115.116.101.50 = INTEGER: 5 .1.1.1.1.1.2.1.6.6.84.101.115.116.101.50 = INTEGER: 1 .1.1.1.1.1.2.1.7.6.84.101.115.116.101.50 = INTEGER: 1 .1.1.1.1.1.2.1.20.6.84.101.115.116.101.50 = INTEGER: 4 .1.1.1.1.1.2.1.21.6.84.101.115.116.101.50 = INTEGER: 1 .1.1.1.1.1.3.1.1.6.84.101.115.116.101.50 = "" .1.1.1.1.1.3.1.2.6.84.101.115.116.101.50 = STRING: " # # /etc/fstab # Created by anaconda on Wed Jul 13 08:18:09 2011 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=971a8fa5-5800-4737-b2cd-731a986164f4 / ext4 defaults 1 1 UUID=16eba1c5-2469-4129-b056-64aeb35bb7c4 /boot ext4 defaults 1 2 UUID=29082312-bca7-41c5-a2b7-fe2acb1d54d2 swap swap defaults 0 0 tmpfs /dev/shm tmpfs defaults 0 0 devpts /dev/pts devpts gid=5,mode=620 0 0 sysfs /sys sysfs defaults 0 0 proc /proc proc defaults 0 0" .1.1.1.1.1.3.1.3.6.84.101.115.116.101.50 = INTEGER: 15 .1.1.1.1.1.3.1.4.6.84.101.115.116.101.50 = INTEGER: 0 .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.1 = "" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.2 = STRING: "#" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.3 = STRING: "# /etc/fstab" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.4 = STRING: "# Created by anaconda on Wed Jul 13 08:18:09 2011" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.5 = STRING: "#" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.6 = STRING: "# Accessible filesystems, by reference, are maintained under '/dev/disk'" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.7 = STRING: "# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.8 = STRING: "#" 116 Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

.1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.9 = STRING: "UUID=971a8fa5-5800-4737-b2cd-731a986164f4 / defaults 1 1" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.10 = STRING: "UUID=16eba1c5-2469-4129-b056-64aeb35bb7c4 /boot defaults 1 2" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.11 = STRING: "UUID=29082312-bca7-41c5-a2b7-fe2acb1d54d2 swap defaults 0 0" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.12 = STRING: /dev/shm tmpfs defaults 0 0" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.13 = STRING: /dev/pts devpts gid=5,mode=620 0 0" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.14 = STRING: /sys sysfs defaults 0 0" .1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.15 = STRING: /proc proc defaults 0 0"

ext4 ext4

swap "tmpfs "devpts "sysfs "proc

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

117

118

Monitorando Recursos do Sistema | Gerenciamento de Redes com SNMP

11.Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 - Casos Especiais e Exemplos


Aqui esto alguns exemplos de configuraes mais complexas, incluindo suporte a diferentes views para um usurio SNMP v3 com base em seu nvel de segurana.

11.1. Views VACM, ou Como restringir o acesso a determinados ramos da rvore


Para restringir o acesso a determinados ramos da rvore usamos a string excluded, primeiro negando e depois liberando:
# cat snmpd.conf # /etc/snmp/snmpd.conf v3 Como restringir o acesso a determinados ramos da rvore (snmpd.conf.16) ... view all excluded .1 view all included sysUpTime.0

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

Como podemos observar no arquivo acima, exclumos a rvore inteira e inclumos apenas a informao sysUpTime.0, ou seja ,a nica informao disponvel sobre esse host ser essa.

11.1.1. Acessando o Agent SNMP com acesso restrito (sysUpTime.0)


# snmpwalk -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (15753) 0:02:37.53 DISMAN-EVENT-MIB::sysUpTimeInstance = No more variables left in this MIB View (It is past the end of the MIB tree)

Mais um exemplo; vamos disponibilizar tambm a informao do nmero de ndice da primeira interface de rede do host.

11.1.2. Acessando o Agent SNMP com acesso restrito (interfaces.ifTable.ifEntry.infIndex.1)


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 Como restringir o acesso a determinados ramos da rvore (snmpd.conf.17) ... view all excluded .1 view all included sysUpTime.0 view all included interfaces.ifTable.ifEntry.ifIndex.1

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 - Casos Especiais e Exemplos

119

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

# snmpwalk -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (2395) 0:00:23.95 IF-MIB::ifIndex.1 = INTEGER: 1 IF-MIB::ifIndex.1 = No more variables left in this MIB View (It is past the end of the MIB tree)

Por ltimo, vou liberar apenas o sysUpTime.0 e as informaes referentes as interfaces de rede do host.

11.1.3. Acessando o Agent SNMP com acesso restrito (interfaces.ifTable.ifEntry)


# cat snmpd.conf # /etc/snmp/snmpd.conf v3 Como restringir o acesso a determinados ramos da rvore (snmpd.conf.18) ... view all excluded .1 view all included sysUpTime.0 view all included interfaces.ifTable.ifEntry

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

# snmpwalk -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (16119) 0:02:41.19 IF-MIB::ifIndex.1 = INTEGER: 1 IF-MIB::ifIndex.2 = INTEGER: 2 IF-MIB::ifDescr.1 = STRING: lo IF-MIB::ifDescr.2 = STRING: eth0 IF-MIB::ifSpecific.1 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.2 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.2 = No more variables left in this MIB View (It is past the end of the MIB tree)

120

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 - Casos Especiais e Exemplos | Gerenciamento de Redes com SNMP

11.2. Mscaras VACM, ou Como restringir o acesso a um determinado ndice (linha) em uma Tabela
Usando a diretiva view no snmpd.conf, pode-se limitar os usurios a uma nica linha em uma tabela. Para fazer isso, o parmetro opcional mask especificado. Aqui est um trecho do man page:
view NAME TYPE SUBTREE [MASK] view NAME define o nome da view. TYPE se ela ser includa (included) ou excluda (excluded). MASK uma lista de octetos hexadecimais, separados por '.' ou ':'. A MASK default ser "ff" se no for especificada. A razo da mascara que ela permite que voc controle o acesso a uma linha em uma tabela, de uma maneira relativamente simples. Por exemplo, como um provedor de internet (ISP) voc pode considerar dar acesso para cada cliente a sua prpria interface: view cust1 included interfaces.ifTable.ifEntry.ifIndex.1 ff.a0 view cust2 included interfaces.ifTable.ifEntry.ifIndex.2 ff.a0 (interfaces.ifTable.ifEntry.ifIndex.1 == .1.3.6.1.2.1.2.2.1.1.1, ff.a0 == 11111111.10100000. Engloba, inclusive, o ndice da linha, mas permite ao usurio variar o campo (coluna) da linha) Nota: O caractere separador da mascara pode ser "." ou ":". Ento, um exemplo um pouco mais visual sobre isso: .1.3.6.1.2.1.2.2.1.1.1 == interfaces.ifTable.ifEntry.ifIndex.1 1 1 1 1 1 1 1 1 1 0 1 (00000) == (ff.a0) ^ ^ ^ ^ | | | |-- o ndice (the index) | | |---- a coluna (the column) | |------ ifEntry |-------- ifTable Assim, cada bit na mscara indica se os OID correspondentes devem coincidir (1) ou no (0). No exemplo acima, todas as partes do OID exceto a coluna (the column) devem coincidir. Ento, essa viso permite o acesso a qualquer coluna da primeira linha no ifTable. Assim, combinado com uma linha excluda (excluded) para o ifTable, somente a linha 1 estaria acessvel para o usurio. Agora, para traz-lo todos juntos com outras diretrizes de controle de acesso. Assumindo 2 clientes, e cada um est conectado a uma interface especfica (por ex. cliente 1 est conectado eth0 e cliente 2 est conectado a eth1): #### # Primeiro, mapear o nome da comunidade (COMMUNITY) para um nome de # acesso (security name) # (local ou minha_rede, dependendo da origem da requisio): # # sec.name source community com2sec local localhost secret42 com2sec cust1_sec 192.168.1.0/24 public com2sec cust2_sec 192.168.2.0/24 public #### # Segundo, mapear o nome de acesso em um nome de grupo: Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 - Casos Especiais e Exemplos 121

# Group group group group group group

MyRWGroup MyRWGroup cust1_grp cust1_grp cust2_grp cust2_grp

sec.model v1 v2c v1 v2c v1 v2c

sec.name local local cust1_sec cust1_sec cust2_sec cust2_sec

#### # Terceiro, criar as views para definir quais so os direitos dos # grupos: # mask view view view view ff.a0 view view view ff.a0 #### # Por fim, definir as views para os grupos: # read context sec.model any any any sec.level noauth noauth noauth match exact exact exact write notif access MyRWGroup "" all all none access cust1_grp "" cust1_v none none access cust2_grp "" cust2_v none none cust2_v cust2_v cust2_v excluded included included .1 sysUpTime.0 interfaces.ifTable.ifEntry.ifIndex.2 all cust1_v cust1_v cust1_v included excluded included included .1 .1 sysUpTime.0 interfaces.ifTable.ifEntry.ifIndex.1 incl/excl subtree

importante notar que isso funciona porque os clientes esto em redes diferentes. Se todos os clientes esto na mesma rede, o trfego de rede pode ser capturado por um analisador de redes (sniffer), o que pode expor a "comunidade" ("community string") de um cliente para outro cliente, permitindo que o segundo cliente possa visualizar as estatsticas de interface de rede do primeiro cliente via SNMP. Neste caso, voc deve usar os recursos de criptografia oferecidos pelo SNMPv3 (usm), em vez de strings de comunidade SNMPv1 e SNMPv2.

122

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 - Casos Especiais e Exemplos | Gerenciamento de Redes com SNMP

Vamos liberar acesso informao sysUpTime.0 e a todas as informaes (pode variar a coluna) da interface 2 (no pode mudar de linha) do host. Para ilustrar, como se essa view montasse a seguinte tabela referente s informaes de rede:

Podemos variar a coluna, que contm as descries das informaes, mas estamos presos na linha 2, ou seja, podemos ver qualquer informao referente a eth0.
# cat snmpd.conf # /etc/snmp/snmpd.conf v3 Como restringir o acesso a um determinado ndice (linha) em uma Tabela (snmpd.conf.19) ... view all excluded .1 view all included sysUpTime.0 view all included interfaces.ifTable.ifEntry.ifIndex.2 ff.a0

ifIndex

lo

2 eth0 3 eth1

ifDescr 1

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 - Casos Especiais e Exemplos

ifType l e E

ifMtu

ifSpeed

Tabela 04 Tabela referente s informaes de rede

ifPhysAddress

ifAdminStatus

ifOperStatus

ifLastChange

ifInOctets

ifInUcastPkts

ifInNUcastPkts

ifInDiscards

ifInErrors

ifInUnknownProtos

ifOutOctets

ifOutUcastPkts

ifOutNUcastPkts

ifOutDiscards

123

ifOutErrors

ifOutQLen

ifSpecific

11.2.1. Acessando o Agent SNMP com acesso restrito Uso do parmetro mask
# snmpwalk -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (115102) 0:19:11.02 IF-MIB::ifIndex.2 = INTEGER: 2 IF-MIB::ifDescr.2 = STRING: eth0 IF-MIB::ifType.2 = INTEGER: ethernetCsmacd(6) IF-MIB::ifOutQLen.2 = Gauge32: 0 IF-MIB::ifSpecific.2 = OID: SNMPv2-SMI::zeroDotZero IF-MIB::ifSpecific.2 = No more variables left in this MIB View (It is past the end of the MIB tree)

Outro exemplo; desejo liberar apenas as informaes de descrio, e estados administrativo e operacional das interfaces do sistema:
# cat snmpd.conf # /etc/snmp/snmpd.conf v3 Como restringir o acesso a um determinado ndice (linha) em uma Tabela (snmpd.conf.20) ... view all excluded .1 view all included sysUpTime.0 view all included .1.3.6.1.2.1.2.2.1.2 FF.C0 view all included .1.3.6.1.2.1.2.2.1.7 FF.C0 view all included .1.3.6.1.2.1.2.2.1.8 FF.C0

Lembre-se que aps alterar o arquivo necessrio reiniciar o servio:


# service snmpd restart

11.2.2. Acessando o Agent SNMP com acesso restrito Uso do parmetro mask
# snmpwalk -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (379) 0:00:03.79 IF-MIB::ifDescr.1 = STRING: lo IF-MIB::ifDescr.2 = STRING: eth0 IF-MIB::ifAdminStatus.1 = INTEGER: up(1) IF-MIB::ifAdminStatus.2 = INTEGER: up(1) IF-MIB::ifOperStatus.1 = INTEGER: up(1) IF-MIB::ifOperStatus.2 = INTEGER: up(1) IF-MIB::ifOperStatus.2 = No more variables left in this MIB View (It is past the end of the MIB tree)

124

Gerenciamento de Servidores GNU/Linux Utilizando SNMP v3 - Casos Especiais e Exemplos | Gerenciamento de Redes com SNMP

12.Comandos SNMP teis


Apresento a seguir uma srie de comandos SNMP que so teis nas tarefas dirias.

12.1. Simplificando comandos por meio de definies de valores pr-definidos


Os comandos na verso 3 so complexos e longos, o que dificulta bastante no dia-a-dia para guardar a sintaxe e execut-los sem erro. Mas existe uma maneira de simplificar isso: o net-snmp, que nos permite definir variveis de configurao, vlidas para a execuo de todos os comandos.
# cd ~

# pwd /root

# mkdir .snmp

# cd .snmp

# cat snmp.conf defversion 3 defsecurityname initial defsecuritylevel authPriv defauthtype MD5 defauthpassphrase setup_passphrase defprivtype DES defprivpassphrase setup_passkey

12.1.1.

Parmetros:
defversion: Verso do protocolo a ser utilizada; defsecurityname: Nome de usurio v3; defsecuritylevel: Nvel de autenticao do usurio; defauthtype: Mtodo de autenticao; defauthpassphrase: Senha do usurio; defprivtype: Protocolo de privacidade; defprivpassphrase: Senha de privacide;

Gerenciamento de Redes com SNMP | Comandos SNMP teis

125

12.1.2.

Acessando o Agent SNMP

# snmpget -v 3 -u initial -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: Andr Do

Essa era a sintaxe dos comandos utilizados at esse momento.


# snmpget localhost sysContact.0 SNMPv2-MIB::sysContact.0 = STRING: Andr Do

Essa a nova sintaxe de comandos, aps a definio dos valores pr-definidos.

12.1.3.

Comando snmpconf

O comando snmpconf automatiza o processo, e pode ser usado para gerar vrios arquivos de configurao, inclusive o citado acima.
# snmpconf The following installed configuration files were found: 1: 2: /etc/snmp/snmpd.conf /etc/snmp/snmptrapd.conf

Would you like me to read them in? Their content will be merged with the output files created by this session. Valid answer examples: "all", "none","3","1,2,5" Read in which (default = all): I can create the following types of configuration files for you. Select the file type you wish to create: (you can create more than one as you run this program)

A primeira opo nos informa quais arquivos de configurao foram encontrados, que esses arquivos podem ser lidos e que as informaes futuras sero mescladas com os arquivos atuais. Solicita ainda que seja escolhido um deles; o default a opo all. Basta pressionar Enter para selecionar a opo default.
I can create the following types of configuration files for you. Select the file type you wish to create: (you can create more than one as you run this program) 1: 2: 3: snmpd.conf snmp.conf snmptrapd.conf

Other options: quit 126 Comandos SNMP teis | Gerenciamento de Redes com SNMP

Select File: 2 A segunda opo nos informa quais arquivos podem ser gerados e solicita que seja escolhida uma das opes. Nesse caso escolha a opo 2, que gera o arquivo snmp.conf.

The configuration information which can be put into snmp.conf is divided into sections. Select a configuration section for snmp.conf that you wish to create: 1: 2: 3: 4: Default Authentication Options Output style options Textual mib parsing Debugging output options

Other options: finished Select section: 1 A terceira seo solicita que seja escolhida qual seo do arquivo de configurao ser alterada. Nesse caso escolha a opo 1, seo de Opes Padres de Autenticao.

Section: Default Authentication Options Description: This section defines the default authentication information. Setting these up properly in your ~/.snmp/snmp.conf file will greatly reduce the amount of command line arguments you need to type (especially for snmpv3). Select from: 1: 2: 3: needed. 4: 5: 6: 7: 8: 9: 10: The The The The The The The default default default default default default default snmpv3 snmpv3 snmpv3 snmpv3 snmpv3 snmpv3 snmpv3 security name to use when using snmpv3 context name to use security level to use authentication type name to use authentication pass phrase to use privacy (encryption) type name to use privacy pass phrase to use The default port number to use The default snmp version number to use. The default snmpv1 and snmpv2c community name to use when

Other options: finished, list Select section: Gerenciamento de Redes com SNMP | Comandos SNMP teis 127

Nesse momento so apresentadas 10 opes; escolha as opes uma por vez, e informe os parmetros desejados.
Select section: finished

Depois utilize a opo finished, para encerrar esse menu de opes.


The configuration information which can be put into snmp.conf is divided into sections. Select a configuration section for snmp.conf that you wish to create: 1: 2: 3: 4: Default Authentication Options Output style options Textual mib parsing Debugging output options

Other options: finished Select section: finished

Retorna s opes anteriores. Utilize a opo finished para encerrar.


I can create the following types of configuration files for you. Select the file type you wish to create: (you can create more than one as you run this program) 1: 2: 3: snmpd.conf snmp.conf snmptrapd.conf

Other options: quit Select File: quit Retorna s opes iniciais. Utilize a opo quit para encerrar.

128

Comandos SNMP teis | Gerenciamento de Redes com SNMP

The following files were created: snmp.conf These files should be moved to /usr/share/snmp if you want them used by everyone on the system. In the future, if you add the -i option to the command line I'll copy them there automatically for you. Or, if you want them for your personal use only, copy them to /root/.snmp . In the future, if you add the -p option to the command line I'll copy them there automatically for you. Mensagem padro com instrues adicionais.

12.2. Variaes na forma como o resultado da consulta exibido 12.2.1. Exibio padro
# snmpget -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost ifDescr.2 IF-MIB::ifDescr.2 = STRING: eth0

12.2.2.

Exibindo o OID Completo

-Of: Exibe o OID completo.


# snmpget -Of -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost ifDescr.2 .iso.org.dod.internet.mgmt.mib2.interfaces.ifTable.ifEntry.ifDescr.2 = STRING: eth0

12.2.3.

Exibindo o OID completo na forma numrica

-On: Exibe o OID completo na forma numrica.


# snmpget -On -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost ifDescr.2 .1.3.6.1.2.1.2.2.1.2.2 = STRING: eth0

12.2.4.

Exibindo o OID abreviado

-Oq: Exibe o OID abreviado; apenas o final do OID.


# snmpget -Oq -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost ifDescr.2 IF-MIB::ifDescr.2 eth0

Gerenciamento de Redes com SNMP | Comandos SNMP teis

129

12.2.5.

Exibindo o OID abreviado na forma numrica

-Oqn: Exibe o OID abreviado; apenas o final do OID na forma numrica.


# snmpget -Oqn -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost ifDescr.2 .1.3.6.1.2.1.2.2.1.2.2 eth0

12.2.6.

Exibindo apenas o valor, sem OID

-Ov: Exibe apenas o valor, sem o OID.


# snmpget -Ov -v 3 -u user1 -n "" -l authNoPriv -a MD5 -A senhateste -x DES localhost ifDescr.2 STRING: eth6

12.3. Traduzindo Informaes 12.3.1. Exibindo o OID numrico de um objeto


-On -lb / -On -IR: Exibe o OID numrico de um objeto.
# snmptranslate -On -Ib sysUptime .1.3.6.1.2.1.1.3

# snmptranslate -On -IR sysUpTime .1.3.6.1.2.1.1.3

12.3.2.

Exibindo o OID nominal de um objeto:

-Of -Ib / -Of -IR: Exibe o OID nominal de um objeto.


# snmptranslate -Of -Ib sysUptime .iso.org.dod.internet.mgmt.mib-2.system.sysUpTime

# snmptranslate -Of -IR sysUpTime .iso.org.dod.internet.mgmt.mib-2.system.sysUpTime

12.3.3.

Exibindo o OID numrico de um objeto e sua descrio:

-On -Ib -Td: Exibe o OID numrico de um objeto e sua descrio.


# snmptranslate -On -Ib -Td sysUptime .1.3.6.1.2.1.1.3 sysUpTime OBJECT-TYPE -- FROM SNMPv2-MIB, RFC1213-MIB SYNTAX TimeTicks MAX-ACCESS read-only STATUS current 130 Comandos SNMP teis | Gerenciamento de Redes com SNMP

DESCRIPTION "The time (in hundredths of a second) since the network management portion of the system was last re-initialized." ::= { iso(1) org(3) dod(6) internet(1) mgmt(2) mib-2(1) system(1) 3 } Exibindo o OID nominal de um objeto e sua descrio: # snmptranslate -Of -Ib -Td sysUptime .iso.org.dod.internet.mgmt.mib-2.system.sysUpTime sysUpTime OBJECT-TYPE -- FROM SNMPv2-MIB, RFC1213-MIB SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The time (in hundredths of a second) since the network management portion of the system was last re-initialized." ::= { iso(1) org(3) dod(6) internet(1) mgmt(2) mib-2(1) system(1) 3 }

12.3.4.

Exibindo o OID nominal de um OID numrico:

# snmptranslate .1.3.6.1.2.1.1.3 SNMPv2-MIB::sysUpTime

12.3.5.

Exibindo a descrio de um OID numrico:

# snmptranslate -Td .1.3.6.1.2.1.1.3 SNMPv2-MIB::sysUpTime sysUpTime OBJECT-TYPE -- FROM SNMPv2-MIB, RFC1213-MIB SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "The time (in hundredths of a second) since the network management portion of the system was last re-initialized." ::= { iso(1) org(3) dod(6) internet(1) mgmt(2) mib-2(1) system(1) 3 }

Gerenciamento de Redes com SNMP | Comandos SNMP teis

131

12.3.6.

Exibindo a hierarquia da MIB a partir de um galho:

# snmptranslate -Tp -IR system

Figura 48 Hierarquia do galho System

12.3.7.

Exibindo a Tabela de Informaes no formato de tabela:

# snmptable -v 3 -u initial -n "" -l authNoPriv -a MD5 -A setup_passphrase -x DES localhost sysORTable

Figura 49 - Tabela sysORTable

132

Comandos SNMP teis | Gerenciamento de Redes com SNMP

13.Utilizando o SNMP em ativos de rede


Os conceitos adquiridos nessa apostila servem de base para que voc possa configurar SNMP em ativos de redes como Swithes e Roteadores, por exemplo.

13.1. Switch D-Link 13.1.1. Definir as views

Figura 50 - Definindo as view no ativo

13.1.2.

Mapear nome de comunidade para nome de acesso

Figura 51 - com2sec no ativo

Gerenciamento de Redes com SNMP | Utilizando o SNMP em ativos de rede

133

13.1.3.

Definir os grupos

Figura 52 - Definindo os grupos no ativo

13.1.4.

Definir acesso do grupo na view

Figura 53 - Definindo acesso dos grupos nas views no ativo

134

Utilizando o SNMP em ativos de rede | Gerenciamento de Redes com SNMP

13.1.5.

Definir o IP do gerente

Figura 54 - Definindo IP do gerente no ativo

13.2. Router Cisco 13.2.1. Habilitar SNMP v1/v2c


Os comandos abaixo so usados para habilitar o SNMP v1/v2c no roteador CISCO.
Router_C2600>enable Router_C2600#configure terminal Enter configuration commands, one per line. End with CNTL/Z. Router_C2600(config)#snmp-server community public RO Router_C2600(config)#snmp-server community private RW Router_C2600(config)#exit Router_C2600# Router_C2600#write memory Warning: Attempting to overwrite an NVRAM configuration previously written by a different version of the system image. Overwrite the previous NVRAM configuration?[confirm] Building configuration... [OK] Router_C2600#

Gerenciamento de Redes com SNMP | Utilizando o SNMP em ativos de rede

135

13.2.1.1. Acessando um Agent SNMP do router para leitura de informaes Obtendo o nome do equipamento via SNMP v1.
# snmpget -v1 -c public 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router_C2600

Obtendo o nome do equipamento via SNMP v2c.


# snmpget -v2c -c public 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router_C2600

Alterar o nome do equipamento com a comunidade public, que possui apenas direito de leitura.
# snmpset -v2c -c public 192.168.1.107 sysName.0 s Router Error in packet. Reason: noAccess Failed object: SNMPv2-MIB::sysName.0

Alterar o nome do equipamento com a comunidade private, que possui direito de escrita.
# snmpset -v2c -c private 192.168.1.107 sysName.0 s Router SNMPv2-MIB::sysName.0 = STRING: Router

Obtendo o nome do equipamento via SNMP v2c.


# snmpget -v2c -c public 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router

13.2.2.

Habilitar SNMP V3 compatvel com SNMP v1/v2c

Os comandos abaixo habilitam o SNMPv3 compatvel com o SNMP v1/v2c no roteador CISCO.
1. Router_C2600>enable 2. Router_C2600#configure terminal 3. Enter configuration commands, one per line.

End with CNTL/Z.

Definir a view:
Router_C2600(config)#snmp-server view all 1 included

136

Utilizando o SNMP em ativos de rede | Gerenciamento de Redes com SNMP

Definir as permisses dos grupos nas views.


Router_C2600(config)#snmp-server group aulas v1 read all write all Router_C2600(config)#snmp-server group aulas v2c read all write all

Incluir o usurio no grupos.


Router_C2600(config)#snmp-server user alunos aulas v1 Router_C2600(config)#snmp-server user alunos aulas v2c

13.2.2.1. Acessando um Agente SNMP v3 compatvel com SNMP v2c: Obtendo o nome do equipamento via SNMP v1.
# snmpget -v1 -c alunos 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router_C2600

Obtendo o nome do equipamento via SNMP v2c.


snmpget -v2c -c alunos 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router_C2600

Alterar o nome do equipamento via SNMP v2c.


# snmpset -v2c -c alunos 192.168.1.107 sysName.0 s Router SNMPv2-MIB::sysName.0 = STRING: Router

Obtendo o nome do equipamento via SNMP v1.


# snmpget -v1 -c alunos 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router

13.2.3.

Habilitar SNMP V3

Os comandos abaixo habilitam o SNMPv3 no roteador CISCO.


Router_C2600>enable Router_C2600#configure terminal Enter configuration commands, one per line.

End with CNTL/Z.

Definir a view:
Router_C2600(config)#snmp-server view all 1 included Gerenciamento de Redes com SNMP | Utilizando o SNMP em ativos de rede 137

Definir as permisses dos grupos nas views:


Router_C2600(config)#snmp-server group rogroup1 v3 auth read all Router_C2600(config)#snmp-server group rwgroup1 v3 auth read all write all

Incluir os usurios nos grupos.


Router_C2600(config)#snmp-server user user1 rogroup1 v3 auth md5 setup_passphrase Router_C2600(config)#snmp-server user user2 rwgroup1 v3 auth md5 setup_passphrase

13.2.3.1. Acessando um Agente SNMP v3: Obtendo o nome do equipamento.


# snmpget -v3 -u user1 -n "" -l auth -a MD5 -A setup_passphrase 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router_C2600

Alterar o nome do equipamento atravs do usurio user1, que possui apenas direito de leitura.
# snmpset -v3 -u user1 -n "" -l auth -a MD5 -A setup_passphrase 192.168.1.107 sysName.0 s Router Error in packet. Reason: noAccess Failed object: SNMPv2-MIB::sysName.0

Alterar o nome do equipamento atravs do usurio user2, que possui direito de escrita.
# snmpset -v3 -u user2 -n "" -l auth -a MD5 -A setup_passphrase 192.168.1.107 sysName.0 s Router SNMPv2-MIB::sysName.0 = STRING: Router

Obtendo o nome do equipamento.


# snmpget -v3 -u user1 -n "" -l auth -a MD5 -A setup_passphrase 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router

138

Utilizando o SNMP em ativos de rede | Gerenciamento de Redes com SNMP

13.2.4.

Habilitar SNMP V3 com Autenticao e Privacidade

Os comandos abaixo habilitam o SNMPv3 com autenticao e privacidade no roteador CISCO.


Router_C2600>enable Router_C2600#configure terminal Enter configuration commands, one per line.

End with CNTL/Z.

Definir a view:
Router_C2600(config)#snmp-server view all 1 included

Definir as permisses dos grupos nas views:


Router_C2600(config)#snmp-server group rogroup1 v3 auth read all Router_C2600(config)#snmp-server group rwgroup1 v3 auth read all write all

Incluir os usurios nos grupos.


Router_C2600 (config)#snmp-server user user1 rogroup1 v3 auth md5 setup_passphrase priv des setup_passkey Router_C2600 (config)#snmp-server user user2 rwgroup1 v3 auth md5 setup_passphrase priv des setup_passkey

13.2.4.1. Acessando um Agente SNMP v3: Obtendo o nome do equipamento.


# snmpget -v3 -u user1 -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router_C2600

Alterar o nome do equipamento atravs do usurio user1, que possui apenas direito de leitura.
# snmpset -v3 -u user1 -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase 192.168.1.107 sysName.0 s Router Error in packet. Reason: noAccess Failed object: SNMPv2-MIB::sysName.0

Gerenciamento de Redes com SNMP | Utilizando o SNMP em ativos de rede

139

Alterar o nome do equipamento atravs do usurio user2, que possui direito de escrita.
# snmpset -v3 -u user1 -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase 192.168.1.107 sysName.0 s Router SNMPv2-MIB::sysName.0 = STRING: Router

Obtendo o nome do equipamento.


# -v3 -u user1 -n "" -x DES -X setup_passkey -l authPriv -a MD5 -A setup_passphrase 192.168.1.107 sysName.0 SNMPv2-MIB::sysName.0 = STRING: Router

Observao: O modelo C2600 no possui suporte a authPriv, mas os comandos e resultados de leitura de um equipamento que suporte a esse nvel de autenticao ser como os exibidos acima.

140

Utilizando o SNMP em ativos de rede | Gerenciamento de Redes com SNMP

14.Algumas Extenses ao SNMP


RFC 1155 - Structure and Identification of Management Information for TCP/IP based internets RFC 1156 - Management Information Base Network RFC 1441 - Introduction to SNMP v2 RFC 2579 - Textual Conventions for SNMP v2 RFC 2580 - Conformance Statements for SNMP v2 RFC 2578 - Structure of Management Information for SNMP v2 RFC 3416 - Protocol Operations for SNMP v2 RFC 3417 - Transport Mappings for SNMP v2 RFC 3418 - Management Information Base for SNMP v2 RFC 3410 - Introduction and Applicability Statements for Internet Standard Management Framework RFC 3411 - Architecture for Describing SNMP Frameworks RFC 3412 - Message Processing and Dispatching for the SNMP RFC 3413 - SNMP Applications RFC 3414 - User-based Security Model (USM) for SNMP v3 RFC 3415 - View-based Access Control Model for the SNMP RFC 3584 - Coexistence between SNMP v1, v2 and v3

Gerenciamento de Redes com SNMP | Algumas Extenses ao SNMP

141

142

Algumas Extenses ao SNMP | Gerenciamento de Redes com SNMP

15.Referncias
http://lrodrigo.lncc.br/~lrodrigo/wiki9/index.php/Configuracoes_Basicas_-_V1_e_V2c http://net-snmp.sourceforge.net/wiki/index.php/Vacm http://www.ietf.org/rfc/rfc3411.txt http://www.ietf.org/rfc/rfc3415.txt http://www.ietf.org/rfc/rfc1213.txt http://www.net-snmp.org/docs/man/snmpusm.html http://www.net-snmp.org/docs/man/snmpd.conf.html http://www.net-snmp.org/docs/man/snmpd.conf.html#lbAH http://www.net-snmp.org/docs/man/snmpd.conf.html#lbAI http://www.webnms.com/simulator/help/sim_network/netsim_conf_snmpv3.html http://net-snmp.sourceforge.net/wiki/index.php/Vacm http://docstore.mik.ua/orelly/networking_2ndEd/snmp/appf_02.htm http://www.net-snmp.org/wiki/index.php/TUT:SNMPv3_Options http://www.webnms.com/agenttester/help/snmptester/sat_v3_security_testing.html http://tcpipguide.com/free/t_SNMPVersion2SNMPv2MessageFormats.htm http://www.tcpipguide.com/free/t_TCPIPInternetStandardManagementFrameworkan dSNMPVer-3.htm http://www.simpleweb.org http://www.rnp.br/newsgen/9901/rmon.html http://www.dsc.ufcg.edu.br/~jacques/cursos/gr/html/aplic/aplic5.htm Gabos, Denis.; Melo, Tereza C. Apostila de Gerenciamento de Redes, EPUSP, 2003. Stallings, W. SNMP, SNMPv2, SNMPv3 and RMON1 and 2. 3rd ed. 7th printing, 2003. Kurose; Ross. Redes de Computadores e a Internet. Uma nova Abordagem. Pearson Education, 2003. Rebessi, Conrado Pinto. Palestra: Gerenciamento de Servidores Linux Utilizando SNMP, 2007 - http://www.box.net/shared/fu0ynqfckz Maura, Douglas R. ; Schmidt, Kevin J . SNMP Essencial. Editora Campus, 2001.

Gerenciamento de Redes com SNMP | Referncias

143

Você também pode gostar