Prévia do material em texto
AULA 4 ADMINISTRAÇÃO DE REDES DE COMPUTADORES Prof. Douglas Eduardo Basso 2 TEMA 1 – REGISTRO E TRATAMENTO DE EVENTOS O registro e tratamento de eventos são práticas importantes para os sistemas computacionais. Esses registros são utilizados para restabelecer o estado original de um sistema ou equipamento e para que os administradores tenham informações do funcionamento e comportamento dos equipamentos ao longo do tempo. A grande maioria dos dispositivos de rede apresenta funções de registro de eventos. São tipos de dados relevantes que mostram falhas de equipamentos, mau funcionamento ou falta de recursos computacionais. Esses eventos são registrados em seus mais diversos níveis (erros, alertas, recuperação, entre outros), sendo muito utilizados em procedimentos de auditoria. A longevidade dos arquivos de eventos é bem variada. Os eventos podem ser salvos por alguns minutos, ou por dias, meses, anos, enfim, depende do sistema computacional e da persistência dos dados. Os registros de eventos devem ser constantes e as análises desses eventos devem ser contínuas. Através de processos de auditoria é possível identificar falhas de equipamentos e sistemas. O registro de eventos é uma atividade da gerência de rede complementar, e os fabricantes de equipamentos devem prover registros de seus eventos para que os administradores de rede tenham condições de identificar problemas e realizar auditorias de funcionamento. Quando há crimes virtuais, os registros de eventos e arquivos de logs são objetos de investigação, podendo ser utilizados como provas judiciais. É notório que os registros devem apresentar integridade, disponibilidade e confiabilidade. 1.1 Registro de eventos Os arquivos de logs são armazenados localmente em equipamentos como computadores, dispositivos, entre outros sistemas computacionais. Entretanto, criar um servidor para registrar os eventos e centralizar esses registros torna essa atividade mais segura. Máquinas locais são susceptíveis a deleção de eventos, alterações e até mesmo os eventos podem ser desabilitados. Outro detalhe importante é a capacidade de armazenamento e o tamanho desses registros em equipamentos locais – muitos não possuem capacidade de armazenamento disponível para períodos maiores. Os registros de eventos podem ser sobrepostos e o histórico de eventos é perdido. O uso de servidores de logs com grande capacidade de armazenamento permite que os registros de atividades e eventos 3 possam ser armazenados por um período maior e prover uma fonte de informação valiosa para administradores e gerentes de redes. 1.2 Servidores de registro de eventos O servidor de registro de eventos tem a função de centralizar e armazenar todos os logs enviados pelos equipamentos pertencentes à infraestrutura de rede. O controle desses logs nem sempre é uma tarefa fácil, dado o grande volume de informações geradas. A utilização de servidores de logs é recomendada e muito mais segura, além de facilitar a recuperação dos eventos ao longo do tempo e favorecer a auditoria de redes e sistemas. Na Figura 1, é possível ver um cenário de rede em que o servidor de log fica hospedado na rede local. Figura 1 – Servidor de Log Centralizado Fonte: Elaborado com base em Santos, 2015. Ao criar um servidor de logs, o ideal é que ele tenha apenas essa funcionalidade em seus serviços, de forma independente, que ele não seja exposto a redes externas e que apresente grande capacidade de armazenamento, para que seja possível manter um histórico de eventos por períodos maiores. É também recomendado que o servidor tenha controle de acesso a usuários e que tenha recursos de segurança habilitados (filtro de portas e endereços de rede, além de antivírus). 4 1.3 Segurança de logs Alguns sistemas operacionais (FreeBSD, Centos, entre outros) apresentam mecanismos de segurança em arquivos e partições de logs e arquivos de sistema. Entre as funcionalidades, estão restrições na edição de arquivos de logs, deleção de arquivos e a não reversão dos arquivos de logs e de sistema. Essas configurações de segurança são atribuídas de modo que até administradores de sistemas ficam restritos à edição e remoção de arquivos de registros de log. Quando utilizamos arquivos de logs, é muito importante que configurações de data e hora estejam devidamente sincronizadas com um sistema de sincronismo de horário, como o protocolo NTP (Network Time Protocol), a partir do qual os registros ficam salvos de forma sequencial, evitando duplicidade. 1.4 Dispositivos e logs O serviço de logs é utilizado pelos mais diversos dispositivos de redes, dentre os quais podemos destacar: Servidores e Estações de Trabalho (Windows, Linux, MacOS) Comutadores, Pontos de Acesso e Roteadores Sistemas de Autenticação a Rede e Servidores (Active Directory, LDAP, Radius) Controle de Acesso a Serviços de Rede (DHCP, HTTP, FTP, SSH, DNS) Eventos de Equipamentos de Segurança de Rede (Proxys, Firewalls, Antispams) 1.5 Tamanho e volume das informações Os registros de eventos consomem muitos recursos de armazenamento. Assim, um volume considerável é gerado diariamente pelos mais diversos sistemas computacionais. A estratégia no armazenamento dos logs quanto ao período de retenção é fator crucial. Legislações contidas no Marco Civil da Internet recomendam que as organizações mantenham registros de acesso por até doze meses. Entretanto, outros órgãos recomendam a guarda dos registros por no mínimo três anos. Os arquivos de logs mais antigos podem ser gravados em unidade de armazenamento externa (fitas magnéticas, mídias óticas, entre outras). O volume 5 gerado em infraestruturas mais robustas de rede é grande. Em aplicações como firewall, mensageria (e-mails), acesso à internet e sites institucionais, como os arquivos gerados são em sua maioria texto, é possível utilizar compactação de arquivos para minimizar o uso de recursos de armazenamento; em ambientes de rede mais complexos, em que o fluxo de informações é maior, é comum que tenhamos elementos de rede específicos para essa atividade de registro e armazenamento de eventos. TEMA 2 – INFRAESTRUTURA DE SISTEMAS DE LOGS Ao desenhar e operar uma estrutura de gerenciamento de registros de log, é importante ter uma boa estrutura de rede e um servidor com bons recursos (principalmente de armazenamento). Para que a gerência de logs seja bem centralizada, a topologia de rede também tem que favorecer os fluxos de dados dos logs. Em ambientes de rede mais distribuídos e com rede de dados menos robusta, é possível criar servidores de logs locais e fazer a transmissão desses dados em horários agendados (fora do horário de operação da empresa, por exemplo). Entretanto, são necessários cuidados especiais com essa troca de informações. A Figura 2 mostra uma estrutura distribuída. Figura 2 – Servidor de Logs Distribuído Fonte: Elaborado com base em Santos, 2015. 6 2.1 Soluções para logs e eventos A maioria das soluções para registro de logs e eventos centralizados é implementada em sistemas operacionais Unix e Linux. Existem soluções comerciais e de código aberto, obedecendo a normas e padrões de mercado. O transporte desses dados de logs é feito pela camada de transporte; o protocolo de transporte utilizado é o UDP e a porta de comunicação utilizada é a 514. Geralmente, o tráfego de logs na rede opera associado ao tráfego de dados de produção e ao controle das redes. Existem técnicas de gerência de logs que trabalham em redes distintas (gerência OOB). Entretanto, requerem um esforço maior por parte dos administradores de rede. Entre as soluções mais comuns no mercado, podemos destacar: Ambientes Linux: Syslog-ng, Syslogd e Rsyslog. Ambientes Windows: Winsyslog, Syslog-win32 2.2 Mensagens de logs A forma centralizada de armazenar as mensagens de logs requer um grande esforço por parte dos administradores. Outro desafio é organizar corretamente os dados de registros de log gerados pelos diversos equipamentos de rede e serviços. Não existe uma padronização nas mensagens; dessa forma, os fabricantes acabam definindo sua estrutura de dados. Devido à falta de padronização dos registros de logs, a análise manual se torna praticamente inviável. Existem algumas ferramentas específicas de análise de arquivos e mensagens de log. Podemos destacar algumas: Splunk, OSSEC, Sarg, Logwatch e Awstat. TEMA 3 – PROTOCOLO SYSLOG Syslog é um protocolo padrão de registros de log com dois componentes: um módulo de auditoria (que é executado no dispositivo) e um servidor, que pode ser executado em um sistema remoto. O protocolo Syslog usa o protocolo UDP na camada de transporte para a transferência de dados. Outro detalhe importante é o nível de prioridade. O protocolo define níveis de severidade para cada sistema computacional, informando a necessidade de 7 interação do administrador de redes nos equipamentos e sistemas. O Quadro 1 apresenta os níveis de severidade do protocolo syslog. Quadro 1 – Severidade do Protocolo Syslog Fonte: Elaborado com base em Santos, 2015. 3.1 Configuração de clientes syslog Os parâmetros de configuração dos equipamentos de rede e dispositivos seguem alguns princípios básicos, como: endereçamento lógico dos servidores de log (IP, nome do servidor), identificador do equipamento que será monitorado e prioridades e criticidades a serem enviadas ao servidor de logs. Dentre as prioridades, as mensagens com prioridade alta são sempre enviadas primeiro, conforme lista de prioridade configurada. Equipamentos de rede apresentam configurações adicionais relativas a sincronismo de data e hora, formato de mensagem a ser enviada, códigos de serviços, entre outras configurações complementares. Em sistemas Linux, basta editar o arquivo de configuração (/etc/rsyslog/syslog.conf) com os parâmetros de IP do servidor de log. Em sistemas Windows, é necessário um software para realizar essa configuração adicional, como por exemplo o Winsyslog. Tendo feito o registro e a configuração dos clientes no servidor de registro de logs (servidores, estações de trabalho, comutadores, roteadores, pontos de 8 acesso), é necessário usar alguns critérios organizacionais para o agrupamento dos equipamentos, com ajustes aos requisitos de cada um, além de grupos, atribuições, funções e, por fim, definição das equipes de trabalho capazes de fazer análise, segurança e auditoria dessas informações. 3.2 Análise de logs Dentro do contexto de gerenciamento de redes e sistemas, uma das atividades mais comuns é a coleta e busca de dados e informações sobre determinada falha, problema, indisponibilidade, mal funcionamento, configurações equivocadas, parâmetros incorretos, entre outros aspectos. O servidor de log centralizado é uma fonte de informações importantes para a compreensão dos eventos que aconteceram para tentar sanar os incidentes e problemas que a infraestrutura de TI possa apresentar. A análise desses logs pode ser feita manualmente, para buscar: problemas não detectados, causas de problemas, correlações e informações de alertas que podem apresentar problemas no futuro. A análise de logs manual pode contribuir para a gerência reativa e proativa. Na resolução de problemas mais específicos, é bem comum habilitar um log de eventos mais detalhado (debug) para uma leitura mais refinada dos eventos que ocorrem em determinado sistema computacional com problemas. Com análises e inspeções eventuais e pontuais, é possível, de forma rápida, com o uso de parâmetros de busca, filtros e comandos auxiliares, identificar eficientemente as informações necessárias para a resolução de problemas. Entretanto, é muito interessante usar ferramentas que automatizem esses processos de busca e localização de dados nos servidores de log e eventos. 3.3 Automação da análise de logs Com o grande volume de dados de log gerado pela operação e funcionamento de servidores, equipamentos de rede, serviços e sistemas computacionais, existe a necessidade de usar ferramentas que automatizem a análise dos logs, facilitando o processamento, a visualização e a identificação de problemas ao longo do tempo. Existem muitas ferramentas que fazem esse tipo de análise; porém, a falta de padronização nas mensagens de logs, em função dos diversos equipamentos 9 disponíveis atualmente, dificulta a construção de ferramentas que atendam de forma completa a análise de logs. Algumas ferramentas são específicas para determinado equipamento, serviço ou sistema computacional. 3.4 Ferramentas para análise de logs Os arquivos de logs podem ser um grande problema. Os logs são criados em sistemas computacionais diferentes, sem seguir um padrão, pois há formatos diversos. Outra atividade complicada é a análise dos arquivos logs. Outro agravante ainda é tratar um grande volume de dados. Várias ferramentas já foram desenvolvidas para solucionar a análise de logs. Elencamos algumas delas: SARG: é um interpretador de logs para o Squid (Proxy). Ele cria um conjunto de páginas, divididas por dia, com uma lista de todas as páginas que foram acessadas pelos usuários pertencentes à rede. AWSTATS: é uma ferramenta de relatório de análise da Web de software livre, adequada para analisar dados de serviços da Internet, como Web, fluxo de mídia, correio e servidores FTP. A ferramenta analisa os arquivos de log do servidor, produzindo relatórios em HTML. SPLUNK: software para pesquisa, monitoramento e análise de grandes volumes de dados gerados por máquina, por meio de uma interface no estilo da Web. ELK: é uma solução mais eficaz para o gerenciamento de logs; é um conjunto de três projetos de código aberto (ElasticSearch, LogStash e Kibana) que formam uma conhecida solução para agregação, indexação e busca de logs. TEMA 4 – MONITORAMENTO DE FLUXOS DE DADOS O monitoramento de fluxos de comunicação é uma tarefa importante para monitoramento e gerência de redes, estatísticas de fluxos, origens e destinos dos pacotes de rede, protocolos trafegados, desempenho, pontos chave da rede, congestionamentos de redes, perfis de acesso à rede e comportamento normal da rede de computadores. 10 4.1 Benefícios do monitoramento Os conjuntos de dados que são criados pelos fluxos de comunicação, os protocolos de rede, todas essas informações podem ser enviadas e analisadas por sistemas específicos de análise de fluxo de dados. A finalidade de monitorar os fluxos de comunicações inclui: Identificar e monitorar as atividades de rede Detectar falhas, problemas, anomalias e tráfegos estranhos na rede Planejar a infraestrutura de rede Controlar e contabilizar o uso da rede Criando um histórico desse fluxo de dados, é possível identificar qualquer situação que fuja da normalidade, como ataques cibernéticos, redes infectadas por vírus ou outras ameaças de rede. Com a coleta dos fluxos, é viável executar buscas sobre informações pertinentes a equipamentos de rede, tipos de conexões, tráfego entre redes, computadores e servidores. O tráfego com redes externas, como a internet, visa garantir a segurança e a qualidade nos acessos externos, controlar a utilização de rede e fazer contabilização de uso. 4.2 Coleta de fluxos A coleta de fluxos pode ser feita de várias maneiras: sensores, sondas e sistemas específicos de análise de fluxos (flows). Com essas informações capturadas, é possível fazer várias análises da infraestrutura de rede. Entre elas, temos: Localizar equipamentos de rede sobrecarregados Identificar todos os computadoresda rede e os serviços disponíveis Controlar, avaliar e planejar a vazão do tráfego de rede. Observar tráfegos anormais e identificar ataques cibernéticos Analisar comportamentos de rede maliciosos Alertar administradores de rede sobre possíveis problemas Os fluxos são capturados, contabilizados e exportados para um sistema de análise de fluxos. As informações de fluxos são capturadas de equipamentos de rede, como: roteadores, comutadores, gateways, pontos de acesso, entre outros equipamentos. Esses registros são feitos por determinado período e enviados ou 11 exportados para um sistema de análise de fluxos com maior capacidade de armazenamento, criando gráficos de utilização e guardando históricos de fluxos de dados na rede. 4.3 Tipos de informações coletadas Os sensores e sondas ativadas nos equipamentos de rede permitem identificar fluxos, registrar e exportar dados de tempos em tempos. Os coletores que ficam nos servidores permitem capturar fluxos exportados, armazenar os dados em disco e manter o histórico dos fluxos coletados. A Figura 3 mostra a ação de um sistema de captura de fluxos. Figura 3 – Sistemas de Análise de Fluxo (flows) Fonte: Elaborado com base em Santos, 2015. As informações coletadas nos fluxos trazem uma série de campos chave contidos nos pacotes de redes. Entre eles, podemos citar: Endereços lógicos IP de origem e destino Portas de comunicação de origem e destino Protocolos de comunicação de rede (TCP, UDP, ICMP) Interface de entrada e saída Data e hora de início e fim Endereços físicos de origem e destino Contadores de bytes transferidos, pacotes utilizados Tipos de Serviços 12 Máscaras de Rede de origem e destino Fluxos de pacotes TCP Identificadores de Redes Locais Virtuais (VLANs) A principal função dos fluxos é analisar em tempo real a situação da rede. Fluxos longos podem atrapalhar a coleta e análise, e os temporizadores são utilizados para controlar esses grandes fluxos. 4.4 Fluxos e exportação Os fluxos registrados e agregados são utilizados para analisar e compreender o que está acontecendo no ambiente de rede. É possível customizar os registros com campos-chave específicos e ajustar parâmetros de tempos de colega, campos para registro e número de fluxos armazenados, tudo isso para ganho de performance e maior facilidade de implantação da gerência de fluxos. Em relação à exportação de fluxos, pode ser feita de duas formas: Unicast (um destinatário – um coletor) ou Multicast (grupo de destinatários – grupo de coletores). Os protocolos de transporte utilizados podem ser: UDP (mais utilizado), TCP e SCTP. Com os fluxos salvos e guardados, é possível processar os dados coletados, além de aplicar filtros, combinar, concatenar e agregar fluxos. Os relatórios gerados podem apontar: uso de largura de banda, qual protocolo é mais trafegado e quais são os maiores fluxos da rede. Podemos contabilizar o uso de recursos e gerar estatísticas diversas sobre o uso da rede. 4.5 Pontos de rede para captura de fluxos Os principais pontos da rede para ativação de sensores e sondas são equipamentos que centralizam tráfego de rede, como roteadores, switches, pontos de acesso e interfaces específicas em servidores e hosts de rede. Os switches apresentam funcionalidade de espelho de portas de comunicação; o tráfego é divulgado em uma ou mais portas de rede. Essas funcionalidades de espelho ajudam no monitoramento de fluxo de dados. Existem alguns equipamentos específicos de coleta de dados que podem capturar e exportar registros para coletores. 13 TEMA 5 – SOLUÇÕES DE MONITORAMENTO DE FLUXO DE REDE As soluções de captura e monitoramento de fluxos de rede são necessárias para: auxiliar a análise do tráfego de rede, ajudar na resolução de problemas de rede, além de controlar a qualidade da rede, com tráfego anômalo, tentativas de ataques e abusos de utilização de protocolos de rede. Existem algumas tecnologias que implementam ferramentas como o NetFlow e a SFlow. A NetFlow foi a primeira ferramenta criada. É muito flexível e é atualizada constantemente. A sFlow introduziu conceitos de amostragem de tráfego, criou um hardware complementar para captura de fluxos e tem boa portabilidade. A IPFix foi criada a partir da tecnologia NetFlow. Ela inseriu o conceito de modelos (templates) e criou padrões de monitoramento de fluxos: NetFlow: é uma tecnologia que é parte integral do IOS da Cisco, que considera os pacotes como parte de um fluxo. O NetFlow agora foi adotado por vários fabricantes além da CISCO, já se tornando um padrão. Juniper, Extreme, Vanguard, Huawei e muitos outros fabricantes incorporaram em seus roteadores e switches funcionalidades similares. Tem ótima flexibilidade, permitindo definições de campos chave e dos dados a serem monitorados. sFlow: é um padrão relativamente novo para a monitorização de redes informáticas. sFlow especificação e sua primeira implementação foram ambos lançados em 2001. A norma sFlow descreve um mecanismo para capturar dados de tráfego em redes roteadas ou comutadas. IPFIX: Internet Protocol Flow Information Export é um protocolo e também o nome do grupo de trabalho que define o protocolo. O protocolo IPFIX fornece aos administradores de rede acesso às informações de Fluxo de IP. 5.1 Sensores, sondas e coletores Os sensores e sondas podem ser implementadas por hardware, dedicadas e por software. Podemos destacar as sondas embutidas em roteadores Cisco e Juniper, utilizando tecnologia Netflow e roteadores Foundry e Extreme Networks que usam sondas sFlow. Já entre as sondas dedicadas podemos destacar Nmon nBox e a Invea Tech FlowMon Probe. Esses equipamentos são preparados para 14 suportar uma grande quantidade de tráfego de rede, afim de evitar perdas de fluxos de rede. As sondas por software funcionam sobre um sistema operacional, comumente em servidores Unix, Linux, FreeBSD e outras plataformas de software livre. Usam a biblioteca lippcap e suportam vários tipos de formatos de fluxos. No Quadro 2 temos as sondas e seus formatos suportados Quadro 2 – Sondas e formatos suportados Fonte: Elaborado com base em Santos, 2015. Os coletores apresentam interface para administração e gerência remota; são soluções de código aberto ou proprietário. Em relação aos coletores proprietários, podemos destacar: Arbor Networks Peakflow, Lancope Stealhwatch, Pixer Scrutinizer e ManageEngine Netflow Analyser. Os coletores de código aberto que merecem destaque são: NFDump/NFSen, Flowscan e Flow- tools. Os coletores são desenvolvidos geralmente em software. Existem muitas soluções de mercado, tanto proprietários quanto de código aberto. 5.2 Ferramentas de captura de fluxos Ferramentas de captura de fluxos, como fprobe (gera o netflow de dados capturados) e softflowd (função que provê a coleta dos fluxos) operam sobre o sistema operacional Unix/Linux e fazem uso da biblioteca libpcap para visualizar o tráfego. Outra biblioteca muito utilizada na coleta e processamento de fluxos NetFlow é o Flow-tools. Flow-tools tem muitas linhas de comando para manipulação de arquivos de fluxo de rede. O NFDump é outro conjunto de ferramentas de linha de comando para coleta e processamento de fluxos. Uma ferramenta muito utilizada para apresentação dos dados coletados pelo NFDump é o NFSen. Ele possibilita a gerência de fluxos de uma forma mais amigável, com as seguintes funcionalidades: 15 Gerenciamento de fluxos Visualização de relatórios e gráficos Levantamentos e estatísticas de uso Suporte a filtros de fluxos e protocolos Verificação de perfis de tráfego de rede Permite uso de plugins e alertas 5.3 Problemas no monitoramento de fluxos de rede O monitoramento de fluxos de rede não é uma tarefa simples, pois apresenta problemas,como: fluxos incompletos ou perdidos tornam as informações imprecisas; erros na classificação dos fluxos; grande utilização de armazenamento em discos; relatórios e gráficos que dificultam a análise. Fazer o monitoramento de fluxos ajuda no melhor conhecimento da rede, oferecendo visão ampla, atual e histórica da rede. É possível ter muitas informações sobre a rede; a gerência de fluxos de rede oferece muitas vantagens, mas a tecnologia ainda precisa evoluir. Os dados dos fluxos são baseados nos cabeçalhos de rede. O conteúdo não tem inspeção e a classificação fica incompleta, feita apenas com base nos dados de endereços lógicos, em protocolos e portas de comunicação. Os fluxos perdidos causam dificuldades na análise dos relatórios. Assim, a localização das sondas e coletores é importante para evitar a perda dos fluxos. O armazenamento dos fluxos é outro fator fundamental para que tenhamos históricos dos fluxos salvos. Redes grandes geram muitas informações de fluxo e dificultam a captura do tráfego de rede. Além disso, a interpretação dos fluxos requer bons conhecimentos técnicos dos administradores de rede. Como o monitoramento de fluxos não inspeciona o conteúdo, a análise se torna incompleta. Entretanto, é possível ter conhecimento da rede, identificação de alta utilização, perfil da rede, tendências, desempenho e qualidade, além de atividades maliciosas. Dentro desse contexto, o uso de fluxos facilita a resolução de problemas de rede. 16 REFERÊNCIAS KUROSE, J. F. Redes de computadores e a Internet: uma abordagem top-down. 6. ed. São Paulo: Pearson Education do Brasil, 2013. SANTOS, M. T. Gerência de Redes de Computadores. 2. ed. Rio de Janeiro: RNP/ESR, 2015.