Application Notes: Monitoramento SNMP Monitoramento SNMP com Cacti Application Notes: Monitoramento SNMP Monitoramento SNMP com Cacti Documento de Uso Público. Data 30/04/2010, Revisão 1.1 Introdução Desenvolvimento Introdução A melhor e mais rápida forma de monitorar equipamentos é utilizando o software de gerência da Datacom, chamado DmView. No entanto, algumas redes pequenas podem ser monitoradas com alguma outra ferramenta do mercado, que podem ser gratuitas, como é o caso do Cacti. Este documento visa mostrar alguns exemplos de monitoramento de switches da Datacom, assim como apresentadar as configurações necessárias para o correto funcionamento deste software. Também serão apresentados alguns OID’s especiais presentes na MIB da linha DmSwitch, que são interessantes serem monitorados. Desenvolvimento Configuração do protocolo SNMP no Switch DATACOM SNMP Versão 2 configure ip snmp-server ip snmp-server community DTCMetro ro ip snmp-server contact Suporte - DATACOM telefone (xx)xxxx-xxxx ip snmp-server location NOC DATACOM SNMP Versão 3 configure ip snmp-server ip snmp-server ip snmp-server ip snmp-server ip snmp-server community DTCMetro ro contact Suporte - DATACOM telefone (xx)xxxx-xxxx location NOC DATACOM user userdtc ro sha datacommetro aes chavedeprivacidade Recomendações de segurança no uso do protocolo SNMP Não utilizar as comunidades padrões public ou private. Permitir somente hosts ou redes autorizadas a consultar SNMP. DATACOM 1 Documento de Uso Público Host configure management snmp-client XX.XX.XX.XX/32 Rede configure management snmp-client XX.XX.XX.XX/24 Utilizar SNMP Versão 3, pois possui autenticação criptografada e possibilidade de criptografar informações importantes do pacote SNMP. Utilizar protocolos de autenticação mais robustos como SHA para autenticação e AES para criptografia do pacote SNMP. A autenticação do protocolo SNMP versão 3, utiliza algoritmos de HASH unidirecional, nestes algoritmos não é possível decifrar e retornar ao texto de origem, o método de verificação da autenticação é feito pelo HASH do cliente com o(s) HASH(s) da base de dados do servidor, a escolha entre MD5 ou SHA-1 se deve ao tamanho da chave de cada protocolo, o MD5 possui 128 Bits e o SHA-1 160 Bits. A criptografia do protoco SNMP versão 3, utiliza algoritmos de chave simétrica, o Triple Data Encryption Standard 3-DES ou Advanced Encryption Standard AES, neste tipo de criptografia tanto o emissor quanto o receptor possuem a mesma chave, ou seja, a mesma chave é utilizada na codificação e decodificação. O DES foi criado pela IBM em 1977, na época era um protoco proprietário, utiliza criptografia de 56 bits, o que corresponde a cerca de 72 quadrilhões de chaves diferentes. Apesar de ser um valor bastante alto, foi quebrado em 1997 por ataque força bruta (tentativa e erro), em um desafio feito na Internet. O 3-DES que é utilizado no SNMP V3 é o DES com o processo interno feito três vezes, que gera uma chave de 168 Bits. O AES é o sucessor do DES, é um protocolo aberto, foi adotado como padrão de criptografia pelo governo dos Estados Unidos, sendo esta escolha feita através de um concurso, sua chave tem 192 Bits, apesar de ter a chave maior em relação ao 3-DES, ele é mais rápido e requer menos memória que o 3-DES. criar usuário com autenticação criptografada ip snmp-server user userdtc ro sha datacommetro criar usuário com autenticação e informações importantes do pacote SNMP criptografados ip snmp-server user userdtc ro sha datacommetro aes chavedeprivacidade Adicionar um equipamento no Cacti Management Devices Add SNMP Versão 2 DATACOM 2 Documento de Uso Público SNMP Versão 3 DATACOM 3 Documento de Uso Público Configuração para monitoramento das interfaces 1ª - Criar um arquivo XML que será utilizado para consultar as informações das interfaces do switch Mib IF-MIB, colocar ele no diretório aonde ficam as queries do Cacti, no sistema operacional Ubuntu o caminho é: "/usr/share/cacti/resource/snmp_queries/". <interface> <name>Get SNMP Interfaces</name> <description>Queries a host for a list of monitorable interfaces</description> <oid_index>.1.3.6.1.2.1.2.2.1.1</oid_index> <oid_num_indexes>.1.3.6.1.2.1.2.1.0</oid_num_indexes> <index_order>ifDescr:ifName:ifHwAddr:ifIndex</index_order> <index_order_type>numeric</index_order_type> <index_title_format>|chosen_order_field|</index_title_format> <fields> <ifIndex> <name>Index</name> <method>walk</method> <source>value</source> <direction>input</direction> <oid>.1.3.6.1.2.1.2.2.1.1</oid> </ifIndex> <ifDescr> <name>Description</name> <method>walk</method> <source>value</source> <direction>input</direction> <oid>.1.3.6.1.2.1.2.2.1.2</oid> </ifDescr> DATACOM 4 Documento de Uso Público <ifType> <name>Type</name> <method>walk</method> <source>value</source> <direction>input</direction> <oid>.1.3.6.1.2.1.2.2.1.3</oid> </ifType> <ifSpeed> <name>Speed</name> <method>walk</method> <source>value</source> <direction>input</direction> <oid>.1.3.6.1.2.1.2.2.1.5</oid> </ifSpeed> <ifHwAddr> <name>Hardware Address</name> <method>walk</method> <source>value</source> <direction>input</direction> <oid>.1.3.6.1.2.1.2.2.1.6</oid> </ifHwAddr> <ifOperStatus> <name>Status</name> <method>walk</method> <source>value</source> <direction>input</direction> <oid>.1.3.6.1.2.1.2.2.1.8</oid> </ifOperStatus> <ifInBroadcastPkts> <name>Broadcast Packets In</name> <method>walk</method> <source>value</source> <direction>output</direction> <oid>.1.3.6.1.2.1.31.1.1.1.3</oid> </ifInBroadcastPkts> <ifInMulticastPkts> <name>Multicast Packets In</name> <method>walk</method> <source>value</source> <direction>output</direction> <oid>.1.3.6.1.2.1.31.1.1.1.2</oid> </ifInMulticastPkts> <ifOutBroadcastPkts> <name>Broadcast Packets Out</name> <method>walk</method> <source>value</source> <direction>output</direction> <oid>.1.3.6.1.2.1.31.1.1.1.5</oid> </ifOutBroadcastPkts> <ifOutMulticastPkts> <name>Multicast Packets Out</name> <method>walk</method> <source>value</source> <direction>output</direction> <oid>.1.3.6.1.2.1.31.1.1.1.4</oid> </ifOutMulticastPkts> <ifName> <name>Name (IF-MIB)</name> <method>walk</method> <source>value</source> <direction>input</direction> <oid>.1.3.6.1.2.1.31.1.1.1.1</oid> </ifName> <ifAlias> <name>Alias (IF-MIB)</name> <method>walk</method> <source>value</source> <direction>input</direction> <oid>.1.3.6.1.2.1.31.1.1.1.18</oid> </ifAlias> <ifIP> <name>IP Address</name> <method>walk</method> <source>OID/REGEXP:.*\.([0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})$</source> DATACOM 5 Documento de Uso Público <direction>input</direction> <oid>.1.3.6.1.2.1.4.20.1.2</oid> </ifIP> <!-- 64 bits--> <ifHCInBroadcastPkts> <name>Broadcast In - 64-bit Counters</name> <method>walk</method> <source>value</source> <direction>output</direction> <oid>.1.3.6.1.2.1.31.1.1.1.9</oid> </ifHCInBroadcastPkts> <ifHCInMulticastPkts> <name>Multicast In - 64-bit Counters</name> <method>walk</method> <source>value</source> <direction>output</direction> <oid>.1.3.6.1.2.1.31.1.1.1.8</oid> </ifHCInMulticastPkts> <ifHCOutBroadcastPkts> <name>Broadcast Out - 64-bit Counters</name> <method>walk</method> <source>value</source> <direction>output</direction> <oid>.1.3.6.1.2.1.31.1.1.1.13</oid> </ifHCOutBroadcastPkts> <ifHCOutMulticastPkts> <name>Multicast Out - 64-bit Counters</name> <method>walk</method> <source>value</source> <direction>output</direction> <oid>.1.3.6.1.2.1.31.1.1.1.12</oid> </ifHCOutMulticastPkts> </fields> </interface> 2º - Adicionar no Cacti o arquivo XML criado no item anterior Collection Methods Data Queries Add Name -> DATACOM - IF-MIB Modified Description -> DATACOM XML Path -> <path_cacti>/resource/snmp_queries/interface.xml.datacom Data Input Method -> Get SNMP DATA (Indexed) 3ª - Data Templates No Cacti existem alguns data templates que já vem predefinidos no software e que são interessantes para gerência das interfaces como: errors/discards, unicast, traffic in/out, mas para monitorarmos Broadcast e Multicast será necesário criarmos os data templates. Broadcast Criar um novo template Templates Data Templates Add DATACOM 6 Documento de Uso Público Configurar os data sources DATACOM 7 Documento de Uso Público Multicast Para criarmos o Data Template para tráfego Multicast podemos utilizar como base as imagens anteriores de tráfego Broadcast, porém trocando os parâmetros a seguir: Data Data Data Data Templates - Name -> Interface - Multicast Packets Source - Name -> |host_description| - Multicast Packets Source Item - Internal Data Source Name -> multicast_in Source Item - Internal Data Source Name -> multicast_out 4ª - Graph Templates Templates Graph Templates Add Criar um template do gráfico DATACOM 8 Documento de Uso Público Adicionar itens ao gráfico Item1 - Gráfico Tráfego Entrada DATACOM 9 Documento de Uso Público Item2 - Legenda Tráfego Atual Item3 - Legenda Tráfego Médio DATACOM 10 Documento de Uso Público Item4 - Legenda Tráfego Máximo Item5 - Gráfico Tráfego Saída DATACOM 11 Documento de Uso Público Item6 - Legenda Tráfego Atual Item7 - Legenda Tráfego Médio DATACOM 12 Documento de Uso Público Item8 - Legenda Tráfego Máximo Configuração para monitoramento de CPU e memória 1ª - Data templates CPU Templates Data Templates Add Criando um novo template DATACOM 13 Documento de Uso Público Configurando o Custom Data DATACOM 14 Documento de Uso Público Memória Para criarmos o Data Template para consulta de memória podemos utilizar como base as imagens anteriores de consulta a CPU, porém trocando os parâmetros a seguir: Data Templates - Name -> DATACOM - 5 Minute Memory Data Source - Name -> |host_description| - 5 Minute Memory Data Source Item - Internal Data Source Name -> datacom_memory Data Source Item - Maximum Value 100 Custom Data - OID -> .1.3.6.1.4.1.3709.3.5.201.1.1.11.0 Outros OIDs Linha 3000 ou 4000 Utilização do processador CPU swCpuUsage .1.3.6.1.4.1.3709.3.5.201.1.1.10.0 Utilização de memória swMemUsage .1.3.6.1.4.1.3709.3.5.201.1.1.11.0 Número total de MACs switchMacAddrUsageTable .1.3.6.1.4.1.3709.3.5.201.1.1.12 Versão do hardware swHardwareVer .1.3.6.1.4.1.3709.3.5.201.1.1.2.1.2 Versão do Firmware DATACOM 15 Documento de Uso Público swFirmwareVer .1.3.6.1.4.1.3709.3.5.201.1.1.2.1.4 Data de versão do Firmware swFirmwareReleaseDate .1.3.6.1.4.1.3709.3.5.201.1.1.2.1.11 Versão do Bootloader swBootLoaderVer .1.3.6.1.4.1.3709.3.5.201.1.1.2.1.3 Números de portas no Switch swPortNumber .1.3.6.1.4.1.3709.3.5.201.1.1.2.1.5 Número de série do equipamento swSerialNumber .1.3.6.1.4.1.3709.3.5.201.1.1.2.1.8 Modelo do equipamento swProdModelId .1.3.6.1.4.1.3709.3.5.201.1.1.2.1.10 Identificação do produto switchProductId .1.3.6.1.4.1.3709.3.5.201.1.1.3 Tabela de Vlans vlanTable .1.3.6.1.4.1.3709.3.5.201.1.12.1 Hora atual do equipamento sysCurrentTime .1.3.6.1.4.1.3709.3.5.201.1.20.2 Broadcast Storm Control por interface (Status "ativo=1 e inativo=1" e pacotes por segundo) bcastStormTable .1.3.6.1.4.1.3709.3.5.201.1.11.1 Endereço IP do Default Gateway ipDefaultGateway .1.3.6.1.4.1.3709.3.5.201.1.10.2 Status Procolo HTTP (ativo=1 e inativo=0) ipHttpState .1.3.6.1.4.1.3709.3.5.201.1.10.5 Status Protocolo HTTPS (ativo=1 e inativo=0) ipHttpsState .1.3.6.1.4.1.3709.3.5.201.1.10.7 Endereço DNS Server primário (senão estiver configurado, retornará 0.0.0.0) DATACOM 16 Documento de Uso Público ipPrimaryDnsServer .1.3.6.1.4.1.3709.3.5.201.1.10.3 Endereço DNS Server secundário (senão estiver configurado, retornará 0.0.0.0) ipSecondaryDnsServer .1.3.6.1.4.1.3709.3.5.201.1.10.4 Linha 4000 Número de slots que o equipamento possui swSlotNumber .1.3.6.1.4.1.3709.3.5.201.1.1.13 Informações sobre as MPU(s)(Index, Versão do Boot Loader, MPU Ativa=1 Standby=2, Número Serial e Identificação do modelo) switchMpuTable .1.3.6.1.4.1.3709.3.5.201.1.1.14 2ª Graph Management O Switch DATACOM retorna o counter de processamento em 1000% e não 100%, para os gráficos ficarem de acordo com o mais usual que seria 100%, devemos criar uma definição customizada "CDEF" para dividir os dados coletados por 100. Management Graph Management ---CDEFs Add Name -> CPU CDEF Items -> Add Item 1 Special Data Source Current Graph Item Data Source Item 2 Custom String 100 Item 3 Operator / 3ª Graph templates Templates Graph Templates Add DATACOM 17 Documento de Uso Público Criar um template do gráfico DATACOM 18 Documento de Uso Público Adicionar itens ao gráfico Item 1 - Gráfico Processamento CPU DATACOM 19 Documento de Uso Público Item 2 - Legenda Processamento Atual Item 3 - Legenda Processamento Médio DATACOM 20 Documento de Uso Público Item 4 - Legenda Processamento Máximo Para criarmos o Graph Template para consulta de memória podemos utilizar como base as imagens anteriores do gráfico de processamento, porém trocando os parâmetros a seguir: Graph Template Template -> DATACOM - Memory Usage Graph Template - Title -> |host_description| - Memory Usage Graph Template - Upper Limit -> 100 Itens do Gráfico Data Source -> DATACOM 5 Minute Memory - (datacom_memory) CDEF Function -> None Associar os templates dos gráficos de Broadcast e Multicast ao Data Queries. Collection Methods Data Queries Add DATACOM 21 Documento de Uso Público Clicar em IF-MIB Modified Add Name -> Broadcast Graph Template -> Interface - Broadcast Packets Add Name -> Multicast Graph Template -> Interface - Multicast Packets DATACOM 22 Documento de Uso Público Configurar para gerar gráficos por média,máximo Por default os Round Robin Archives RRA no Cacti são configurados para manter a média e a máxima dos pontos coletados, mas a área do gráfico é gerados pela média dos pontos coletados, para trocarmos a área do gráfico para máxima dos pontos coletados, temos que alterar o item do gráfico. É importante ressaltar que a média ou máxima dos gráficos se aplicam somente a gráficos semanais,mensais ou anuais e não para gráficos diários. Templates Graph Templates Interface - Traffic (bits/sec) Item 1 Consolidation Function -> MAX DATACOM 23 Documento de Uso Público Associar e adicionar gráficos nos dispositivos Management Devices Associated Graph Templates DATACOM - Cpu Usage Add DATACOM - Memory Usage Add Associated Data Queries IF-MIB Modified Add SNMP - Interface Statistics Add Criar os gráficos para o Host Create Graphs for this Host Selecionar os gráficos desejados, após clicar em create. Adicionar o Host na árvore de gráficos do Cacti Management Graph Trees Add DATACOM 24 Documento de Uso Público Visualização dos Gráficos Legenda M Mega k Mil Traffic In/Out Unicast DATACOM 25 Documento de Uso Público Broadcast Multicast DATACOM 26 Documento de Uso Público Errors/Discards Processamento DATACOM 27 Documento de Uso Público Memória DATACOM 28 Documento de Uso Público