Prévia do material em texto
0 IFRO Instituto Federal de Educação, Ciência e Tecnologia de Rondônia Secretaria de Educação Profissional e Tecnológica Curso Técnico em Informática Integrado E-Mail: campusjiparana@ifro.edu.br – Internet: www.ifro.edu.br MONITORAMENTO DE REDES DOMÉSTICAS COM NAGIOS E CACTI. Fabrício Martins Cardoso Leonardo Fraga Silva Ji-Paraná 2013 mailto:campusjiparana@ifro.edu.br 1 Fabrício Martins Cardoso Leonardo Fraga Silva MONITORAMENTO DE REDES DOMÉSTICAS COM NAGIOS E CACTI. Ji-Paraná 2013 Trabalho de conclusão de conclusão de curso, submetido ao IFRO como parte dos requisitos para a obtenção do grau Técnico em Informática. Orientador: M.Sc. Juliano Fischer Naves. 2 “Meus filhos terão computadores, sim, mas antes terão livros. Sem livros, sem leitura, os nossos filhos serão incapazes de escrever - inclusive a sua própria história.” Bill Gates 3 RESUMO Este trabalho abordará a importância de realizar o gerenciamento de rede dentro de uma estrutura residencial, onde ele torna-se fundamental para poder detectar e prevenir falhas. Os sistemas de monitoramento utilizados são: Cacti e Nagios. O Nagios faz gerenciamento de serviços, ativos da rede e hardware, objetivando detectar falhas, gerar alertas e notificações de eventos, já o Cacti faz o gerenciamento de desempenhos a respeito de aplicativos e hardware da rede, gerando gráficos de seus estados. Com as expansões das redes de computadores e o avanço de novas tecnologias, torna-se necessário monitorar e detectar problemas no tráfego de rede. Monitorando uma rede pode-se coletar informações sobre o tráfego de rede que passa pelo adaptador de rede do computador em que ele está instalado. Assim que obtiver tais informações, será possível usar o monitor de rede para analisar as informações, criar estratégias para impedir futuros problemas no tráfego de rede, diagnosticar padrões de tráfego. Palavras-Chaves: Redes, Monitoramento, Cacti, Nagios, Gerenciamento. ABSTRACT This paper will address the importance of performing network management within a residential structure, where it becomes essential to be able to detect and prevent failures. The monitoring systems are used Cacti and Nagios. Nagios makes service management, asset and network hardware, in order to detect faults, generate alerts and notifications of events, as Cacti does about performance management applications and network hardware, generating graphs of their states. With the expansion of computer networks and the advancement of new technologies, it is necessary to monitor and detect problems in network traffic. Monitoring a network can collect information about network traffic passing through the network adapter of the computer where it is installed. Once you have obtained this information, you can use Network Monitor to analyze information, develop strategies to prevent future problems in network traffic, diagnose traffic patterns. Keywords: Networking, Monitoring, Cacti, Nagios, Management 4 SUMÁRIO 1. INTRODUÇÃO .................................................................................................5 1.1 OBJETIVOS .....................................................................................................6 1.2 JUSTIFICATIVA ...............................................................................................6 1.3 PROBLEMATIZAÇÃO ......................................................................................6 1.4 MOTIVAÇÃO ....................................................................................................6 2. FUNDAMENTAÇÃO TEÓRICA .......................................................................7 2.1 INTRODUÇÃO AO GERENCIAMENTO DE REDES .......................................7 2.2 MODALIDADES DE MONITORAMENTO ........................................................8 2.2.1 Monitoramento local ..................................................................................9 2.2.2 Monitoramento web ...................................................................................9 2.2.3 Software proprietário .................................................................................9 2.2.4 Software livre ..............................................................................................9 2.3 PROTOCOLO SNMP ......................................................................................10 2.4 PREVENIR E DETECTAR FALHAS EM UMA REDE .....................................11 3. METODOLOGIA .............................................................................................12 3.1 SOFTWARE DE MONITORAMENTO DE REDE NAGIOS .............................12 3.1.1 Plugins .......................................................................................................13 3.1.2 Monitoramento ..........................................................................................14 3.1.3 Apresentação dos resultados ..................................................................15 3.2 SOFTWARE DE MONITORAMENTO DE REDES CACTI ..............................16 3.2.1 Gráficos .....................................................................................................17 3.2.2 Monitoramento ..........................................................................................17 3.2.3 Apresentação dos resultados ..................................................................18 3.3 CACTI X NAGIOS ...........................................................................................19 3.4 AMBIENTE DE MONITORAMENTO ...............................................................19 3.5 DIFICULDADES ENCONTRADAS .................................................................20 4. CONSIDERAÇÕES FINAIS ............................................................................22 5. REFERÊNCIAS ..............................................................................................23 5 1. INTRODUÇÃO O gerenciamento de redes consiste em buscar informações sobre o tráfego de uma rede, analisar os dados obtidos e procurar uma possível solução para os erros encontrados. Nesse trabalho será abordado o uso de dois softwares, o Cacti e o Nagios, que tem como função monitorar as redes de computadores, aqui descrevendo o uso em redes domesticas. Gerenciar uma rede com softwares inadequados, é uma tarefa complexa e que provavelmente não se obtém um resultado satisfatório, pois não é oferecido uma visão dos principais elementos da rede. Desta forma, quando não estamos bem equipados, não conseguimos descobrir problemas e por consequência, não conseguimos solucioná-los, com isso o objetivo principal, que é manter o bom funcionamento da rede, não será alcançado. Nesse documento é sugerido o uso de softwares de grande renome no monitoramento de redes, o Cacti e o Nagios, que tem grande eficiência e eficácia em sua área. Será tratado aqui as principais vantagens e desvantagens, do uso em conjunto e separado desses softwares e que também é possível obter resultados satisfatórios empregando eles em redes de pequeno porte. 6 1.1 OBJETIVOS Este trabalho tem como objetivo geral compreender o contexto de monitoramento de redes doméstica com Nagios e Cacti, levantando informações sobre o monitoramento e controle dos dispositivos que a compõem. Como: Analisar e demonstrar técnicas de monitoramento. Pesquisar técnicas de gerenciamento de redes. Detectar falhas em uma rede pequena. Diagnosticar padrões de tráfego em uma rede pequena. Controlar o funcionamentode uma rede de computadores. Otimização do uso de recursos disponíveis. 1.2 JUSTIFICATIVA O trabalho proposto analisa softwares de monitoramento de rede e o trafego da mesma, visto que o não conhecimento de técnicas adequadas, que permitam encontrar e analisar os possíveis problemas em uma rede doméstica gera uma demora excessiva para diagnosticá-los e resolvê-los. Sendo assim, como consequência para os moradores da residência, tem-se prejuízos financeiros devido a equipamentos parados por dispositivos defeituosos. 1.3 PROBLEMATIZAÇÃO Um dos principais problemas é a segurança, congestionamento do tráfego, recursos mal utilizados e recursos sobrecarregados. A rede sem um gerenciamento fica vulnerável, e o software ajuda a diminuir o números de falhas, não havia um diagnóstico preciso quanto ao tráfego da rede, pois há falta de conhecimento de técnicas de monitoramento. 1.4 MOTIVAÇÃO Identificar as dificuldades existentes para gerência de redes no contexto dos administradores iniciantes, e encontrar soluções que auxiliem no gerenciamento, com relação a identificação dos possíveis problemas em uma rede. 7 2. FUNDAMENTAÇÃO TEÓRICA Neste tópico são apresentados os conceitos relacionados às pesquisas realizadas para o desenvolvimento do trabalho proposto. Dentre as referências consultadas para realização do trabalho de conclusão de curso sobre gerenciamento de rede, podemos destacar os seguintes: Ambiente de rede monitorado com nagios e cacti do autor COSTA (2008), Redes de computadores do autor TANEMBAUM (1997). 2.1 INTRODUÇÃO AO GERENCIAMENTO DE REDES A área de gerencia de redes foi inicialmente impulsionada pela necessidade de monitoração e controle do universo de dispositivos que compõem as redes de comunicação. Atualmente as redes de computadores e os seus recursos associados, além das aplicações distribuídas tem se tornado fundamental e de tal importância para uma organização, que elas basicamente "não podem falhar". Isto significa que o nível de falhas e de degradação de desempenho considerados aceitáveis está cada vez diminuindo, sendo este nível próximo a zero, dependendo da importância da rede para uma instituição/residência. (COSTA, 2008) Envolve o planejamento, a organização, a monitoração, a contabilização, a segurança e o controle de atividades e recursos físicos e lógicos. A gerência em redes de computadores torna-se tarefa complexa em boa parte por consequência do crescimento acelerado das mesmas tanto em desempenho quanto em suporte a um grande conjunto de serviços. Além disso, os sistemas de telecomunicações, parte importante e componente das redes, também adicionam maior complexidade, estando cada vez mais presentes, mesmo em pequenas instalações. Admitindo-se que as ferramentas para gerência de redes não abrangem toda a gama de problemas de uma rede e que estas nem sempre são usadas nas organizações que possuem redes, se faz necessário que outros mecanismos de gerência sejam utilizados para suprir suas carências mais evidentes. (COSTA, 2008) As informações que circulam em uma rede de computadores devem ser transportadas de modo confiável e rápido. Para que isso aconteça é importante que os dados sejam monitorados de maneira que os problemas que porventura possam existir sejam detectados rapidamente e sejam solucionados eficientemente. 8 Uma rede sem mecanismos de gerência pode apresentar problemas que irão afetar o tráfego dos dados, bem como sua integridade, como problemas de congestionamento do tráfego, recursos mal utilizados, recursos sobrecarregados, problemas com segurança entre outros. O gerenciamento está associado ao controle de atividades e ao monitoramento do uso dos recursos da rede. A tarefa básica que uma gerência de rede deve executar envolve a obtenção de informações da rede, tratar estas informações possibilitando um diagnóstico seguro e encaminhar as soluções dos problemas. Para cumprir estes objetivos, funções de gerência devem ser embutidas nos diversos componentes da rede, possibilitando descobrir, prever e reagir a problemas. Segundo Costa, uma parte significativa do processo de gerenciamento baseia-se na aquisição de informações sobre a rede, sendo as mais importantes àquelas relativas a erros, falhas e outras condições excepcionais. Tais dados devem ser armazenados em forma bruta, sendo importante definir os valores aceitáveis como limiares de tolerância que, quando ultrapassados, determinam uma sinalização para pedir intervenção de um operador, ou o início de uma operação corretiva. Tais limites não são necessariamente absolutos, tais como a taxa de erros num enlace de dados, sendo necessário dispor de estatísticas de erros em função do tráfego existente. Um determinado limiar pode ser aceitável numa situação de carga leve na rede, mas intolerável numa outra situação, de carga mais intensa, no qual o número de retransmissões faria com que o tráfego total excedesse a capacidade do enlace, afetando seriamente o tempo de resposta. 2.2 MODALIDADES DE MONITORAMENTO Quando escolhemos uma determinada tecnologia de monitoramento de redes, podemos ter certas restrições que podem fazer com que nós se torne dependentes da tecnologia escolhida, devido à dificuldade de troca dessa tecnologia por uma outra no futuro. A esse processo é dado o nome de aprisionamento tecnológico. (TANENBAUM, 1997) Concluímos que quando se faz uma escolha errada da tecnologia de monitoramento pode forçar a utilizador a continuar usando o sistema vigente, ou seja, leva a um aprisionamento aos sistemas já instalados. 9 Os sistemas de monitoramento podem ser classificados quanto à sua extensão de gerência (local e Web) e quanto ao custo e restrições do software (proprietário e livre). 2.2.1 Monitoramento local Além das ferramentas de monitoramento não serem integradas, elas comumente têm um enfoque local, sendo portanto limitadas no escopo de monitoramento, ou seja, apresentam o problema da escalabilidade, sendo adequadas para gerenciar somente ambientes de pequeno porte. Esses motivos contribuem para explicar o porquê da tarefa de monitoramento ser tão complexa. 2.2.2 Monitoramento web O monitoramento Web é possível diminuir a distância entre os dispositivos e o administrador da rede, permitindo que o gerenciamento dos ativos de redes seja realizado de qualquer lugar do mundo, sendo preciso apenas a existência de um navegador cliente, que se conecta a um servidor onde estão armazenadas todas as informações necessárias para o monitoramento. 2.2.3 Software proprietário O software proprietário é regido por uma série de normas que visam limitar o seu uso ao número de licenças adquiridas e é necessário pagar por cada cópia instalada. A livre distribuição não é aceita e é considerada um ato ilícito. Também não é permitido acesso ao código-fonte, nem tão pouco alterá-lo, o que torna a personalização e, consequentemente, melhorias e correções no programa, impossíveis. 2.2.4 Software Livre O software livre pode ser distribuído de forma gratuita. Ele possui as premissas de liberdade de instalação, possibilidade de modificações e aperfeiçoamentos para necessidades específicas; distribuição da forma original ou modificada, com ou sem custos. Contrapõe-se ao modelo do software proprietário 10 onde o usuário de software não tem permissão para redistribuí-lo nem alterar seu funcionamento para ajustar-se às suas necessidades. 2.3 PROTOCOLO SNMP Antigamente, as redes eram simples, os números de roteadores eram pequenos, quando havia demora no acesso a um host, chamava-se o responsável pela rede, onde, para detectar o problema, ele simplesmente executaria o Ping, e certamente ele o detectaria e assim poderia tomar providências para resolver tal problema. “O protocolo SNMP (Simple Network Management Protocol)é um protocolo da camada de aplicação, de gerência típica de redes IP, que facilita a comunicação de informação entre os dispositivos de rede, como placas e comutadores. É através do SNMP que os administradores de rede, conseguem gerenciar o desempenho da rede, e desta forma resolver possíveis problemas na rede.” (TANENBAUM, 1997) O SNMP fez um grande sucesso pelo fato de ter sido ele o primeiro protocolo de gerenciamento não proprietário, público, fácil de ser implementado e que possibilita o gerenciamento efetivo de ambientes irregulares. Existem três versões desse protocolo. A segunda versão tenta dar suporte para a transferência eficiente de grandes blocos de dados e dar estratégias de gerenciamento de rede centralizado, problemas que não foram abordados na primeira versão. Outra questão que não foi implementada na versão SNMP1 foi a segurança, que é a principal meta da versão SNMP3. (TANENBAUM, 1997) No gerenciamento SNMP é adicionado um componente ao hardware (ou software) que estará sendo controlado recebendo o nome de agente. Este agente é encarregado de coletar os dados dos dispositivos e armazená-los em uma estrutura MIB (Management Information Base). Além desta base de dados, normalmente é desenvolvido um software aplicativo com a habilidade de sumarizar estas informações e exibi-las nas estações encarregadas das tarefas de monitorar a rede. Estas estações são chamadas de nó gerente e é onde processos gerentes são executados. A escolha da utilização de UDP como protocolo de transporte para o SNMP, aconteceu devido ao fato deste tipo de protocolo não orientado a conexão ter a 11 habilidade de continuar funcionando quando a rede falha. O mito diz que se fosse utilizada uma conexão TCP, esta seria desfeita enquanto que o UDP continuaria funcionando para salvar o dia. Só que existe uma diferença básica entre gerenciamento de redes em termos de monitoração e gerenciamento de redes em termos de resolução de problemas. Podemos dizer que a totalidade do gerenciamento de redes que vem sendo feito é quando a rede não está falhando, e até porque hoje quando há uma pane de rede é devido a problemas físicos e assim nem o TCP nem tão pouco o UDP irão funcionar. Com este ponto de vista, nós podemos dizer que as vantagens da utilização do UDP como protocolo de transporte é realmente apenas um mito, e que o TCP pode ser utilizado como protocolo de transporte para o SNMP e com vantagens quando se está fazendo monitoramento. As implementações básicas do SNMP permitem monitorar e isolar falhas, já as aplicações mais sofisticadas permitem gerenciar o desempenho e a configuração da rede. Estas aplicações, em geral, incorporam menus e alarmes para facilitar a interação com o profissional que está gerenciando a rede. 2.4 PREVENIR E DETECTAR FALHAS EM UMA REDE Já que as falhas sempre acontecerão, então é necessário ter um mecanismo para percebermos rápido que uma falha aconteceu e modos de analisar a falha para mostrar sua causa fundamental. Existem modos de procurar as falhas como: a verificação no processo, o diagnóstico de maquinas entre outras. O gerente de redes tem como prioridade ter estratégias que diminuem a probabilidade de falhas e aprendem com as falhas que acontecem. A prevenção e recuperação de falhas repercutem na melhoria da produção. Há vários métodos de prevenção como: o uso da criptografia no envio de dados, monitoramento do sistema, cuidados com a criação de novos usuários e uso de firewall, pois o firewall é um sistema desenvolvido para prevenir acessos não autorizados a uma rede local de computadores. Os firewalls são implementados através de programas de computador e dispositivos eletrônicos. Através dele, os dados que entram ou saem da rede são examinados com a finalidade de bloquear os dados que não estão de acordo com os critérios de segurança. 12 Apenas usuários autorizados podem ter acesso à rede e dentro da rede, eles só podem ter acesso aos recursos realmente necessários para a execução de suas tarefas. Sendo que os recursos críticos devem ser monitorados e seu acesso restrito a poucas pessoas. 3. METODOLOGIA Foi realizado pesquisa de software de gerenciamento de rede, onde o objetivo, era conseguir técnicas que pudessem auxiliar administradores a gerenciar suas redes com uma maior eficiência. Existem diversas ferramentas que fazem o serviço de gerenciamento, muitas destas, são comercializadas por empresas de desenvolvimento de software as quais dependendo, cobram um preço absurdo por licença para utilização. Outras opções eram os chamados softwares livre, desenvolvidos por comunidades ao redor do mundo, que disponibilizam distribuições de forma gratuita e que também não deixam nada a desejar, com relação às opções comerciais pagas. Após ter procurado vários software, com intuito de encontrar ferramentas com um ótimo desempenho, e que realizassem gerenciamento com satisfação, optei por utilizar o software “Nagios” e o “Cacti”. Ambos possuem a versão free e depois de escolher quais ferramentas trabalhar para realizar os testes de gerenciamento, realizei o download dos softwares, e fui para o próximo passo, que era a instalação, ambos foram instalados no Linux 13.04. 3.1 SOFTWARE DE MONITORAMENTO DE REDE NAGIOS O Nagios é um aplicativo de monitoramento de sistemas de redes, podendo ser estendido amplamente a um gerenciador de redes, graças aos diversos plug- ins disponíveis em sua comunidade. Ele verifica clientes e serviços especificados, gerando alertas quando algo está fora dos padrões pré-definidos. Originalmente desenvolvido para rodar em Linux. Algumas das várias ferramentas do Nagios incluem: Monitoramento de redes e serviços (SMTP, POP3, HTTP, NNTP,PING, etc.); Monitoramento dos recursos de clientes (carga de processador, uso de disco, etc.); 13 Organização simples de plugins que permite aos usuários facilmente desenvolverem seus próprios serviços de checagem; Checagem paralela de serviço; Habilidade para definir hierarquia de redes de clientes usando clientes pais (parent hosts), permitindo a detecção e distinção entre clientes que estão desativados e aqueles que estão inalcançáveis. Notificação de contatos quando problemas em serviços e clientes ocorrem ou forem resolvidos (via e-mail, pager, ou métodos definidos pelo usuário); Habilidade para definir tratadores de eventos (event handlers) que serão executados durante eventos de serviços ou clientes na tentativa de resolução de problemas; Rotação automática de arquivos logs; Interface web opcional para visualização do status atual da rede, histórico de notificações e problemas, arquivos de log, etc; A única exigência para rodar o nagios é ter um computador rodando Linux e um compilador em C, além de ter, evidentemente, a pilha TCP/IP instalada, já que a maioria das checagens de serviço serão feiras através da rede. Não é obrigatório usar os CGIs incluídos com Nagios por padrão, mais se optar usá-los, os seguintes programas são necessários: 1. Um servidor web (preferencialmente apache2); 2. Gd library de Thomas Boutell versão 1.6.3 ou superior (requisito exigido pelos CGIs statusmap e trends). 3.1.1 Plugins O Nagios é um sistema de monitoramento vazio sem seus plugins, em outras palavras, para adicionar funcionalidades ao Nagios é necessária a instalação de plugins. Segundo Tanenbaum (1997), plug-ins são executáveis compilados ou scripts desenvolvidos em Schell Script, Perl, entre outros, utilizados na linha de comando para checar o estado de um host ou serviço. Assim os plugins possuem um papel importante para o desempenho das funções da ferramenta Nagios. Eles são aplicativos intermediários entre o Nagios e as estações a serem monitoradas. 14 O Nagios é um aplicativo que em sua arquitetura permite o acréscimo de novos plug-inscom novas funcionalidades, desenvolvidos em paralelo e podem ser incrementados como uma atualização conforme a necessidade existente. 3.1.2 Monitoramento Os servidores Nagios distribuídos, talvez em diferentes filiais de uma companhia, trabalham como instâncias autônomas, exceto por eles enviarem os resultados para o escritório principal. Isto não verifica as redes descentralizadas de forma ativa, mas processa informações enviadas das filiais em uma maneira puramente passiva. Este tipo de monitoramento permite o balanceamento da carga de memória, da CPU, etc. Os servidores secundários podem conter apenas o “esqueleto” do Nagios e o aplicativo NSCA. (TANENBAUM. 2003) O Nagios efetua uma verificação ativa de um serviço em um host remoto. Assim que a resposta é recebida, o resultado é enviado de forma automática para o cliente NSCA. O cliente NSCA envia o resultado para o daemon NSCA localizado no servidor central que escreve um comando de processamento de resultado no arquivo de comandos externos, informando ao Nagios central as ocorrências. Este por sua vez faz uma leitura periódica do arquivo de comandos externos e, a seguir, executa o comando de processamento de resultado, recebendo assim o resultado da verificação. O monitoramento redundante, diretamente ligado ao monitoramento distribuído, representa os servidores paralelos, responsáveis pela coleta de dados. No caso do servidor Nagios central apresentar alguma falha e, em consequência disso, se desconectar da rede, um destes servidores paralelos pode assumir o lugar do Nagios central. Há a hipótese, ainda, de um host cliente deixar de responder a solicitações de ping de forma eventual, estado conhecido como flapping. Este caso, de acordo com os criadores do Nagios, é um evento normalmente associado a defeitos de configuração, gerando uma corrente de notificações de erro e recuperação. O Nagios permite o monitoramento de clusters, tanto de computadores, oferecendo diversos serviços, quanto dos próprios serviços, como se estes fossem um único computador ou um único serviço. 15 3.1.3 Apresentação dos resultados O Nagios confirmou aquilo que se encontra documentado vastamente na internet: um software abrangente e experiente com algumas particularidades, notadamente no que diz respeito à segurança, com suporte à todas tecnologias padrão de mercado, tais como SSL, kerberos, HTTPS no WebGUI e diversas configurações especificas para seu código, facilmente encontradas na sua documentação. Destaca-se a capacidade de monitoramento de dispositivos, com muitas opções disponíveis não somente na instalação padrão, mais também nos plugins desenvolvidos por sua comunidade. O nagios é se mostrou um software de qualidade e que atende todos os requisitos de um bom gerenciamento de redes, possuindo diversas vantagens, sendo elas: Monitoramento intrusiva e não intrusiva; Monitoramento de servidores (Windows / Linux), serviços e equipamentos ativos da rede; Possibilidade de desenvolvimento, de plugins específicos às necessidades de cada administrador. Estes plugins podem ser desenvolvidos nas mais diversas linguagem de programação; Escalável, uma vez que os processos de monitorização são executados de forma paralela; Capacidade de distribuir a monitorização por vários servidores Nagios, agregando posteriormente numa única interface todos os parâmetros monitorizados; Notificação para quando é detectado um problema e para quando o mesmo é considerado resolvido. Estas notificações podem ser sob a forma de email, sms ou qualquer outro meio que possa ser despoletado via script criado pelo administrador; Capacidade de executar ações de resolução sobre os problemas quando estes são detectados pelo Nagios; Vários níveis de estado dos serviços monitorizados; O nagios possui vários níveis de estado dos serviços que estão sendo monitorados. Como por exemplo: 16 UNKNOWN: Quando não é possível obter informação sobre o elemento monitorado; OK: Quando o elemento monitorado está a funcionado sem problemas; WARNING: Quando o elemento monitorado está acima do valor definido para Warning (Este valor é definido de forma independente para cada serviço) Por exemplo, quando uma fila de email contém mais de 200 emails para entregar; CRITICAL: Quando o elemento monitorado está acima do valor definido para Critical (Este valor é definido de forma independente para cada serviço) ou deixou de responder aos pedidos do servidor Nagios. Seguindo o exemplo anterior, quando por exemplo a fila passa o limite de 400 emails; 3.2 SOFTWARE DE MONITORAMENTO DE REDES CACTI O Cacti é uma ferramenta web de fácil utilização para monitoramento de redes e de seus recursos (como tráfego de dados, computadores ativos da rede e etc.), e de seus hosts (como uso de disco, login de usuário, uso de swap, memória e etc.) utilizando como ferramenta o gerenciamento do protocolo SNMP. Cacti é uma ferramenta administrativa de rede, que recolhe e exibe informações sobre o estado de uma rede de computadores através de gráficos. Permitindo o monitoramento e gerenciamento de redes simples até redes complexas, com centenas de dispositivos. Cacti é traduzida como uma ferramenta de busca e exibe em forma de gráficos informações de uma rede de computadores, também é definido como uma solução completa de gráficos de rede, recolhendo e exibindo informações sobre seu estado. Cacti se mostra robusto e ao mesmo tempo de fácil usabilidade, feito para ser flexível se adaptando a diversas necessidades. (TANENBAUM, 1997). Dentre suas vantagens está o fato de dispor um poller rápido, templating de gráfico avançado, métodos de aquisição de dados múltiplos, administração de usuário, estado de elementos de rede, programas, largura de banda utilizada e uso de CPU. Tudo isto forma um pacote intuitivo e uma interface de fácil uso para redes pequenas e até redes complexas com centenas de dispositivos. 17 O monitoramento de redes usando o Cacti é bastante fácil e agradável, e o objetivo deste curso é ensinar o usuário a instalar e configurar essa ferramenta de grande usabilidade no mundo tecnológico atual. E o melhor, é um programa LIVRE, ou seja, disponibilizado para qualquer um baixá-lo e instalá-lo em seu computador. 3.2.1 Gráficos Possui uma interface web e armazena todos os seus dados em um banco de dados MySql. Utilizando essa ferramenta, é possível fazer o polling de hosts SNMP, criar gráficos e gerenciar o acesso de usuários a toda a informação já coletada. O Cacti permite criar praticamente qualquer gráfico RRDTool usando todos os tipos de gráfico padrão RRDTool. Possui uma área de seleção de cores e preenchimento automático de texto que auxilia na criação de gráficos tornando o processo mais fácil. Além de permitir diversas formas de exibição dos gráficos. Há exibição em árvore permite aos usuários criar "hierarquias gráficas" e gráficos em árvore. Sendo uma maneira fácil de gerenciar e organizar um grande número de gráficos. É possível exibir a lista que enumera o título de cada gráfico em uma grande lista de links para o gráfico real. 3.2.2 Monitoramento Ele é capaz de monitorar e mostrar graficamente se um host está UP ou Down, armazenar syslog, gerenciar arquivos de configuração, com backups agendados, e através de SNMP pode monitorar a “saúde” dos equipamentos, verificando memória, processamento, utilização de interfaces e também é possível criar usuários com níveis de privilégio diferenciado (por exemplo, dá para criar um usuário que tenha acesso apenas aos gráficos). E o Cacti pode ainda gerar alertas por email, caso os thresholds sejam atingidos. Um dos plugins mais interessantes é o Network Weathermap, que permite criar a topologia da rede, e ilustra a utilização dos links. O Cacti pode gerar gráficos de banda usandoo SNMP. De fato, uma série de diferentes gráficos podem ser feitos com o scripts shell ou perl. Nas screenshots, você pode ver quais tipos de gráficos podem ser feitos com o Cacti. 18 A força do Cacti reside no fato de que pode ser instalado e utilizado de forma incrivelmente fácil. (COSTA, 2008) Como pontos negativos, destaca-se o fato do produto não possuir um agente de descoberta automática, ou seja, toda rede tem que ser adicionada manualmente, apesar de haver plugins de terceiros que faz esse trabalho, ainda assim, não tem uma (feature) padrão ferramenta, podendo tornar o trabalho do administrador penoso se a rede for grande. Mesmo assim, o software é extremamente escalável, e pode ser usado para controlar praticamente qualquer parâmetro mensurável em hardware, tais como temperatura e umidade (quando suportado). O CACTI funciona com tecnologia PHP5 ou superior para consultar uma base de dados MySQL, a qual também administra. A comunicação entre dependências é efetuada através da ferramenta RRDTool (Round Robin Database Tool) que armazena e apresenta dados que se alteram num determinado período de tempo, por exemplo a largura de banda consumida num determinado interface. Por outro lado, o RRDTool utiliza o conjunto de aplicações com base no protocolo SNMP para efetuar a recolha dos dados a os armazenar na respectiva base de dados. 3.2.3 Apresentação dos resultados O Cacti se mostrou uma ferramenta muito abrangente, com gráficos esplêndidos e ótima usabilidade, não deixando de funcionar mesmo em condições adversas tais como desligar e religar máquinas da rede, efetuar flood, broadcasts e “pings da morte”, executar testes de exaustão no servidor onde ele estava instalado, entre outros. Muitas funcionalidade podem ser adicionais via plugins de terceiros, suprindo algumas lacunas encontradas na instalação padrão. Ele é muito mais rápido; Ele pode usar valores negativos; Ele pode usar mais de uma fonte de dados em um gráfico; Os gráficos gerados são muito customizáveis; Ele pode ser usado por uma grande variedade de front-ends, como o Cacti; 19 Os registros do RRDtool armazenados nos arquivos “.rrd” mantem o mesmo tamanho e não aumentam; 3.3 CACTI X NAGIOS Em relação ao nagios o cacti observamos pontos fracos de desempenhos do lado dos seu concorrente para levantar, armazenar e exibir dados e seus respectivos gráficos, ainda que não seja nada de alarmante, mais considerando-se o tamanho da LAN testada (pequena), pode-se levantar suspeitas em ambientes mais complexos. Já o Nagios não possuí gráficos tão exuberantes quando os do Cacti, todavia toda informação relevante é corretamente reportada e atualizada, dando-se ênfase maior em cima do quesito disponibilidade, tendo este produto diversas ferramentas para monitorar os mais variados serviços e plataformas Linux/Unix/Windows. Como ponto fraco, também observou-se lentidão um pouco maior do que o Cacti para finalizar a varredura e agregar os dados, bem como um excessivo número de (features) disponíveis apenas através de plugins externos, aumentando a tarefa do administrador de configurar o ambiente como desejar. O Cacti possui um ponto negativo que é o fato do produto não possuir um agente de descoberta automática, ou seja, toda rede tem que ser adicionada manualmente, apesar de haver plugins de terceiros que faz esse trabalho, ainda assim, não tem uma (feature) padrão ferramenta, podendo tornar o trabalho do administrador penoso se a rede for grande. 3.4 AMBIENTE DE MONITORAMENTO 20 Figura 1. Topologia física da rede. Os testes experimentais foram realizados em uma rede contendo três máquinas, como visto na Figura 1. No computador PC2, que utiliza a plataforma Linux, foi instalado o softwares Nágios e o Cacti. O Nágios monitorou a rede, serviços e recursos, o Cacti auxiliou no esboço dos gráficos. Para que o PC2 conseguisse monitorar, foi cadastrado devidamente os PC1 e PC3, que utilizavam da plataforma Windows. 3.5 DIFICULDADES ENCONTRADAS Ao longo do desenvolver do trabalho, principalmente na parte de teste, foram encontradas diversas dificuldades quanto a instalação e configuração dos softwares. Como os programas escolhidos tem melhor desempenho e especificadamente o Nágios só roda na plataforma Linux, foi escolhido então o sistema operacional Ubuntu, uma distribuição Linux, para instalação na máquina que serviria de base para o monitoramento. Devido ao pouco conhecimento e convívio com essa plataforma, tanto a instalação quanto a configuração foram de difícil entendimento, ambos os softwares para o correto funcionamento precisam de Plugins e dependências 21 que também precisaram ser instaladas. Depois de um período de pesquisa e orientação foi enfim alcançado o conhecimentos necessário para a correta instalação e configuração dos softwares necessários para a realização do trabalho. 22 4. CONSIDERAÇÕES FINAIS O monitoramento de rede, independentemente do tamanho que ela seja, pode ser gerenciado por softwares para obter um melhor desempenho. Programas de computadores que mostram o trafego, analisam e detectam falhas ajudam a deixar a rede mais segura, proporcionando uma utilização mais rápida e confiável. Com a implantação, é possível monitorar os equipamentos que constituem as redes como: switch e access points, gerando gráficos de falhas de desempenho de trafico entre outros. Com toda essa monitoração é possível prevenir ataques, acessos não autorizados, evitando possíveis gastos. As ferramentas de gerenciamento que foram abordadas corresponderam de forma positiva aos testes realizados, demonstraram que são de extrema importância para que se possa garantir qualidade no gerenciamento de redes nas residências. O Nagios e o Cacti podem ser usados em conjunto para obter um bom gerenciamento da rede, pois ambos suprem os pontos negativos um do outro, fazendo assim que haja um controle da rede. As redes de computadores domésticos estão crescendo em ritmo acelerado, fazendo com que realizar o gerenciamento de rede dentro de uma estrutura residencial, seja fundamental para poder detectar e prevenir falhas. 23 5. REFERÊNCIAS AVALLE, R. P. Gerenciamento de Redes. Disponível em: http://www.gta.ufrj.br/grad/99_1/rodrigo/ger_redes.htm. Acesso em : 13/08/2013 CACTIUSER.ORG. CACTI Users. Disponível em: http://www.cactiusers.org/. Acesso em: 13/08/2013. COSTA, F.. Ambiente de redes monitorados com nagios e cacti. Rio de Janeiro: Editora Ciência Moderna Ltda., 2008. Nagios Version 3.x Documentation. Galstad Ethan. 2007. disponível em: http://www.nagios.org Acessado em: 14/08/2013. Nagios. 2009 Nagios Enterprises, LLC. All rights reserved. acessado em: disponível em: http://www.nagios.org/download/core/thanks/. Acessado em: 14/08/2013. NagiosQL. 2009 NagiosQL.org. All rights reserved unless otherwise stated. disponível em: http://www.nagiosql.org/. Acessado em: 14/08/2013. TANENBAUM, Andrew S. Redes de Computadores. Editora Elsevier. Rio de Janeiro: 2003. TANENBAUM, A. S. Redes de computadores. 9. ed. Rio de Janeiro: Campus, 1997. VAZ, Tiago Bortoletto. Monitoramento e Segurança de Redes com Software Livre. Disponível em: http://twiki.im.ufba.br/pub/PSL/CursoRedesSegurancaEnecomp2 004/enecomp2004.pdf. Acessado em: 14/08/2013 Zanella, Beethovem Dias. Protocolo de Gerenciamento SNMP. Disponivel em: http://www.rederio.br/downloads/pdf/nt00601.pdf . Acessado em: 14/08/2013. http://www.gta.ufrj.br/grad/99_1/rodrigo/ger_redes.htm http://www.cactiusers.org/ http://www.nagios.org/ http://www.nagios.org/download/core/thanks/ http://www.nagiosql.org/ http://twiki.im.ufba.br/pub/PSL/CursoRedesSegurancaEnecomp2%20%20%20004/enecomp2004.pdfhttp://twiki.im.ufba.br/pub/PSL/CursoRedesSegurancaEnecomp2%20%20%20004/enecomp2004.pdf http://www.rederio.br/downloads/pdf/nt00601.pdf