André (Luis Boni) Déo
Mestre em Gestão de Redes de Telecomunicações
Administrador de Redes –Gabinete do Reitor (Unicamp)
Professor Universitário há 10 anos
http://andredeo.blogspot.com [email protected]
@deoandre
Co-Autordo Livro de A aZabbix
Revisor Técnico do Livro Gerência de configuração com Puppet
Zabbix+ SNMP
Compartilhando experiências sobre SNMP
Agenda
●Overview SNMP
●MIBs
●SNMP GET x SNMP TRAP
●LLD SNMP
●Processos Zabbix
Agenda
●Onde aprender mais SNMP?
●Dicas e macetes
●Q/A
Overview SNMP
Coleta de Dados
DiagnósticoAção
Overview SNMP
●O Modelo de Gerenciamento OSI/ISO divide as Tarefas/Processos de
Gerenciamento em cinco áreas funcionais:
Overview SNMP
●Gerenciamento de Falhas –FaultManagement;
●Gerenciamento de Configuração –ConfigurationManagement;
●Gerenciamento de Contabilização –AccountingManagement;
●Gerenciamento de Desempenho –Performance Management;
●Gerenciamento de Segurança –Security Management.
Overview SNMP
●Ambiente Gerenciado: O que vamos monitorar.
●Mecanismo Gerenciado: Hardware ou Software que apresenta
necessidadee condiçõesde ser gerenciado.
●Sistema de Gerenciamento de Redes: Grupo de ferramentas
utilizadas para monitoramento e controle da rede (Zabbix).
Overview SNMP
●SNMP (SimpleNetwork Management Protocol)é um protocolo da
camada de aplicação que tem como objetivo principal coletar
informações de dispositivos gerenciáveis.
●Interações sem conexão:
●Mensagens em UDP/IP;
●Portas 161 e 162.
Overview SNMP
●Gerente: Servidor SNMP.
●Agente:Cliente SNMP.
●Operações de Gerenciamento: Ação de ler e escrever em variáveis da
MIB de cada Agente.
Overview SNMP
●MIB (Management InformationBase): Base de Informações de
Gerenciamento
●MIB da Aplicação Gerente conterá a “relação mestre” para as
MIBsde todos os Agentes;
●MIB do Agente é uma coleção de variáveis de interesse, seus
valores dependem das funcionalidades do dispositivo e de quais
recursos ou serviços o agente deverá gerenciar.
Overview SNMP
Overview SNMP
Overview SNMP
●Informações de Gerenciamento:
●Armazenamento: São armazenadas em MIBs;
●Transporte: São transportadas através do protocolo SNMP;
●OIDs(ObjectIDentifiers): Nomes dos objetos gerenciados.
Overview SNMP
Exemplo de Objeto:
OID value: 1.3.6.1.2.1.1.4
OID description:
sysContactOBJECT-TYPE
SYNTAX DisplayString(SIZE (0..255))
ACCESS read-write
STATUS mandatory
DESCRIPTION
"The textual identification of the contact person
for this managed node, together with information
on how to contact this person."
::= { system 4 }
Overview SNMP
Campo SYNTAX
Aceita alguns tipos específicos de aplicação:
•IpAddress: OCTET STRING com 4 bytes;
•Counter: inteiro 32 bits;
•TimeTicks: inteiro 32 bits (1/100 de segundo).
Overview SNMP
Campo ACCESS
Define a acessibilidade do objeto:
•readonly: Somente Leitura;
•read-write: Leitura e Escrita;
•write-only: Somente Escrita;
•not-accessible: Não Acessível.
Overview SNMP
Campo STATUS
Situação do objeto na MIB:
•Mandatory: Devem ser implementados por todos os agentes e os
valores contidos devem ser válidos;
•Optional: Pode ou não ser implementado;
Overview SNMP
Campo STATUS
Situação do objeto na MIB:
•Deprecated:Foi substituído por novo objeto, mas ainda é válido;
se tornará obsoleto mais tarde;
•Obsolete: Não deve ser considerado.
Overview SNMP
Operações e Portas
Overview SNMP
Get-Request: Recupera o valor de informações de gerenciamento.
Overview SNMP
Get-Next-Request: Recupera o valor de informações de gerenciamento
existentes após um determinado identificador; Pega o valor da próxima
variável.
Overview SNMP
Get-Bulk-Request: Estende a funcionalidade da função Get-Next. Traz
um bloco de informações (Tabela) de cada vez.
Overview SNMP
Set-Request: Modifica o valor de informações de gerenciamento.
Overview SNMP
TRAP:Informa um evento ocorrido no sistema gerenciado.
Overview SNMP
SNMP v1 e v2c:Baseado em nomes de comunidade;
SNMP v3:Baseado em usuário e senha; possibilidadede uso de
criptografia.
Overview SNMP
Árvore da MIB-II
MIBs
A implementação do protocolo SNMPem Servidores GNU/Linux se dá
geralmente através do net-snmp(http://www.net-snmp.org).
/usr/share/snmp/mibs: Diretóriopadrãodas MIBs, a principio apenasas
default.
Carregar automáticamentetodas as MIBsdisponíveis no sistema:
# cat /etc/snmp.conf
mibs+ALL
MIBs
Eu preciso ter a MIB do equipamento para ler os dados!
# snmpget-v2c -c publiclocalhostsysContact.0
SNMPv2-MIB::sysContact.0 = STRING: root@localhost
# snmpget-On-v2c -c publiclocalhostsysContact.0
.1.3.6.1.2.1.1.4.0 = STRING: root@localhost
MIBs
Mensagem ao final do snmpwalk. O que significa?
# snmpwalk-v2c -c public localhost
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (159)
0:00:01.59
IF-MIB::ifDescr.1 = STRING: lo
IF-MIB::ifDescr.2 = STRING: enp0s3
IF-MIB::ifDescr.3 = STRING: enp0s8
IF-MIB::ifAdminStatus.1 = INTEGER: up(1)
…
IF-MIB::ifOperStatus.3 = No more variables left in
this MIB View (It is past the end of the MIB tree)
MIBs
Comando remoto em SNMP?
Extend: Permite executar um comando com passagem de parâmetros,
assim como o exec, porém me permite especificar em qual OID as
informações serão armazenadas.
# cat /etc/snmp/snmpd.conf
# /etc/snmp/snmpd.conf-Monitoramentoutilizandoum
comandocustomizadocom OID personalizada
.
.
#extend OID Nome Commando Parâmetros
extend .1.1.1.1.1 Zabbix /bin/bash /etc/snmp/zabbix.sh
MIBs
Processos Zabbix
zabbix_server.confezabbix_proxy.conf:
### Option: StartSNMPTrapper
# If 1, SNMP trapper process is started.
#
# Mandatory: no
# Range: 0-1
# Default:
# StartSNMPTrapper=0
Onde aprender mais SNMP?
●Apostila do Treinamento Gerenciamento de Redes com SNMP
https://andredeo.blogspot.com/2012/04/apostila-do-treinamento-
gerenciamento.html
●Nas RFCs
https://tools.ietf.org/html/
Onde aprender mais SNMP?
●Nas palestras oficiais das Conferencias da ZabbixSIA
https://www.youtube.com/user/ZabbixSIA/playlists
●Nas palestras oficiais do Monitorama
https://www.youtube.com/channel/UCQdmeNw4SE0-XeIu1EGNMsw
Onde aprender mais SNMP?
Dicas e macetes
●Habilite SNMP apenas se for utilizar;
●Utilize a versão 3 com criptografia sempre que possível;
●Evite requisições em lote (snmpbulkwak).