Você está na página 1de 151

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

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

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

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

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

4.

MODELO DE GERENCIAMENTO OSI E MODELO DE GERENCIAMENTO SNMP .................................. 25

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

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 ................................................................................................... 27
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
5.8.
VULNERABILIDADE SNMP - PROTEO: ................................................................................................ 40

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

5.9.
VERSES SNMP:.............................................................................................................................. 40
5.9.1. SNMP V1 .................................................................................................................................. 40
5.9.1.1.
5.9.1.2.
5.9.1.3.

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.

Get ................................................................................................................................................. 40
GetNext .......................................................................................................................................... 40
Set .................................................................................................................................................. 40
SNMPv2 Original ............................................................................................................................ 40
SNMPv2 baseado na comunidade .................................................................................................. 40
SNMPv2 baseada no usurio .......................................................................................................... 40
SNMPv2 Estrela .............................................................................................................................. 40

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
6.5.2. N iso ....................................................................................................................................... 47

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

6.5.3.
6.5.4.
6.5.5.
6.5.6.
6.5.7.

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

6.5.7.1.
Grupo System ................................................................................................................................. 50
6.5.7.1.1. Descrio textual: .................................................................................................................... 50
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.
7.5.

ALGUMAS RFCS TRATAM DO PROTOCOLO RMON: ................................................................................. 59


CARACTERSTICAS DO PROTOCOLO........................................................................................................ 60
OBJETIVOS DO RMON ....................................................................................................................... 60
ABRANGNCIA DAS VERSES................................................................................................................ 61
EXEMPLO DE FUNCIONAMENTO............................................................................................................ 61

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

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
7.6.3.4.1. Exemplo: .................................................................................................................................. 64
7.6.3.5.
RMON1 Matrix ............................................................................................................................ 64
7.6.3.5.1. Exemplos: ................................................................................................................................. 64
7.6.3.6.
RMON1 Token Ring ..................................................................................................................... 64
7.6.3.7.
RMON1 Alarm ............................................................................................................................. 64
7.6.3.7.1. Exemplos: ................................................................................................................................. 65
7.6.3.8.
RMON1 Filter............................................................................................................................... 65
7.6.3.8.1. 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: ................................................................................................................................. 69
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.
INICIAR O SERVIO AUTOMATICAMENTE................................................................................................. 71
8.3.
ESTRUTURA DO NET-SNMP APS A INSTALAO DOS BINRIOS ................................................................... 72
8.4.
BACKUP DO ARQUIVO DE CONFIGURAO ORIGINAL (SNMPD.CONF) ........................................................... 72
8.5.
CONFIGURAO BSICA DE UM AGENTE SNMP V1/V2C.......................................................................... 72
8.6.
ACESSANDO UM AGENTE SNMP V1/V2C.............................................................................................. 73
8.6.1. Comando snmpget .................................................................................................................. 73
8.6.1.1.

8.6.2.

Comando snmpset ................................................................................................................... 74

8.6.2.1.

8.6.3.
8.6.4.
8.6.5.
8.6.6.
8.6.7.
9.

Explicando o comando: .................................................................................................................. 73


Explicando o comando: .................................................................................................................. 74

Comando snmpgetnetxt .......................................................................................................... 75


Comando snmpwalk ................................................................................................................ 75
Comando snmpbulkget ........................................................................................................... 76
Comando snmpbulkwalk ........................................................................................................ 78
Informaes Adicionais........................................................................................................... 79

GERENCIAMENTO DE SERVIDORES GNU/LINUX UTILIZANDO SNMP V3 .......................................... 81


9.1.

USM.............................................................................................................................................. 81

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

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

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

9.6.3.

Alterar a senha dos usurios: ................................................................................................. 89

9.6.3.1.

9.6.4.
9.6.5.
9.6.6.
9.6.7.

Parmetros: ................................................................................................................................... 89
Parmetros: ................................................................................................................................... 89

Remover a linha de criao do usurio initial do arquivo de configurao: ........................ 90


snmpd.conf v3 bsico: ............................................................................................................. 91
Acessando um Agente SNMP v3: ............................................................................................. 91
snmpd.conf v3 com VACM devidamente configurado: ........................................................... 92

9.6.7.1.
9.6.7.2.

Acessando um Agent SNMP v3: ..................................................................................................... 92


Remover os usurios criados ......................................................................................................... 94

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

9.7.3.

Alterar a senha dos usurios: ................................................................................................. 96

9.7.3.1.

9.7.4.

9.7.4.1.

9.7.5.
9.7.6.
9.7.7.

Parmetros: ................................................................................................................................... 97

snmpd.conf v3 bsico: ............................................................................................................. 98


Acessando um Agente SNMP v3: ............................................................................................. 98
snmpd.conf v3 com VACM devidamente configurado: ........................................................... 99

9.7.7.1.

9.7.8.

Parmetros: ................................................................................................................................... 97

Alterar a chave dos usurios: ................................................................................................. 97

Acessando um Agent SNMP v3: ..................................................................................................... 99

snmpd.conf v3 com VACM devidamente configurado e nvel de segurana authPriv: ....... 101

9.7.8.1.

Acessando um Agent SNMP v3: ................................................................................................... 101

9.8.
SEGURANA EM SNMP V3: ............................................................................................................. 102
9.8.1. Requisio SNMP v2 .............................................................................................................. 102
9.8.2. Requisio SNMP v3com Autenticao ................................................................................ 103
9.8.3. Requisio SNMP v3com Autenticao e Privacidade ......................................................... 104
10.

MONITORANDO RECURSOS DO SISTEMA ................................................................................. 105

10.1. INFORMAES DO SISTEMA............................................................................................................... 105


10.1.1.
Acessando o Agent SNMP para leitura de informaes do sistema ................................ 105
10.2. MONITORAMENTO DE PROCESSOS ..................................................................................................... 106

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

10

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

COMANDOS SNMP TEIS ......................................................................................................... 129

12.1. SIMPLIFICANDO COMANDOS POR MEIO DE DEFINIES DE VALORES PR-DEFINIDOS...................................... 129


12.1.1.
Parmetros: ...................................................................................................................... 129
12.1.2.
Acessando o Agent SNMP ................................................................................................. 130
12.1.3.
Comando snmpconf .......................................................................................................... 130
12.2. VARIAES NA FORMA COMO O RESULTADO DA CONSULTA EXIBIDO........................................................ 133
12.2.1.
Exibio padro ................................................................................................................ 133
12.2.2.
Exibindo o OID Completo.................................................................................................. 133
12.2.3.
Exibindo o OID completo na forma numrica ................................................................. 133
12.2.4.
Exibindo o OID abreviado ................................................................................................. 133
12.2.5.
Exibindo o OID abreviado na forma numrica ................................................................ 134
12.2.6.
Exibindo apenas o valor, sem OID .................................................................................... 134
12.3. TRADUZINDO INFORMAES ............................................................................................................. 134
12.3.1.
Exibindo o OID numrico de um objeto ........................................................................... 134
12.3.2.
Exibindo o OID nominal de um objeto ............................................................................. 134
12.3.3.
Exibindo o OID numrico de um objeto e sua descrio .................................................. 134
12.3.4.
Exibindo o OID nominal de um objeto e sua descrio: ................................................... 135
12.3.5.
Exibindo o OID nominal de um OID numrico ................................................................. 135
12.3.6.
Exibindo a descrio de um OID numrico ...................................................................... 135
12.3.7.
Exibindo a hierarquia da MIB a partir de um galho ....................................................... 136
12.3.8.
Exibindo a Tabela de Informaes no formato de tabela ............................................... 136
13.

UTILIZANDO O SNMP EM ATIVOS DE REDE ............................................................................... 137

13.1. SWITCH D-LINK .............................................................................................................................. 137


13.1.1.
Definir as views ................................................................................................................. 137
13.1.2.
Mapear nome de comunidade para nome de acesso ....................................................... 137
13.1.3.
Definir os grupos .............................................................................................................. 138

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

11

13.1.4.
Definir acesso do grupo na view ...................................................................................... 138
13.1.5.
Definir o IP do gerente ...................................................................................................... 139
13.2. ROUTER CISCO ............................................................................................................................... 139
13.2.1.
Habilitar SNMP v1/v2c ..................................................................................................... 139
13.2.1.1.

13.2.2.
13.2.2.1.

13.2.3.
13.2.3.1.

13.2.4.
13.2.4.1.

Acessando um Agent SNMP do router para leitura de informaes............................................ 140

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


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

Habilitar SNMP V3 ............................................................................................................ 141


Acessando um Agente SNMP v3: ................................................................................................. 142

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


Acessando um Agente SNMP v3: ................................................................................................. 143

14.

ALGUMAS EXTENSES AO SNMP ............................................................................................. 145

15.

REFERNCIAS ............................................................................................................................ 147

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

12

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.

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

14

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.

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

16

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

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

18

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 01 - 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).
Gerenciamento de Redes com SNMP | Conceitos de Gerncia de Redes - Introduo

20

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 02 - 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.

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

22

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 03 - 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.

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

24

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 04 - Operaes de Gerenciamento

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


MIB.

Figura 05 - 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 06 Principais Componentes do Modelo OSI

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.

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


Gerenciamento SNMP

26

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.
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 07 - 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 08 - Agentes SNMP

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


Gerenciamento SNMP

28

4.2.3. Entidade com Dupla Funo


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

Figura 09 - 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)

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


Gerenciamento SNMP

30

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

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

32

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.

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

34

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 20 - Get-Request

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

36

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 191 - 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 202 - Get-Bulk-Request

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

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

37

Figura 23 - Set-Request

5.6.5. TRAP
Informa um evento ocorrido no sistema gerenciado.

Figura 214 - 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 225 - Inform-Request

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

38

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 236 - 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.

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

40

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

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 com SNMP | Gerenciamento de Redes - O Protocolo SNMP

42

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

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

44

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)

Gerenciamento de Redes com SNMP | A MIB

46

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 248 -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

Gerenciamento de Redes com SNMP | A MIB

48

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)

Gerenciamento de Redes com SNMP | A MIB

49

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
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;
Gerenciamento de Redes com SNMP | A MIB

50

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.
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);
Gerenciamento de Redes com SNMP | A MIB

51

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.

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;
Gerenciamento de Redes com SNMP | A MIB

52

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;
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).

6.5.7.5.

Grupo icmp Protocolo ICMP

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;
Gerenciamento de Redes com SNMP | A MIB

53

icmpInTimeExcds(icmp 4): O nmero de mensagens ICMP recebidas com


tempo excedido.

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.
Gerenciamento de Redes com SNMP | A MIB

54

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;

Gerenciamento de Redes com SNMP | A MIB

56

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

Gerenciamento de Redes com SNMP | A MIB

58

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.

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

60

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 34 - 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.

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.

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

62

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 35 - 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

7.6.3.4.1.
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.

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

Facilita a obteno de informaes em relao comunicao entre um par


qualquer de estaes.

Figura 36 - 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.

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

64

7.6.3.7.1.
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 37 - 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.

7.6.3.8.1.
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.

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

66

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.

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

68

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

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

Gerenciamento de Redes com SNMP | Protocolo de Gerenciamento RMON

70

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.Iniciar o servio automaticamente


# ntsysv

Figura 41 - NTSYSV

Selecione as opes snmpd e snmpdtrapd e clique em OK.

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


Utilizando SNMP v1 e v2c

71

8.3.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;
/usr/share/snmp/mibs/: 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.4.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

8.5. 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 bsico (snmpd.conf.01)
#
rocommunity public
rwcommunity private

Aps alterar o arquivo, necessrio reiniciar o servio:


# service snmpd restart
Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux
Utilizando SNMP v1 e v2c

72

O status do servio pode ser verificado atravs do comando:


# service snmpd status

8.6.Acessando um Agente SNMP v1/v2c


8.6.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.6.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 corresponde 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

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


Utilizando SNMP v1 e v2c

73

8.6.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.6.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;
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.

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


Utilizando SNMP v1 e v2c

74

8.6.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.6.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
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

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


Utilizando SNMP v1 e v2c

75

8.6.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 as 10 primeiras linhas (default) da 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

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.

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


Utilizando SNMP v1 e v2c

76

Podemos ainda especificar o nmero de linhas atravs da opo -Crn, onde n


representa o nmero de linhas:
# snmpbulkget -Cr20 -v 2c -c public localhost system
SNMPv2-MIB::sysDescr.0 = STRING: Linux aulas.snmp 2.6.32220.4.1.el6.i686 #1 SMP Mon Jan 23 22:37:12 GMT 2012 i686
SNMPv2-MIB::sysObjectID.0 = OID: NET-SNMPMIB::netSnmpAgentOIDs.10
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (3700)
0:00:37.00
SNMPv2-MIB::sysContact.0 = STRING: root@localhost
SNMPv2-MIB::sysName.0 = STRING: aulas.snmp
SNMPv2-MIB::sysLocation.0 = STRING: Unknown
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (2) 0:00:00.02
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
SNMPv2-MIB::sysORDescr.1 = STRING: The MIB for Message Processing
and Dispatching.
SNMPv2-MIB::sysORDescr.2 = STRING: The MIB for Message Processing
and Dispatching.
SNMPv2-MIB::sysORDescr.3 = STRING: The SNMP Management Architecture MIB.
SNMPv2-MIB::sysORDescr.4 = STRING: The MIB module for SNMPv2 entities
SNMPv2-MIB::sysORDescr.5 = STRING: The MIB module for managing
TCP implementations

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


Utilizando SNMP v1 e v2c

77

8.6.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

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


Utilizando SNMP v1 e v2c

78

8.6.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

79

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


Utilizando SNMP v1 e v2c

80

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

81

9.3.Modelo de Permisses VACM


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

Figura 42 - 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.

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


Utilizando SNMP v3

82

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

nvel

prefixo

any

noauth

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.02)
#
# view
name
inc/excl
tree
mask
view
all
included
.1
80
#com2sec
com2sec
com2sec

user
readonly
readwrite

source(IP,host...)
default
default

#group
group
group
group
group

name
compat
compat
compat1
compat1

v1/v2c/usm
v1
v2c
v1
v2c

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

community
public
private

user
readonly
readonly
readwrite
readwrite

context any/v1/v2c/usm

level

prefx

read

""
none
""
all

any
none
any
none

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


Utilizando SNMP v3

83

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

included

.1

80

Por exemplo:
view

all

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

readonly
readwrite

default
default

public
private

Por exemplo:
com2sec
com2sec

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

compat
compat
compat1
compat1

v1
v2c
v1
v2c

readonly
readonly
readwrite
readwrite

Por exemplo:
group
group
group
group

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

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


Utilizando SNMP v3

level

84

Por Exemplo:
access
all
access
exact
all
exact

9.4.1.5.

compat
none
compat1
all

""
none
""
none

any

noauth

any

noauth

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

85

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

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


Utilizando SNMP v3

86

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.03)
#
# 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

87

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.

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


Utilizando SNMP v3

88

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

89

9.6.4. Remover a linha de criao do usurio initial do arquivo de


configurao:
# cat snmpd.conf
# /etc/snmp/snmpd.conf v3 inicial (snmpd.conf.04)
#
# Declarando um usurio Inicial com permisso de escrita
rwuser initial

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


# service snmpd restart

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


user3:
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
Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux
Utilizando SNMP v3

90

E o nmero de vezes que o servio foi reinicializado:


engineBoots 15

9.6.5. snmpd.conf v3 bsico:


# cat snmpd.conf
# /etc/snmp/snmpd.conf v3 bsico (snmpd.conf.05)
#
# 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.6. 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
Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux
Utilizando SNMP v3

91

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.6.7. snmpd.conf v3 com VACM devidamente configurado:


# cat snmpd.conf
# /etc/snmp/snmpd.conf v3 devidamente configurado (snmpd.conf.06)
# 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

Permisses aos grupos


grupo
contexto
alterar
notificar
rogroup2

none
none
rogroup1

none
none
rwgroup

all
none

mod_seg

usurio
user1
user2
user3
initial
nvel_seg

any

noauth

any

noauth

any

noauth

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


# service snmpd restart

9.6.7.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.

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


Utilizando SNMP v3

92

# 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.
# 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.

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


Utilizando SNMP v3

93

Um ltimo detalhe a ser testado a execuo de comandos SNMP v1/V2c:


# snmpwalk v 1 -c public localhost
Timeout: No Response from localhost

# snmpbulkwalk -v 2c -c public localhost


Timeout: No Response from localhost

9.6.7.2. Remover os usurios criados


Removeremos os usurios para recri-los com o nvel mximo de segurana no
prximo captulo.
# snmpusm -v3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A
setup_passphrase localhost delete user user3
User successfully deleted.

# snmpusm -v3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A


setup_passphrase localhost delete user user2
User successfully deleted.

# snmpusm -v3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A


setup_passphrase localhost delete user user1
User successfully deleted.

# snmpusm -v3 -u initial -n "" -x DES -l authNoPriv -a MD5 -A


setup_passphrase localhost delete user initial
User successfully deleted.

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


Utilizando SNMP v3

94

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.07)
#
# 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:
Gerenciamento de Redes com SNMP | Gerenciamento de Servidores GNU/Linux
Utilizando SNMP v3

95

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.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.

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


Utilizando SNMP v3

96

# 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;
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.

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


Utilizando SNMP v3

97

9.7.5. snmpd.conf v3 bsico:


# cat snmpd.conf
# /etc/snmp/snmpd.conf v3 bsico com autenticao e privacidade
(snmpd.conf.08)
#
# 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.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

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


Utilizando SNMP v3

98

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.09)
#
# 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

Permisses aos grupos


grupo
contexto
alterar
notificar
rogroup2

none
none
rogroup1

none
none
rwgroup

all
none

mod_seg

usurio
user1
user2
user3
initial
nvel_seg

any

noauth

any

noauth

any

noauth

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

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


Utilizando SNMP v3

99

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 user3 -n "" -x DES -X senha_key3 -l authPriv -a MD5 -A senhateste3 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, e por isso todas as
informaes apresentadas so da MIB IP-MIB.
Um detalhe deve ser observado, como no arquivo de configurao est setado o
nvel (mnimo) de segurana na autenticao como noauth, o host vai continuar respondendo esse tipo de solicitao:
# snmpget -v 3 -u user2 -n "" -x DES -l authNoPriv -a MD5 -A senhateste2 localhost sysContact.0
SNMPv2-MIB::sysContact.0 = STRING: Andr Do

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


Utilizando SNMP v3

100

9.7.8. snmpd.conf v3 com VACM devidamente configurado e nvel de


segurana authPriv:
# cat snmpd.conf
# /etc/snmp/snmpd.conf v3 devidamente configurado com autenticao
e privacidade (snmpd.conf.10)
#
# Definir as Views
#view
nome incl/excl. sub-Arvore mascara
view
all
included
.1
80
view
ip
included
.iso.org.dod.internet.mgmt.mib-2.ip
# Agrupar os usuarios
#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_seguranca
usm
usm
usm
usm

Permissoes aos grupos


grupo
contexto
alterar
notificar
rogroup2
""
none
none
rogroup1
""
none
none
rwgroup
""
all
none

usuario
user1
user2
user3
initial

mod_seg

nivel_seg

any

authPriv

any

authPriv

any

authPriv

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


# service snmpd restart

9.7.8.1.

Acessando um Agent SNMP v3:

# snmpget -v 3 -u user2 -n "" -x DES -l authNoPriv -a MD5 -A senhateste2 localhost sysContact.0


Error in packet
Reason: authorizationError (access denied to that object)

O host no responde mais a requisies do tipo authNoPriv.


# 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

Mas, responde as requisies do tipo authPriv normalmente, atingindo assim o


nvel mximo de segurana do SNMP v3.

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


Utilizando SNMP v3

101

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 43 - Requisio SNMP v2

Figura 44 - Trfego SNMP v2 capturado Dados em texto plano

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


Utilizando SNMP v3

102

9.8.2. Requisio SNMP v3com Autenticao

Figura 45 - Requisio SNMP v3 com Autenticao

Figura 46 - Trfego SNMP v3 capturado Dados em texto plano

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


Utilizando SNMP v3

103

9.8.3. Requisio SNMP v3com Autenticao e Privacidade

Figura 47 - Requisio SNMP v3 com Autenticao e Privacidade

Figura 48 - Trfego SNMP v3 capturado Dados Criptografados

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


Utilizando SNMP v3

104

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.11)
...
# 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key localhost sysLocation.0
SNMPv2-MIB::sysLocation.0 = STRING: Curso

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key localhost sysContact.0
SNMPv2-MIB::sysContact.0 = STRING: Andr Do andredeo@gmail.com

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key localhost sysDescr.0
SNMPv2-MIB::sysDescr.0 = STRING: Computador do Curso

# snmpset -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key localhost sysContact.0 s aulas
Error in packet.
Reason: noAccess
Failed object: SNMPv2-MIB::sysContact.0

Ao informar determinado parmetro no arquivo de configurao do snmpd.conf,


este parmetro se torna apenas leitura, no sendo mais possvel altera-lo pelo comando
set.

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

105

10.2.

Monitoramento de Processos

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

v3 devidamente configurado Monitoramento

mximo
9
3

mnimo
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.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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

106

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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)


# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key localhost .1.3.6.1.4.1.2021.2.1.2.3
UCD-SNMP-MIB::prNames.3 = STRING: postfix

Nome do processo 3: postfix


Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

107

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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


# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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.13)
...
#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%)

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

108

10.3.1.
Acessando o Agent SNMP para leitura de informaes
sobre o disco
# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key localhost .1.3.6.1.4.1.2021.9.1.2.1
UCD-SNMP-MIB::dskPath.1 = STRING: /

Ponto de montagem 1: /
# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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(%)

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

109

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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%)


# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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.14)
...
#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

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

110

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

.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
.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:

1.27)

10.4.1.
Acessando o Agent SNMP para leitura de informaes
sobre Carga de sistema (Load)
# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

111

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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


# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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


Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

112

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 authPriv -a MD5 -A senhateste -x


DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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


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

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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)

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

113

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key localhost .1.3.6.1.4.1.2021.10.1.101.3
UCD-SNMP-MIB::laErrMessage.3 = STRING:

Mensagem de erro do Load 3:

10.5.

Monitoramento de Tamanho de arquivo

# cat snmpd.conf
# /etc/snmp/snmpd.conf v3 devidamente configurado Monitoramento
de Tamanho de arquivo (snmpd.conf.15)
...
# 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:

.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 (=

626kb)

10.5.1.
Acessando o Agent SNMP para leitura de informaes
sobre tamanho de arquivo
# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

114

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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


# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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)


Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

115

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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.16)
...
#exec
Nome
comando
Parmetros
exec
Teste1
/bin/cat
/etc/passwd

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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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


Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

116

# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x


DES -X senha_key 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


# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key 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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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
Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

117

ext4
swap

UUID=16eba1c5-2469-4129-b056-64aeb35bb7c4 /boot
defaults
1 2
UUID=29082312-bca7-41c5-a2b7-fe2acb1d54d2 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.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

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

118

.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

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

Vamos acrescentar mais um comando personalizado:


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

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


# service snmpd restart

Como citado acima, no OID de final .49 exibida a quantidade de linhas que a
execuo do primeiro comando customizado retornou, no OID de final .50 a quantidade
de linhas que a execuo do segundo comando customizado retornou, e assim sucessivamente.
# snmpget -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste -x
DES -X senha_key
lhost .1.3.6.1.4.1.8072.1.3.2.3.1.3.6.84.101.115.116.101.50
NET-SNMP-EXTEND-MIB::nsExtendOutNumLines."Teste2" = INTEGER: 1

10.7.
Monitoramento utilizando um comando customizado, com
OID personalizada
# cat snmpd.conf
Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

119

# /etc/snmp/snmpd.conf v3 devidamente configurado Monitoramento


utilizando um comando customizado com OID personalizada (snmpd.conf.18)
...
# Caso seja especificado um OID, a sada difere um pouco:
#extend
OID
Nome
comando
Parmetros
extend
.1.1.1.1.1
Teste3
/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"

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 authPriv -a MD5 -A senhateste -x DES -X senha_key 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
Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

120

swap

UUID=29082312-bca7-41c5-a2b7-fe2acb1d54d2 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: "#"
.1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.9 = STRING:
"UUID=971a8fa5-5800-4737-b2cd-731a986164f4 /
ext4
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
ext4
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
swap
defaults
0 0"
.1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.12 = STRING: "tmpfs
/dev/shm
tmpfs
defaults
0 0"
.1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.13 = STRING: "devpts
/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: "sysfs
/sys
sysfs
defaults
0 0"
.1.1.1.1.1.4.1.2.6.84.101.115.116.101.50.15 = STRING: "proc
/proc
proc
defaults
0 0"

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

121

Gerenciamento de Redes com SNMP | Monitorando Recursos do Sistema

122

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.19)
...
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 authPriv -a MD5 -A senhateste x DES -X senha_key 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.20)
...
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

123

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


# service snmpd restart

# snmpwalk -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste x DES -X senha_key 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.21)
...
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 authPriv -a MD5 -A senhateste x DES -X senha_key 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)

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


Utilizando SNMP v3 - Casos Especiais e Exemplos

124

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

125

#
group
group

MyRWGroup
MyRWGroup

sec.model
v1
v2c

sec.name
local
local

group
group

cust1_grp
cust1_grp

v1
v2c

cust1_sec
cust1_sec

group
group

cust2_grp
cust2_grp

v1
v2c

cust2_sec
cust2_sec

####
# Terceiro, criar as views para definir quais so os direitos dos
# grupos:
#

incl/excl

subtree

mask
view

all

included

.1

view
view
view

cust1_v
cust1_v
cust1_v

excluded
included
included

.1
sysUpTime.0
interfaces.ifTable.ifEntry.ifIndex.1

view
view
view

cust2_v
cust2_v
cust2_v

excluded
included
included

.1
sysUpTime.0
interfaces.ifTable.ifEntry.ifIndex.2

ff.a0

ff.a0
####
# Por fim, definir as views para os grupos:
#

context

write
notif
access
MyRWGroup ""
all
all
none
access
cust1_grp ""
cust1_v
none
none
access
cust2_grp ""
cust2_v
none
none

sec.model

sec.level

match

any

noauth

exact

any

noauth

exact

any

noauth

exact

read

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.

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


Utilizando SNMP v3 - Casos Especiais e Exemplos

126

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:

e
E
Tabela 04 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.22)
...
view all
excluded
.1
view all
included
sysUpTime.0
view all included
interfaces.ifTable.ifEntry.ifIndex.2 ff.a0

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

127

ifSpecific

ifOutQLen

ifOutErrors

ifOutDiscards

ifOutNUcastPkts

ifOutUcastPkts

ifOutOctets

ifInUnknownProtos

ifInErrors

ifInDiscards

ifInNUcastPkts

ifInUcastPkts

ifInOctets

ifLastChange

ifOperStatus

ifAdminStatus

ifPhysAddress

ifSpeed

3
eth1

ifMtu

2
eth0

ifType

ifDescr

ifIndex

lo

11.2.1.
Acessando o Agent SNMP com acesso restrito Uso do
parmetro mask
# snmpwalk -v 3 -u user1 -n "" -l authPriv -a MD5 -A senhateste x DES -X senha_key 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.23)
...
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 authPriv -a MD5 -A senhateste x DES -X senha_key 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)

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


Utilizando SNMP v3 - Casos Especiais e Exemplos

128

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 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

129

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


Gerenciamento de Redes com SNMP | Comandos SNMP teis

130

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:

The default port number to use


The default snmp version number to use.
The default snmpv1 and snmpv2c community name to use when

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

Other options: finished, list


Select section:
Gerenciamento de Redes com SNMP | Comandos SNMP teis

131

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.

Gerenciamento de Redes com SNMP | Comandos SNMP teis

132

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 authPriv -a MD5 -A senhateste -x
DES -X senha_key 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

133

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
Gerenciamento de Redes com SNMP | Comandos SNMP teis

134

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 objeto e sua descrio:

-Of Ib Td: Exibe 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.5.

Exibindo o OID nominal de um OID numrico

# snmptranslate .1.3.6.1.2.1.1.3
SNMPv2-MIB::sysUpTime

12.3.6.

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

135

12.3.7.

Exibindo a hierarquia da MIB a partir de um galho

# snmptranslate -Tp -IR system

Figura 49 Hierarquia do galho System

12.3.8.

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 50 - Tabela sysORTable

Gerenciamento de Redes com SNMP | Comandos SNMP teis

136

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 Switches e Roteadores, por exemplo.

13.1.
Switch D-Link
13.1.1.
Definir as views

Figura 51 - Definindo as view no ativo

13.1.2.

Mapear nome de comunidade para nome de acesso

Figura 52 - com2sec no ativo

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

137

13.1.3.

Definir os grupos

Figura 53 - Definindo os grupos no ativo

13.1.4.

Definir acesso do grupo na view

Figura 54 - Definindo acesso dos grupos nas views no ativo

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

138

13.1.5.

Definir o IP do gerente

Figura 55 - 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

139

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

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

140

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 all2 1 included
Gerenciamento de Redes com SNMP | Utilizando o SNMP em ativos de rede

141

Definir as permisses dos grupos nas views.


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

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

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

142

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 all3 1 included

Definir as permisses dos grupos nas views.


Router_C2600(config)#snmp-server group rogroup3 v3 authPriv read all3
Router_C2600(config)#snmp-server group rwgroup3 v3 authPriv read all3
write all

Incluir os usurios nos grupos.


Router_C2600 (config)#snmp-server user user1 rogroup3 v3 auth md5 setup_passphrase priv des setup_passkey
Router_C2600 (config)#snmp-server user user2 rwgroup3 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

143

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.


# 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

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.

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

144

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

145

Gerenciamento de Redes com SNMP | Algumas Extenses ao SNMP

146

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.ht
ml
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_TCPIPInternetStandardManagementFramew
orkandSNMPVer-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
Gerenciamento de Redes com SNMP | Referncias

147

Você também pode gostar