Prévia do material em texto
Gerenciamento e segurança de redes TECNOLOGIA DA INFORMAÇÃO Gerenciamento e segurança de redes Lindeberg Barros de Sousa Departamento Regional de São Paulo Presidente Paulo Skaf Diretor Regional Walter Vicioni Gonçalves Diretor Técnico Ricardo Figueiredo Terra Gerente de Educação João Ricardo Santa Rosa Material didático utilizado nos cursos do SENAI-SP. Apresentação Com a permanente transformação dos processos produtivos e das formas de organização do trabalho, as demandas por educação profissional multiplicam-se e, sobretudo, se diversificam. Em sintonia com essa realidade, o SENAI-SP valoriza a educação profissional para o primeiro emprego dirigida a jovens. Privilegia também a qualificação de adultos que buscam um diferencial de qualidade para progredir no mercado de trabalho. E incorpora firmemente o conceito de “educação ao longo de toda a vida”, oferecendo modalidades de formação continuada para profissionais já atuantes. Dessa forma, atende às prioridades estratégicas da Indústria e as prioridades sociais do mercado de trabalho. A instituição trabalha com cursos de longa duração como os cursos de Aprendizagem Industrial, os cursos Técnicos e os cursos Superiores de Tecnologia. Oferece também cursos de Formação Inicial e Continuada, com duração variada nas modalidades de Iniciação Profissional, Qualificação Profissional, Especialização Profissional, Aperfeiçoamento Profissional e Pós- Graduação. Com satisfação, apresentamos ao leitor esta publicação, que integra uma série da SENAI-SP Editora especialmente criada para apoiar os alunos das diversas modalidades. Walter Vicioni Gonçalves Diretor Regional do SENAI-SP Sumário Introdução 1. Ferramentas de gerenciamento de redes Conceito Importância do gerenciamento Tipos de gerência de redes Aplicabilidade e modelos de gerência de redes Protocolos e elementos de um sistema de gerência de redes 2. Firewall Segurança física Segurança lógica e fluxo de pacotes Tabelas NAT (Network Address Translation) 3. Proxy Server – firewall de nível de aplicação Proxy Módulos de autenticação Relatórios 4. Análise de tráfego – ferramentas e aplicações Definição Softwares para análise de tráfego de redes e aplicações 5. TACACS, RADIUS e AAA – protocolos e arquitetura de segurança e autenticação Definição Conceitos de autenticação, autorização e Accounting (AAA) e aplicabilidade Auditoria Terminal Access Controller Access Control Service (TACACS) Remote Access Dial-in User Service (RADIUS) Apêndice Configurações Práticas recomendadas Considerações finais Referências Sobre o autor Introdução Com o contínuo aumento do tamanho das redes corporativas e dos riscos inerentes ao processo de acesso, transmissão e processamento da informação, há a necessidade de se ter um monitoramento e um gerenciamento contínuo do uso da informação nas redes, tema desenvolvido neste livro. São apresentados os conceitos básicos, os tipos de gerenciamento, os protocolos e os modelos desenvolvidos por organizações internacionais e, em especial, as soluções opensource, que são softwares e ferramentas de código aberto utilizadas no gerenciamento de redes. Estudam-se a função do firewall e suas aplicações no controle dos dados trafegados em uma rede de computadores, sua segurança física, lógica e o controle de acesso às informações nas redes, assim como o uso do NAT para compartilhar endereços de acesso à internet. Destacam-se os firewalls quanto à aplicação ou Proxy Server, ou seja, um firewall que faz também o bloqueio por aplicações e o controle de acessos de usuários. Mostram-se os módulos de sistemas operacionais que fazem esse controle no Linux, os scripts e iptables para programar e configurar tais políticas de segurança e suas estruturas de comandos. Ressaltam-se algumas ferramentas que analisam o tráfego e geram relatórios e estatísticas para visualização e monitoramento do fluxo de dados da rede, com o intuito de avaliar o comportamento da rede e auxiliar no planejamento da estrutura necessária para atender às necessidades de usuários e sistemas. São também abordadas as ferramentas e arquiteturas de autenticação de usuários nos acessos às redes, como o TACACS, o RADIUS e os componentes da arquitetura AAA (Autenticação, Autorização e Accounting). É uma leitura indicada a estudantes e técnicos que desejam trabalhar no gerenciamento de redes e mecanismos de segurança e proteção de acesso aos dados em redes de computadores. O autor 1. Ferramentas de gerenciamento de redes Conceito Importância do gerenciamento Tipos de gerência de redes Aplicabilidade e modelos de gerência de redes Protocolos e elementos de um sistema de gerência de redes Conceito Um sistema de gerência de redes é composto de hardware e softwares que, integrados, fazem o monitoramento e o controle da rede. Os dados recebidos pelo sistema de gerência de redes são exibidos por meio de interfaces que mostram o estado da rede e podem ainda executar comandos nos dispositivos gerenciados para alterar, corrigir ou mesmo operá-los. Essas ações podem ser realizadas de forma centralizada, hierárquica ou distribuída. As redes de computadores são compostas de vários equipamentos que crescem continuamente com o avanço e a complexidade da tecnologia tanto em nível local (redes locais) quanto externo (redes externas ou Wide Area Networks – WAN), o que resulta também no crescimento da necessidade de suporte e correção de falhas que possam ocorrer nos equipamentos e nos meios de comunicação. Nesse cenário, é necessário ter mecanismos de supervisão, controle e detecção de falhas que auxiliarão na solução de problemas. A função do gerenciamento de redes é monitorar os equipamentos e meios de comunicação das redes para detectar e corrigir problemas. O procedimento para que isso ocorra consiste em instalar, nos equipamentos e meios de comunicação, pequenos programas que funcionarão como sensores e enviar dados do estado do equipamento para um gerenciador central, no caso um servidor com software de gerenciamento centralizado, que recebe as informações dos equipamentos da rede e mostra o estado destes e eventuais problemas que estejam ocorrendo, como falhas nos equipamentos (computadores, roteadores, switches, servidores e demais equipamentos da rede) e canais de comunicação. Assim, um sistema de gerenciamento de redes obtém informações dos dispositivos que fazem parte da rede, analisa e mostra problemas que ocorram, volume de tráfego de dados na rede, falhas e alertas vindos dos diferentes equipamentos, de forma a auxiliar no diagnóstico de problemas e soluções na administração da rede. Os padrões de gerenciamento de redes (protocolos e estrutura) surgiram no final dos anos 1980 no Internet Engineering Task Force (IETF) e na comunidade ISO (International Organization for Standardization). O padrão básico utilizado foi a arquitetura TCP/IP utilizando os protocolos de comunicação Simple Network Management Protocol (SNMP). Existem também outros padrões como: Common Management Information Protocol (CMIP ISO), Remote Monitoring (RMON) e Elecommunications Management Network (TMN). Adicionalmente há também programas chamados de sniffer, que ficam armazenados em computadores na rede analisando o tráfego e interpretando os dados para fornecer informações úteis ao gerenciamento. Por exemplo, um programa pode ficar medindo o tráfego que passa em seu segmento de rede e avaliar se o volume de dados trafegados está compatível ou não com a capacidade do meio de transmissão. Se o volume de dados trafegados estiver acima da capacidade do meio de transmissão, o programa enviará um alerta indicando que é necessário aumentar a velocidade. Importância do gerenciamento O gerenciamento de uma rede é necessário para que se tenha a visão do que está ocorrendo na rede e o controle proativo desta. Além disso, ele serve para detectar e localizar os problemas, monitorando o volume de tráfego para determinar a necessidade de canais de mais velocidade, identificar e efetuar ações para corrigir falhas.O gerenciamento de redes é importante para mantê-las operando e recebendo dados sobre o estado dos equipamentos, o que é necessário para seu bom funcionamento e operacionalidade. Quanto maiores a rede, o seu crescimento e a sua complexidade, maior a necessidade do gerenciamento, para evitar ou minimizar falhas, garantir a disponibilidade da rede e não impactar nas operações da empresa. Os equipamentos mais importantes da rede devem ser gerenciados. Isso é feito instalando-se um software client (também chamado de “agente”) em cada equipamento (dispositivos de rede como computadores, roteadores e switches). O agente envia informações a um servidor de gerenciamento central, que registra as informações e emite alertas em caso de falha em dispositivo ou canal de comunicação. As informações são transmitidas por um protocolo de comunicação como o SNMP, e os dados recebidos pelo servidor de gerenciamento são armazenados em bases de dados chamadas Management Information Base (MIB), processados e disponibilizados. Esse conjunto de especificações e organização das informações recebidas dos agentes instalados nos dispositivos de rede é chamado de Structure of Management Information (SMI), criado pela ISO, a qual define a estrutura como as informações de gerenciamento são armazenadas na MIB. Recursos a gerenciar Os recursos a serem gerenciados são basicamente os equipamentos (hardware ou dispositivos de rede) e as aplicações que neles operam. Os dispositivos ou componentes de uma rede podem ser: roteadores, switches, interfaces de rede, modem, gateways, servidores, impressoras, firewalls, access-points ou dispositivos wireless e demais equipamentos e aplicações que funcionam em uma rede. Figura 1 – Diferentes dispositivos de rede podem ser monitorados para se detectar falhas e proceder a ações corretivas. Figura 2 – O gerenciamento da rede é feito por um servidor de gerenciamento, onde estão a aplicação central e os programas chamados de agentes, que ficam nos dispositivos gerenciados para enviar informações.Marco Antonio Sardella Além da monitoração de falhas nos equipamentos, o gerenciamento de redes tem hoje uma função muito prática, que é a execução da atualização de software dos equipamentos feita remotamente, ou seja, sem a necessidade de que um técnico se desloque até o equipamento para fazer a atualização. Isso é possível por meio de aplicações que, utilizando o protocolo SNMP, são capazes de, além de monitorar, fazer a atualização de software em equipamentos como: servidores, roteadores e switches remotamente, permitindo controlar e manter atualizadas as versões de aplicativos e sistemas e reduzir custos operacionais, o que é um ciclo constante e repetitivo. Toda essa estrutura exige um mapeamento detalhado dos equipamentos e configurações da rede, por meio de um inventário completo de todos os dispositivos e aplicativos da rede. Tipos de gerência de redes Centralizada Na gerência centralizada há um servidor de gerenciamento central, que recebe as informações e os dados dos dispositivos de rede enviados pelos softwares agentes instalados em cada dispositivo, armazena e processa esses dados, fornecendo assim as informações do estado da rede para seu gerenciamento. Neste caso, o servidor central é o responsável por todo o gerenciamento. Nessa arquitetura, os dados são monitorados em um equipamento central que controla todos os dispositivos de rede e é o responsável pelos procedimentos de gerenciamento de todos os dispositivos. A MIB com os dados recebidos fica em um servidor central onde os dados são processados e exibidos. Ou seja, há apenas um gerente e um único banco de dados centralizados. Toda a estrutura e sua operação são centralizadas em um único equipamento; o banco de dados com as informações de gerenciamento é único e centralizado. A vantagem desse modelo centralizado é ser mais simples e mais seguro para operar e identificar os problemas. A desvantagem é que o tráfego de dados é intenso e, por ser um elemento único, no caso de falha no gerente central, todo o gerenciamento pode deixar de operar. Figura 3 – O sistema de gerenciamento é centralizado e os computadores e demais dispositivos de rede enviam dados de monitoramento para o servidor central. Descentralizada No gerenciamento descentralizado, a rede é dividida em regiões, em cada qual há um servidor de gerenciamento que recebe as informações dos dispositivos de rede de sua região. Neste caso, os dados relativos a cada região são tratados pelo servidor da região e os dados relativos à rede como um todo são enviados para um gerenciador central. Assim, há uma hierarquia com várias regiões ou domínios e um gerenciador global que concentra as informações de todos os domínios da rede. Essa arquitetura descentralizada possui diversos computadores que atuam como gerentes, espalhados na rede, além do servidor gerente central, dividindo assim as tarefas de processamento dos dados vindos dos agentes. Isso evita que o servidor central fique congestionado e oferece uma rapidez maior no processamento dos dados. Tal solução é aplicada em redes com grande quantidade de dispositivos clientes. Os gerentes remotos processam as informações de seus clientes e enviam o resultado para o servidor central, onde fica a base de dados centralizada. Figura 4 – Gerentes locais recebem e processam dados enviados pelos agentes dos dispositivos de rede de sua região e trocam informações com o gerenciador central. O processamento é dividido entre os diversos gerentes, aliviando assim a carga do gerenciador central. Reativa Agir reativamente é agir após um fato ter ocorrido. No gerenciamento reativo as falhas ocorrem e são detectadas, isoladas e corrigidas após a ocorrência do problema na rede. Os agentes dos dispositivos de rede são configurados para emitir um alerta ao sistema de gerenciamento central, após o qual o operador tomará as ações necessárias para corrigir o problema. A partir do alerta ou alarme enviado, o sistema de gerenciamento detecta onde está o problema e, em seguida, são efetuados os procedimentos de correção. A configuração reativa de rede indica que pode haver paradas na rede até que a falha seja resolvida, o que assinala a necessidade de se resolver rapidamente • • • • • • os problemas. Os problemas e as soluções devem ser documentados e ações devem ser tomadas para que eles não voltem a ocorrer. Algumas dicas para aumentar a disponibilidade da rede são: Monitorar, medir e analisar todos os eventos de incidentes que envolvam indisponibilidade da rede. Documentar os eventos e incidentes, com as suas respectivas soluções, para que, quando ocorrerem novamente, sejam solucionados rapidamente. Analisar o impacto das falhas e a tolerância aceitável dos tempos de parada e propor melhorias. Proativa Agir proativamente é agir e corrigir prováveis problemas antes que eles ocorram. Por exemplo, se o sistema de gerenciamento de rede detecta que o volume de dados trafegado está aumentando periodicamente e, se assim continuar, poderá sobrecarregar e interromper o funcionamento da rede, pode-se então agir proativamente e aumentar a velocidade dos meios de transmissão da rede naquele trecho em que está sobrecarregada. Neste caso, se a rede é uma rede local Ethernet de 10 Mbps de velocidade, aumenta-se para 100 Mbps a velocidade do barramento e dos switches de rede. Se o trecho da rede que está sobrecarregado for de uma rede externa, aumenta-se a velocidade dos canais de comunicação externos. Assim, evita-se a ocorrência de falhas antes que elas ocorram. Algumas dicas para montar um gerenciamento de rede proativo: Identificar potenciais problemas que possam ocorrer, monitorar e agir quando o risco aumentar. Inovar no planejamento e análise de possíveis riscos. Gerenciar continuamente possíveis mudanças internas e externas que podem ocorrer e impactar no funcionamento da rede e tomar as devidas ações preventivas. Assim, no gerenciamento proativo, buscam-se antecipar vulnerabilidades e • • • • • detectar necessidades,para corrigi-las antes que ocorram e, assim, aumentar a disponibilidade e a qualidade dos serviços. Esse é um aspecto importante na governança de TI. Distribuída No modelo distribuído vários gerentes colhem e processam informações recebidas dos dispositivos de rede, cada um com seu banco de dados. Os bancos de dados dos gerentes são replicados entre si, oferecendo maior segurança em razão de os dados estarem replicados. No caso de falha de uma base de dados, as outras bases suprirão as informações necessárias. Há diversos bancos de dados distribuídos e cada parte da rede é gerenciada por um servidor gerente. Aplicabilidade e modelos de gerência de redes Modelo FCAPS (ISO) O modelo FCAPS (Fault, Configuration, Accounting, Performance, Security) é um framework (biblioteca ou conjunto de softwares) criado pela ISO para ser um modelo de gerenciamento de redes. Ele é dividido em cinco áreas de funções e utiliza protocolos como o SNMP (definido pelo IETF) e o CMIP (definido pelo ITU-T). Essas cinco áreas visam atender aos requisitos de desempenho, segurança, funcionamento e tempo de resposta (qualidade de serviço – QoS) da rede. São elas: Fault (gerência de falhas) Configuration (gerência de configuração) Acconting (gerência de contabilização) Performance (gerência de desempenho) Security (gerência de segurança) • • • Gerência de falhas (Fault) A gerência de falhas engloba a detecção do problema, o isolamento, a análise e diagnóstico e a correção ou solução do incidente encontrado, visando manter a operação da rede efetuando os reparos com rapidez. Falhas são erros ou condições anormais que causam erros na rede, como interferências, rompimento de cabos, bugs em softwares, queda de energia e outros. As causas das falhas devem ser descobertas ou identificadas, isoladas da rede e corrigidas, de forma a restaurar o funcionamento correto da rede. A manutenção e monitoração preventivas podem ajudar a evitar falhas. Gerência de configuração (Configuration) A gerência de configuração engloba a monitoração e o controle da rede, fazendo a instalação de equipamentos, altera as configurações desses equipamentos quando necessário e faz a atualização dos dispositivos de redes e suas conexões. Também realiza o registro e a manutenção da atualização do hardware e software da rede. Para isso é necessário ter os registros de inventário, as configurações e os recursos da rede: Inventário: controle, mapeamento e documentação dos dispositivos de rede (equipamentos e softwares). Configuração: documentação da arquitetura e configurações da rede e de seus dispositivos. Provisionamento: disponibilizar recursos e serviços para o funcionamento de todos os dispositivos de rede. É necessário haver uma constante análise e manutenção da rede, efetuando a atualização e melhoria contínua das configurações dos dispositivos, para que a rede tenha um funcionamento estável e controlado. As atualizações devem ser feitas sempre que sejam detectadas potenciais falhas, o que é feito a partir de auditorias constantes e geração de relatórios de controle para análise e planejamento de ações de melhoria. Gerência de contabilização (Accounting) Nesta gerência contabiliza-se o uso dos dispositivos de rede, como eles estão sendo utilizados, o custo de cada equipamento e o seu retorno para a empresa em termos de custo × benefício. A gerência de contabilização, também chamada de Accounting ou Billing, registra o custo de manter cada dispositivo na rede, planeja os custos do crescimento da rede e de seus recursos e faz o rastreamento dos custos gerados pelos equipamentos entre os departamentos da empresa. Essas informações permitem o controle do uso dos recursos de rede, evitando abusos no uso ou a utilização ineficiente dos dispositivos de rede, auxiliando também no planejamento. O Billing é o centro da contabilização, pois é onde os valores relativos aos custos da rede são registrados e cobrados dos departamentos e usuários, por meio de relatórios de custos. Gerência de desempenho (Performance) O gerenciamento de desempenho tem como objetivo fazer com que a rede opere da maneira mais eficiente, por exemplo, manter um baixo tempo de resposta para os usuários da rede, ou seja, que a informação seja processada e transmitida com rapidez. Para que isso ocorra, a rede deve possuir a capacidade de transmitir os dados para todos os componentes dela sem que haja congestionamentos na transmissão de dados, atendendo todos os usuários simultaneamente se necessário. Isso é conhecido como capacidade da rede, e o planejamento para se obter esse nível de operação é chamado de Capacity Planing. Um elevado desempenho e capacidade da rede pode ser planejado com a análise do tráfego (volume de dados ou bytes transmitidos na rede) e da vazão • • • • (velocidade no processamento e transmissão dos dados) que a rede é capaz de realizar. Para que isso ocorra é preciso monitorar, medir e analisar o desempenho da rede. A monitoração dos dispositivos de rede, dos canais de comunicação e do volume de tráfego permite a coleta de informações para as análises como: Vazão (throughput) de dados ou estudo de tráfego nos canais de comunicação e equipamentos, verificando a existência de gargalos e as ações necessárias para corrigir o potencial problema, aumentando a velocidade dos canais de comunicação ou troca por equipamentos de maior desempenho. Aqui se observa se há taxa de erros físicos na transmissão de dados, velocidade, protocolos utilizados no nível de enlace, retardos e necessidade de redimensionamento da rede. Avaliar o tempo de resposta das aplicações e propor soluções como aplicativos com melhor desempenho e maior capacidade de processamento, para gerar uma melhor qualidade (QoS) nos serviços de rede e assim fazer um gerenciamento proativo na rede e manter o desempenho dentro dos padrões preestabelecidos. Disponibilidade da rede e falhas como perdas de pacotes, oferecendo informações para o planejamento para ações corretivas, visando ao aumento do desempenho. Avaliar a capacidade dos equipamentos (roteadores, switches, servidores, banco de dados, backbone da rede, entre outros) de acordo com o seu tempo de uso, processamento, degradação e piora do desempenho da rede. Gerência de segurança (Security) e controle da rede A gerência de segurança garante que a política de segurança da empresa está sendo aplicada na rede, realizando funções como: proteção das informações, controle de acesso, armazenamento e análise de logs, monitoração do uso dos dispositivos e a proteção da rede. Ela deve proteger as informações e os recursos da rede de forma a permitir que somente os usuários autorizados tenham acesso às informações. Para • • • • isso, a gerência de segurança deve atuar na geração e fornecimento de senha, criptografia, controle no acesso à rede, manutenção das senhas, registro de logs para análise e auditoria. A monitoração e o controle da rede fazem parte desse processo de segurança. Enquanto a monitoração enxerga e colhe informações para apontar problemas, o controle atua para alterar configurações de hardware e software por meio de ações corretivas, cuidando do acesso à informação e aos recursos de rede. A monitoração da rede colhe informações dos agentes e pode ser feita de duas formas: 1. Polling: o gerente faz uma consulta ao agente e obtém uma informação (request/response) que é então registrada em sua MIB. 2. Event-reporting: o agente envia a informação para o gerente, no caso de alguma ocorrência. O gerente é passivo e fica somente aguardando alarmes que venham dos agentes. O controle de rede executa ações de modificação de parâmetros ou configurações. Algumas dessas ações são: alterações e implantação de novas configurações nos dispositivos de rede; distribuição automática de software; emissão de relatórios sobre o estado da rede; o controle de segurança da rede deve garantir a confidencialidade da informação, a integridade e a disponibilidade. De maneira geral, o gerenciamento de redes auxilia os administradoresa ter uma estrutura tecnológica confiável e produtiva para a empresa, pois facilita a tomada de decisões da empresa, garante a qualidade dos serviços de rede, aumenta a produtividade, fornece informações para o planejamento tecnológico, propicia a solução de falhas proativamente e fornece uma visão geral da estrutura tecnológica da empresa. Figura 5 – O gerenciamento pode ser mostrado desta forma, na qual os dispositivos gerenciados ficam na base da pirâmide e, acima, tem-se a coleta de dados, o monitoramento dos equipamentos e serviços da rede, para que efetivamente tudo funcione e permita o bom andamento dos negócios da empresa, que é o objetivo final do gerenciamento e segurança dos serviços de redes. Web-Based Enterprise Management (WBEM) O gerenciamento de redes utilizando a web usa basicamente um browser e o protocolo HTTP como meios de transferir e apresentar os dados de gerenciamento. Algumas empresas como Cisco, Intel, Microsoft e outras se uniram para definir um padrão de gerenciamento pela web chamado de Web-Based Enterprise Management (WBEM) com o objetivo de fazer o gerenciamento de redes baseado no uso de navegadores web e no protocolo HTTP e assim conseguir atingir uma grande quantidade de dispositivos gerenciados distribuídos pela rede, ou seja, cada dispositivo é acessado utilizando a sua URL (Uniform Resource Locator) ou endereço web. • • • • Essa arquitetura de gerenciamento pela web foi desenvolvida originalmente pela Desktop Management Task Force (DMTF) com um modelo chamado de Common Information Model (CIM), que utiliza interfaces web com o padrão CGI (Common Gateway Interface) que ficam no servidor, também chamado de daemon, e que utilizam a linguagem HTTP (Hypertext Transfer Protocol), a qual recebe e processa requisições dos clientes da rede. O objetivo dessa arquitetura foi disponibilizar um gerenciamento de redes baseado em browsers, para facilitar a implementação. Nesse modelo, o servidor se comunica com os clientes por meio de uma aplicação web HTTP usada apenas como protocolo de interface gráfica (GUI – Graphical User Interface) e o protocolo SNMP ou CMIP, que continuamente esperam por requisições oriundas dos clientes web na rede. Esse modelo foi projetado para: permitir o uso de navegadores web para gerenciar as redes; ser capaz de cobrir as atividades de configurações, desempenho, segurança e operações da rede; permitir um crescimento fácil e distribuído da rede e do gerenciamento; utilizar uma linguagem e metodologia padrão, chamada de CIM (modelo comum de informações), capaz de trabalhar em diferentes plataformas de uma forma padronizada. Assim, basicamente o acesso aos dispositivos gerenciados é feito por navegadores (browsers) utilizando o protocolo HTTP na aplicação de gerenciamento. Protocolos e elementos de um sistema de gerência de redes Um sistema de gerência de redes é composto de ferramentas integradas que mostram informações sobre o estado da rede. As informações são concentradas em um equipamento central, em uma interface que mostra esses dados e gráficos e que também permite executar comandos e efetuar configurações remotamente. • • • Nos elementos gerenciados (equipamentos e dispositivos da rede) existe o software chamado de agente, que se comunica com o gerenciador central, envia e recebe informações utilizando o protocolo SNMP. Os elementos gerenciados podem ser: roteadores, impressoras, switches, canais de comunicação de dados, nobreaks e demais equipamentos da rede. O sistema é composto de elementos gerenciados, estações de gerência, protocolos de gerenciamento e informações de gerenciamento (MIB), onde os protocolos possuem posição de destaque por serem os responsáveis pelo envio e recebimento das informações. A estrutura do gerenciamento é chamada de SMI. Os elementos gerenciados são equipamentos como roteadores, servidores, switches e demais dispositivos de rede. As MIBs fazem parte dessa estrutura e armazenam as informações de cada objeto gerenciado em variáveis. O local onde fica o gerenciador central é chamado de Network Operation Center (NOC), onde os dados são monitorados, coletados, mostrados, analisados e onde são efetuadas as correções das falhas, podendo alterar configurações dos elementos da rede, desativar ou ativar componentes e dispositivos. Cada dispositivo que é gerenciado na rede, dentro da estrutura de gerenciamento e nas MIBs, é chamado de objeto. Quando um objeto em um sistema de gerenciamento de rede é configurado e ativado para ser monitorado e gerenciado, ele é chamado de instância. A seguir são descritos alguns comandos ou funções, também chamados de primitivas, utilizados pelos gerentes e agentes para configurar objetos e obter e trocar informações de gerenciamento: GET: usado pelo gerente para requisitar uma informação ao agente. SET: usado pelo gerente para requisitar ao agente a alteração do valor de um objeto gerenciável, como alterar um valor em um objeto como um roteador ou switch gerenciado. RESPONSE: usado pelo agente para responder a uma requisição de • informação feita pelo gerente. REPORT_EVENT: usado pelo agente para reportar ao gerente a ocorrência de um evento predeterminado. Quadro 1 – Comandos e protocolos de comandos de gerenciamento de rede O CMIS/CMIP é um protocolo de comunicação para gerenciamento de redes baseado no modelo ISO/OSI. O protocolo SNMP, mais utilizado, faz parte da arquitetura TCP/IP, que é mais abrangente e utiliza mensagens iguais ao CMIS (como a GET, SET, Get- Next). O CMOT é o protocolo CMIP (Commom Management Information Protocol) sobre o TCP/IP. Foi desenvolvido para trabalhar na arquitetura TCP/IP, na tentativa de dar uma sobrevida ao protocolo CMIP, que é baseado no modelo ISO. • • Figura 6 – A informação de gerenciamento trafegando na rede TCP/IP. A mensagem é roteada por um pacote IP, transportada pelo protocolo UDP e processada pelo protocolo de aplicação SNMP, que armazena os dados em uma MIB. O agente envia as mensagens para o gerenciador central. Há duas formas de receber e enviar mensagens entre o agente e o gerenciador central: Modo “Comando/Resposta”: o gerenciador central envia um comando ao agente do dispositivo gerenciado, solicitando informações. Normalmente é feito um polling, que é um pedido de informação periódico em forma de varredura, a cada 5 minutos (modo comando/resposta – síncrono). Modo “Trap”: o agente envia trap msg (mensagem não solicitada) para o gerente, esporadicamente, ou seja, no modo assíncrono. São mensagens enviadas pelos agentes notificando a ocorrência de falhas de acordo com que foi programado ou configurado. Figura 7 – Formato de uma mensagem SNMPv2 com os seus campos, onde se encontram o tipo da mensagem, o ID do tipo de solicitação e no final o valor. O SNMPv2 está evoluindo para o SNMPv3, que incorpora alguns mecanismos de segurança adicionais, como a MIB VACM e proteção de mensagens contra modificações. Observar que, devido ao volume de dados trafegados, o SNMP não é adequado para redes WAN que possuem uma velocidade menor de transmissão de dados. Para redes WAN é possível utilizar o protocolo RMON, que otimiza o volume de dados transmitidos, enviando dados com um espaço de tempo maior, ocupando assim uma menor banda de transmissão. Observar também que as aplicações SNMP, como os agentes instalados nos dispositivos gerenciados, utilizam o protocolo UDP para a transmissão de dados e as portas 161 e 160, o que torna a transferência de dados mais rápida. Exemplo de como configurar o agente SNMP do Windows 2008: Iniciar, Ferramentas Administrativas, Expandir Serviços, Serviço SNMP, na aba Agente especificar Contato e Localização, verificar as caixas Físico, Ligação de Dados, Aplicações e internet. Gerente e agente Em um sistema de gerenciamento de redes, o gerente é o computador central, onde são recebidas e processadas todas as informações de gerenciamento vindas dos agentes e apresentadas no formato gráfico e de relatórios para a equipe responsável pelo monitoramento da rede. Figura8 – Um computador e um roteador da rede enviando dados para um gerenciador central, utilizando o protocolo SNMP. As informações são armazenadas em uma base de dados (MIB) e apresentadas na tela do computador com o gerenciador central. Management Information Base (MIB) A MIB é uma base de dados com informações dos objetos gerenciados, a qual é acessada pelo gerenciador central. As normas e os padrões a serem utilizados na criação de uma MIB foram descritos nas publicações: RFC1066 e RFC1156 para a MIB-I e posteriormente as RFC1158 e RFC1213 para a MIB- II expandida e melhorada, utilizando a notação ASN.1 e regras definidas na Structure Management Information (SMI). • • • • Figura 9 – Comandos (Request) sendo enviados do gerenciador central para os agentes que respondem por meio de mensagens com a resposta (Response) solicitada. A informação é então armazenada em uma MIB para ser processada e utilizada no gerenciamento. A MIB-I foi substituída pela MIB-II, que é o padrão atual e contém informações como: nome, endereço, número de portas, entre outros dados sobre os objetos gerenciados. A estrutura de uma MIB é em forma de árvore de dados chamada de Árvore de Nomeação Global. Cada nó dessa árvore possui um identificador chamado de OID. Cada objeto gerenciado possui um número que identifica as suas informações. Por exemplo, o objeto com identificação 1.3.6.1.2.1.7 significa: 1.3.6.1: está na estrutura da internet; 2: é gerenciamento; 1: usa MIB-II; 7: usa o protocolo UDP. A Figura 10 mostra o formato de representação da árvore de gerenciamento de redes. • Figura 10 – Uma sequência de números da árvore representa o OID de um objeto, o que ele é e como é gerenciado. Cada equipamento monitorado possui um nome simbólico e um identificador numérico associado. Assim, determina-se cada objeto por um identificador único na MIB, que é a base de dados do gerenciamento. A MIB é um arquivo de texto ASCII com as informações para as mensagens de gerenciamento. A MIB traduz os strings de mensagens numéricas, chamadas de OIDs (Object Identifiers) ou identificadores dos objetos gerenciados, vindas dos alarmes dos equipamentos para uma mensagem de texto que pode ser lida e mostrada. Para cada OID numérico vindo dos equipamentos, a MIB provê uma mensagem de texto correspondente, como um dicionário, especificando o que significa aquele alerta. A MIB é escrita com a notação ASN.1 (Abstract Syntax Notation 1) da ISO. Cada elemento de uma MIB possui um identificador numérico, chamado de OID, o qual é associado a um texto que define o item gerenciado. No exemplo de número de identificação OID: 1.3.6.1.2.1 têm-se: 1 (ISO): indica que é administrado pela ISO. Outras opções são: CCITT e • • • • • • • Joint-ISO-CCITT. 3 (organização): abaixo da ISO tem-se a organização. 6 (DOD): organização responsável pela internet. 1 (internet): que está sob o controle da DOD. 2 (Mgmt): contém as informações de gerenciamento efetivamente utilizadas. Outras opções como private (4) define objetos definidos por outras organizações, experimental (3) define objetos que estão sendo pesquisados e directory (1) informações de diretório OSI(X.500). 1 (MibII): neste ramo é onde estão efetivamente os objetos usados para obter informações dos dispositivos da rede, nos grupos a seguir descritos. Figura 11 – Formato da mensagem de gerenciamento transportada por um pacote IP, com os OIDs dos objetos gerenciados. Em uma mensagem SNMP é possível transportar informações de vários OIDs. O objeto gerenciado é uma visão do estado e de um dispositivo do sistema que é gerenciado. Os dados que mostram o estado daquele dispositivo são lidos e alterados na MIB, a qual é o conjunto dos objetos gerenciados. Na arquitetura TCP/IP foi definida a MIB-II pela RFC1213, que fornece informações sobre os dispositivos gerenciados como o estado e o volume de pacotes transmitidos na estrutura SMI. Definição dos grupos da MIB-II: System (1): objetos da operação do sistema, como tempo de funcionamento, contato e nome do sistema. Interfaces (2): monitora as interfaces fornecendo dados como: número da interface, descrição e estado da interface. • • • • • • • • At (3) – Address Translation: mapeamento do endereço IP com o endereço físico. Ip (4): Informações sobre os pacotes IP. Icmp (5): monitora erros do ICMP. Tcp (6): monitora as conexões TCP, como número de segmentos recebidos e endereço IP remoto. Udp (7): monitora as conexões UDP, como número de datagramas recebidos com erros e número de datagramas enviados. Egp (8): monitora dados estatísticos sobre o protocolo EGP usado na comunicação entre redes externas Transmission (10): monitora meios de transmissão. Snmp (11): monitora o tráfego do protocolo SNMP Os elementos de uma estrutura para gerenciamento de redes TCP/IP são basicamente compostos de: 1. Estação de gerenciamento (Network Management Station – NMS): a estação de gerenciamento é onde se visualiza e se controla o gerenciamento central. 2. Agente de gerenciamento (instalado nos equipamentos de rede gerenciados): o agente de gerenciamento fica no equipamento gerenciado e responde às solicitações de informações e de ações da estação de gerenciamento central. Os dispositivos gerenciados são representados como objetos dentro de uma Base de Informações Gerenciais (MIB). 3. Base de Informações Gerenciais (MIB): armazena os dados. 4. Protocolo de Gerenciamento de Redes: transmite e controla os dados na comunicação entre a estação de gerenciamento e o agente, no caso o SNMP. As mensagens de gerenciamento trocadas entre o servidor central e os clientes utilizam o padrão ASN.1. Cada mensagem enviada é também chamada de PDU (Protocol Data Unit). A seguir alguns exemplos de • • • • • mensagens trocadas no gerenciamento de redes: get-request: mensagem enviada pelo gerente ao agente solicitando o valor de uma variável. Figura 12 – Troca de informações entre o agente do objeto gerenciado, no caso um roteador, e o gerenciador central, chamado de NMS – Network Management System. get-response: mensagem enviada pelo agente ao gerente, informando o valor solicitado. set-request-PDU: mensagem enviada pelo gerente ao agente para solicitar que seja alterado o valor de uma variável. Figura 13 – Representação do pedido de execução de um comando pelo gerenciador central para o agente, no caso instalado em um roteador. trap-PDU: mensagem enviada pelo agente ao gerente, informando um evento ocorrido. Get-next-request-PDU: mensagem enviada pelo gerente ao agente para solicitar o valor da próxima variável. Na troca de mensagens, cada dispositivo se identifica com o seu OID ou nome. Cada objeto monitorado possui a sua identificação, como a interface de um canal de comunicação o qual pode identificado com o OID 1.3.6.1.2.1.10.23, que indica que o protocolo utilizado é o PPP (23) no meio de comunicação. A interface com OID 1.3.6.1.2.1.10.32 indica que o protocolo utilizado é o Frame Relay (32). No Quadro 2 estão descritas as RFCs que padronizam o gerenciamento de redes, desenvolvidas pelo IETF para serem pesquisadas. Quadro 2 – RFCs para gerenciamento de redes RFC1155 Structure and identification of management information forTCP/IP-based internets. RFC1157 Simple Network Management Protocol (SNMP). RFC1212 Concise MIB definitions. RFC1213 Management Information Base for Network Management ofTCP/IP-based internets:MIB-II. RFC2578 Structure of Management Information for version 2 of the Simple Network Management Protocol (SNMPv2) (substituiu a RFC1902 e a RFC1442). RFC2579 Textual Conventions for version 2 of the Simple Network Management Protocol (SNMPv2) (substituiu a RFC1903 e a RFC1443). RFC2580 Conformance Statements for version 2 of the Simple Network Management Protocol (SNMPv2) (substituiu a RFC1904 e a RFC1444). RFC2571 An Architecture for Describing SNMP Management Frameworks(substituiu a RFC2271). RFC3412 Message Processing and Dispatching for the Simple Network Management Protocol (SNMP) (substituiu a RFC2572 e a RFC2272).RFC3413 SNMPv3 Applications (substituiu a RFC2573 e a RFC2273). RFC3414 User-based Security Model (USM) for version 3 of the Simple Network Management Protocol (SNMPv3) (substituiu a RFC2574 e a RFC2274). RFC3415 View-based Access Control Model (VACM) for the Simple Network Management Protocol (SNMP) (substituiu a RFC2575 e a RFC2275). RFC3416 Protocol Operations for version 2 of the Simple Network Management Protocol (SNMPv2) (substituiu a RFC1905 e a RFC1448). RFC3417 Transport Mappings for version 2 of the Simple Network Management Protocol (SNMPv2) (substituiu a RFC1906 e a RFC1449). RFC3418 Management Information Base for version 2 of the Simple Network Management Protocol (SNMPv2) (substituiu a RFC1907). RFC3430 Simple Network Management Protocol Over TransmissionControl Protocol Transport Mapping. RFC3512 Configuring Networks and Devices with Simple NetworkManagement Protocol (SNMP) RFC3584 Coexistence between version 1, Version 2, and Version 3 of the Internet-standard Network Management Framework (substituiu a RFC2576, a RFC1908 e a RFC1452). RFC3747 The Differentiated Services Configuration MIB. RFC3781 Next Generation Structure of Management Information (SMIng)Mappings to the Simple Network Management Protocol (SNMP). RFC3826 The Advanced Encryption Standard (AES) Cipher Algorithm inthe SNMP User-based Security Model. RFC4011 Policy Based Management MIB. RFC4088 Uniform Resource Identifier (URI) Scheme for the SimpleNetwork Management Protocol (SNMP). RFC4789 Simple Network Management Protocol (SNMP) over IEEE 802Networks (substituiu a RFC1089). RFC5343 Simple Network Management Protocol (SNMP) Context EngineIDDiscovery. RFC5345 Simple Network Management Protocol (SNMP) Traffic Measurements and Trace Exchange Formats. RFC5590 Transport Subsystem for the Simple Network ManagementProtocol (SNMP). RFC5591 Transport Security Model for the Simple Network ManagementProtocol (SNMP). RFC5592 Secure Shell Transport Model for the Simple NetworkManagement Protocol (SNMP). RFC5608 Remote Authentication Dial-In User Service (RADIUS) Usage for Simple Network Management Protocol (SNMP) Transport Models. RFC5675 Mapping Simple Network Management Protocol (SNMP)Notifications to SYSLOG Messages. RFC5676 Definitions of Managed Objects for Mapping SYSLOG Messages toSimple Network Management Protocol (SNMP) Notifications. RFC5935 Expressing SNMP SMI Datatypes in XML Schema DefinitionLanguage. RFC5953 Transport Layer Security (TLS) Transport Model for the SimpleNetwork Management Protocol (SNMP). RFC6353 Transport Layer Security (TLS) Transport Model for the SimpleNetwork Management Protocol (SNMP) (substituiu a RFC5953). Protocolo SNMP O protocolo SNMP (Simple Network Management Protocol) foi escolhido como o protocolo de aplicação padrão para redes TCP/IP nos anos 1980, e esperava-se que fosse substituído pelo protocolo CMIP (ou CMOT – CMIP over TCP/IP), o que não ocorreu devido à complexidade deste último. O protocolo SNMP, por ser nativo na arquitetura TCP/IP, é mais flexível, mais prático para os fabricantes no desenvolvimento dos agentes, reduz o tráfego de mensagens e é usado amplamente pelos desenvolvedores por fazer parte de uma arquitetura aberta em que a estrutura do gerenciamento SMI e as bases de dados MIB são bem definidas em RFCs. O Agente SNMP é um programa ou aplicação executado nos dispositivos de rede como: switches, roteadores, canais de comunicações e demais equipamentos da rede, que envia informações ao gerenciador central. Essa operação é denominada de trap, quando o agente envia informações para o gerenciador central sem ser solicitado, ou polling, quando o gerenciador central faz as solicitações de informações. Esse transporte e controle de mensagens são feitos pelo SNMP. O sistema de gerenciamento central coleta as informações e as coloca em uma tela de monitoração gráfica, sinalizando, por exemplo, quando alguma falha ocorre na rede. Os dados do agente SNMP em redes TCP/IP são transportados pelo protocolo UDP. O SNMP trabalha por polling do gerenciador central, ou seja, o gerenciador do servidor de gerenciamento central “pergunta” periodicamente ao agente o seu estado e recebe então dados desse agente. O gerenciador central pode solicitar ao agente que execute comandos no equipamento gerenciado, utilizando comandos como o get (para obter informação de um dispositivo) e set (para colocar um comando em um dispositivo). Nem todos os equipamentos de redes possuem agentes SNMP implementados. Nesse caso, os sistemas de gerenciamento podem monitorá- los, ao menos para verificar se estão ativos ou não (ligados ou desligados), por meio do protocolo ICMP (ping). Nesse caso, o gerenciador central envia um comando ping para o IP do equipamento e, havendo uma resposta, indica que o equipamento está ativo, o que é uma das formas de sinalizar que o dispositivo de rede está funcionando. Figura 14 – Agentes enviando dados para o gerenciador central. O SNMP, em sua primeira versão, inicialmente não previa alguns mecanismos de segurança como a autenticação ou comprovação da origem da informação enviada. Esta e outras questões de segurança foram resolvidas na versão SNMPv3 do protocolo. Comparando os protocolos de gerenciamento RMON, SNMP e CMIP O gerenciamento de redes no modelo OSI era baseado no protocolo CMIP e no CMOT, usados no gerenciamento de equipamentos de telecom na arquitetura TMN (telefonia) e que perderam espaço para o SNMP da arquitetura TCP/IP. O protocolo CMIP utiliza não só o pooling do gerenciador central para os agentes, como também o envio de mensagens de cada agente para o gerenciador central, e é um protocolo orientado à conexão (utiliza o TCP para o transporte das informações). O protocolo SNMP é mais rápido que o CMIP, pois não é orientado à conexão (usa o protocolo de transporte UDP, que não faz o controle de erros na transmissão e, portanto, é mais rápido no transporte dos dados). O SNMP é mais simples e mais utilizado em redes de menor porte, enquanto o CMIP • deve dominar o mercado composto das grandes redes corporativas e redes públicas de telecomunicações onde a complexidade é maior. Deve-se observar que a arquitetura de gerenciamento de redes WBEM, vista anteriormente, é baseada no protocolo de aplicação HTTP, e não no protocolo de aplicação SNMP. O RMON é uma tecnologia de gerenciamento desenvolvida pelo IETF para gerenciar redes remotas de maneira mais eficiente Ele diminui o tráfego de dados do gerenciamento na rede, pois parte da informação é processada localmente, ou seja, parte do processamento é descentralizada. Na arquitetura RMON, o gerenciador central não consulta os agentes de todos os equipamentos, mas somente um equipamento no qual está o RMON, reduzindo assim o tráfego de informações na rede. O padrão RMON2, além de monitorar as camadas física e de enlace (camadas 1 e 2 do modelo OSI), também é capaz de monitorar aplicações das camadas superiores (camadas de 3 a 7). Em resumo, um sistema de gerenciamento de redes deve monitorar e administrar os elementos de rede, gerenciar a configuração desses elementos, o desempenho dos recursos de rede, tráfego da rede, Service Level Agreement (SLA) contratado, detecção de falhas, contabilização de volume e custo dos recursos, a segurança e o registro de ocorrências na rede. Alguns dos elementos monitorados são: Canais de comunicação de dados: também chamados de links, são os meios de comunicação por onde os dados são transmitidos. Podem ser canais de rádio micro-ondas, fibras óticas, fios telefônicos e canais por satélite. Neles, consegue-se monitorar o tráfego que passa, em especial para saber se o volume de dados que passa está adequado à capacidade do canal. Por exemplo, se a velocidade do canal é baixa e o volume de dados trafegado aumenta além da capacidade do canal, o gerenciamento mostra essa ocorrência e a necessidade de se aumentar a velocidade. Esse é um dos pontos da gerência de desempenho, que analisa o número de usuários • • • • 1. 2. dos serviçosde rede ou a demanda exigida e a capacidade de a rede atender a essa demanda. Tempo de resposta: é o tempo que uma aplicação demora para processar a informação e devolver ao usuário da rede quando solicitada. Por exemplo, se um usuário faz uma consulta a um sistema e normalmente recebe a informação de volta em seu computador em dois segundos, quando esse tempo de resposta aumenta para doze, vinte ou outro valor muito acima do normal, indica que está havendo algum problema de processamento ou transmissão dos dados. Processador (Central Processing Unit – CPU): a CPU do equipamento também necessita ser monitorada para saber se está trabalhando com folga ou se está trabalhando na sua capacidade máxima, o que pode fazer o processamento demorar mais e, consequentemente, gerar um tempo de resposta maior para o usuário. Neste caso, a capacidade de processamento medida em Million Instructions Per Second (MIPS) deve ser aumentada trocando por um equipamento com CPU de maior capacidade. Memória: analogamente à CPU, a utilização da memória dos equipamentos, em especial dos servidores, também pode ser monitorada para verificar se o volume de processamento não está excedendo a capacidade desta. Equipamentos com memória insuficiente ficam com capacidade de processamento reduzida. Discos: a CPU e a memória trabalham com dados armazenados nos discos rígidos, assim o desempenho dos sistemas de discos também influi no resultado final do desempenho do processamento, lembrando também que as aplicações devem ser analisadas e otimizadas de forma a enviarem somente os dados necessários, otimizando o tráfego de dados na rede. Exercícios Definir gerenciamento de redes. Quais organizações internacionais criaram os primeiros padrões de gerenciamento e monitoramento de redes? 3. 4. 5. 6. 7. 8. 9. 10. Que protocolo básico é utilizado na maior parte das arquiteturas de gerenciamento de redes para fazer a troca de dados e mensagens entre os dispositivos gerenciados? Definir os tipos de gerenciamento de redes. Qual organização internacional de padrões criou o modelo FCAPS e quais são as partes desse modelo e suas funções? O que é o WBEM e como funciona? Os sistemas de gerenciamento de rede enviam comandos. Explicar a função dos comandos GET e SET. Qual protocolo de transporte de dados da arquitetura TCP/IP é utilizado para transportar os dados do SNMP das aplicações de gerenciamento de redes? Se um dispositivo de rede emite uma mensagem de erro para o gerenciador central, que tipo de mensagem é essa? Definir gerenciamento de segurança em redes de computadores. As respostas dos exercícios deste livro estão disponíveis para download no seguinte link: < https://www.senaispeditora.com.br/catalogo/informacoes- tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de- redes/> http://www.senaispeditora.com.br/catalogo/informacoes-tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de-redes/ • • • • • • • 2. Firewall Segurança física Segurança lógica e fluxo de pacotes Tabelas NAT (Network Address Translation) Segurança física A segurança física se preocupa com aspectos do restabelecimento da operação normal da rede no caso de incidentes ou falhas, de forma a dar continuidade aos negócios com o mínimo de perdas. O nome dado ao restabelecimento das operações é chamado de disaster recovery. Exemplos de incidentes físicos são: uma inundação ou incêndio. A norma NBR ISO/IEC 17799 disponibiliza vários aspectos a serem considerados em instalações físicas, como datacenters, para tratar e prevenir incidentes e desastres. Vários aspectos devem ser considerados, estudados e avaliados, como: Efetuar backup dos dados e replicação de dados remotamente de forma a serem recuperados rapidamente no caso de falha em um dos sites. Uso de materiais não inflamáveis na construção das instalações. Fontes de energia elétrica redundantes e o uso de nobreaks. Uso de piso elevado e refrigeração para evitar o aquecimento dos equipamentos. Cabeamento estruturado da instalação deve ser protegido contra interceptação ou danos, ter identificação e manutenção constantes. Acesso controlado aos equipamentos e salas. Proteção contra incêndio. Figura 1 – Infraestrutura elétrica redundante. Fonte: adaptado de Aceco TI, 2017. Segurança lógica e fluxo de pacotes A segurança lógica trata dos dados que trafegam na rede, isolando e bloqueando pacotes de dados, por meio de firewall. A função básica de um firewall é filtrar o tráfego de pacotes TCP/IP, controlando e isolando o tráfego entre duas redes de forma a permitir que somente os dados autorizados entrem em uma rede. Figura 2 – Firewall isolando a rede interna da rede externa ou internet. Os firewalls de rede analisam os campos de controle (headers) dos pacotes IP, endereço IP de origem, endereço IP de destino, portas do TCP de origem e de destino, comparando-os com uma tabela de regras para então permitir ou negar o encaminhamento do pacote. Os dados são analisados e então liberados ou descartados. Podem, por exemplo, bloquear todos os pacotes que sejam endereçados para a porta 23, impedindo assim o acesso remoto Telnet à rede. Os firewalls também podem ser utilizados para separar e isolar redes (segregar redes) para evitar que uma invasão em um segmento de rede não atinja outro segmento. Por exemplo, isolando o segmento de rede onde está um servidor web, evita-se que um ataque a esse servidor atinja as bases de dados da empresa que estão em outro segmento. Nesse caso, seria criada uma divisão lógica, ou uma sub-rede, chamada de DMZ (zona desmilitarizada). Tal segmento seria protegido por um firewall, porém permitiria o acesso de clientes externos conforme demandam os seus serviços. Figura 3 – Rede local segregada do servidor web que está separado em uma DMZ por meio de um firewall. • • • • • O objetivo do firewall é bloquear acessos não autorizados, o que faz parte do monitoramento ou gerenciamento da rede, e também fazer o registro dos acessos (log) para identificar acessos não autorizados e permitir o acesso de acordo com a política de segurança e aspectos básicos como: Confidencialidade: permitir somente acessos autorizados. Integridade: bloquear acessos não autorizados. Disponibilidade: filtrar e disponibilizar somente o acesso autorizado às informações. Autenticidade: garantir o acesso somente para remetentes de origem íntegra. Legalidade: atuar respeitando a política de segurança. Se houver a necessidade de disponibilizar um servidor web com banco de dados para acesso externo, utilizar um firewall para segregar a rede local interna. Isso pode ser feito colocando o servidor web e o servidor de banco de dados dentro de uma DMZ (zona desmilitarizada) e um firewall que bloqueia o acesso à rede interna. Figura 4 – Firewalls com servidor web separado do servidor de banco de dados e segregados da rede interna. Para isolar o banco de dados, é possível utilizar a arquitetura a seguir. • • • Figura 5 – Banco de dados isolado com uma terceira placa de rede no firewall 2. Os firewalls também podem ser configurados em roteadores com filtro de pacotes, habilitando regras que filtram os pacotes IP. Os firewalls que atuam na camada de rede são chamados de firewall de pacotes ou filtro de pacotes, pois atuam analisando os endereços dos pacotes IP de origem e destino e também as portas TCP e UDP para fazer o encaminhamento ou bloqueio. As regras básicas de um firewall de rede são: Permitir: permite que o encaminhamento de pacotes seja feito. Proibir: bloqueia pacotes e evita o encaminhamento. Log: faz o registro dos pacotes encaminhados ou bloqueados. Figura 6 – Firewall configurado em roteadores. Tabelas NAT (Network Address Translation) NAT (Network Address Translation) é uma função que compartilha endereços válidos da internet para uma rede local que possui muitos endereços IP e que necessitam compartilhar esses poucos endereços IP da internet. O firewall incorpora essa função por meio de tabelas que registram os dados recebidos pelo endereçoIP da internet e os seus respectivos ports TCP ou UDP que especificam a aplicação juntamente com o respectivo endereço IP do computador da rede interna. Dessa forma, com apenas um endereço IP de acesso à internet, é possível dar acesso a todos os computadores da rede interna. Esse firewall pode ser, por exemplo, configurado em um servidor Linux. Figura 7 – O firewall faz o NAT (mascaramento de endereços IP) para compartilhar um único endereço da internet com todos os computadores da rede. O NAT faz a correlação entre os endereços IP da rede interna e os endereços IP da rede externa por meio de tabelas que possuem os endereços externos, internos e os ports das aplicações, como mostra a Figura 8. Figura 8 – NAT compartilhando cinco endereços da internet com 40 computadores na rede interna. Nesse exemplo existem cinco endereços válidos da internet sendo compartilhados por toda a rede local interna. Isto é feito pelo NAT, que, por meio de tabelas, associa o endereço de um computador da rede interna e o port da aplicação com o endereço externo da internet e o port dessa aplicação na rede externa ou internet. Marcação O port TCP ou UDP da aplicação no computador da rede interna é chamado de port local. O port utilizado na rede externa para essa mesma aplicação é chamado de port mapeado. A tabela NAT controla a tradução dos endereços internos versus endereços externos dinamicamente. Esse processo feito no servidor NAT é também chamado de masquerading e as tabelas, iptables, onde são criadas as regras do NAT e do firewall. No Linux, tem-se três chains • • • (lista de regras, comandos ou scripts): PREROUTING: para os pacotes que entram (Destination NAT). OUTPUT: para os pacotes gerados na rede interna. POSTROUTING: para os pacotes que saem. O Netfilter é o módulo do Linux no qual se fazem as configurações e regras do firewall e NAT, por meio de iptables, especificando os ports e endereços de origem e destino. Alguns dos comandos utilizados para configurar as tabelas NAT no Linux são: “-t nat” (selecionar a tabela), “- -source” (especificar a origem dos pacotes), “- – destination” (especificar o destino dos pacotes), “- - in-interface” (especifica interface de entrada), “- -out-interface” (especifica interface de saída), “- -protocol” (indica o protocolo como o TCP ou UDP), em comandos como a seguir. iptables -t nat -A POSTROUTING -s 192.168.1.0/24 -j MASQUERADE (habilita o “masquerade” nos dispositivos da rede 192.168.10.0) iptables -t nat -A POSTROUTING -s 192.168.10.1 -o eth1 -j SNAT – -to 200.220.210.30 (modifica o endereço IP de 192.168.10.1 para 200.220.210.30 na interface Ethernet eth1) Nesse último exemplo, os pacotes vindos do dispositivo de rede com o IP 192.168.10.1 interno são trocados para o endereço IP 200.220.210.30 na interface “eth1” e enviados para a internet. iptables -t nat -A PREROUTING -s 200.220.210.30 -i eth0 -j DNAT – -to 192.168.10.1 (modifica os endereços IP vindos da interface “eth0” 200.220.210.30 externa para 192.168.10.1 na rede interna) Análise de logs A análise de logs do firewall é um ponto importante, pois ela mostra se há ocorrências como tentativas de invasão ou acessos não autorizados. A análise manual não é recomendada devido ao grande volume de dados gerados pelos logs. Assim, o recomendado é se utilizar aplicativos que fazem isso automaticamente e de maneira mais eficiente. Uma ferramenta para análise de logs do sistema é o PortSentry, que pode ser 1. 2. 3. 4. 5. obtido em <http://www.psionic.com> (acesso em: 19 fev. 2017). Exercícios Explicar do que trata a segurança física. Descrever segurança lógica e a função de um firewall. Explicar uma DMZ. Descrever a função do NAT. Descrever log e análise de log. Baixar e instalar uma ferramenta de análise de logs como o PortSentry. As respostas dos exercícios deste livro estão disponíveis para download no seguinte link: <https://www.senaispeditora.com.br/catalogo/informacoes- tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de- redes/> http://www.psionic.com http://www.senaispeditora.com.br/catalogo/informacoes-tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de-redes/ 3. Proxy Server – firewall de nível de aplicação Proxy Módulos de autenticação Relatórios Proxy O firewall de aplicação atua em nível de análise dos dados trafegados, monitoramento que faz parte do gerenciamento de redes, na detecção de intrusos e acessos remotos não permitidos. Ele intercepta o tráfego de dados da rede e o envia às aplicações correspondentes após a análise ou bloqueio dos dados que estão fora dos parâmetros da política de segurança, permitindo assim o registro e a auditoria do controle do tráfego que passa por ele. Uma opção é se utilizar roteadores com filtros de pacotes (firewall de rede ou pacotes) combinados com o uso de firewalls de aplicação para controle do acesso dos usuários e aplicações. O firewall de aplicação é composto de aplicações denominadas Proxy Servers. Um Linux Proxy Server, como o Squid, pode ser baixado e instalado em um servidor Linux que atuará com firewall. Figura 1 – Firewall de rede para filtrar pacotes e firewall de aplicação Proxy para controlar o acesso em nível de aplicação. O firewall que atua em nível de aplicação, na camada de transporte, analisa as portas TCP e UDP das aplicações e, assim, pode bloquear esta ou aquela aplicação. As conexões externas não são feitas diretamente, mas sim através do firewall, que faz a intermediação entre as redes externa e interna por meio de tabelas com os números das portas externas versus números das portas das aplicações dos equipamentos da rede interna. A análise, permissão ou bloqueio das aplicações são feitos por meio dos números das portas TCP e UDP de cada aplicação. Figura 2 – O firewall de aplicação pode atuar na camada de transporte (TCP ou UDP) e analisar o tipo de aplicação que está trafegando dados pela rede, por meio dos números das portas de cada aplicação. A implementação de gerenciamento e segurança em redes possui vários aspectos e componentes como: firewalls, zonas DMZs (zonas neutras/desmilitarizadas), LANs isoladas (segregadas), servidores segregados, listas de acesso em roteadores (regras de bloqueio de tráfego), gerenciamento de acesso, entre outros. O aplicativo PortScan verifica se existem portas abertas desnecessariamente, localiza os dispositivos ativos em uma rede e lista também as portas abertas, além de fornecer informações adicionais referentes a serviços HTTP, FTP, SMTP, SNMP e SMB. Essa ferramenta pode ser obtida em <http://www.rpmfind.net/linux/RPM>. http://www.rpmfind.net/linux/RPM • • • • • • Seguem, como exemplo, algumas portas de aplicações que podem ser bloqueadas ou permitidas no firewall Proxy: smtp: port 25 (TCP); dns: port 53 (UDP, TCP); telnet: port 23 (TCP); ftp: port 20,21 (TCP); tftp: port 69 (UDP); http: port 80 (TCP). O Proxy e o NAT são formas de aumentar a segurança no acesso à rede, evitando ameaças externas e aproveitando melhor os endereços de acesso à internet. O firewall Proxy separa e isola redes, em nível de aplicações, de forma a oferecer segurança contra acessos não autorizados, e pode ser instalado em um computador ou equipamento de rede como um roteador. O objetivo principal é proteger o acesso aos dados da empresa contra ataques externos e internos. Enquanto um firewall de pacotes apenas faz o filtro pelo endereço IP dos pacotes, um Proxy é capaz também de atuar no nível de aplicações e páginas web e fazer o controle do tráfego através da inspeção do conteúdo das páginas web. ACL: funções e tipos Uma ACL (Access Control List), ou lista de acesso, é um conjunto de configurações implementadas em equipamentos e roteadores com função de firewall. Esses comandos filtram e bloqueiam pacotes de dados que trafegam na rede. Em um roteador com função de firewall, essas listas controlam e filtram o tráfego que passa pelo roteador. Essas listas são basicamente divididas em dois tipos: as listas padrão e as listas estendidas.Lista de acesso padrão Uma lista de acesso padrão (Standard Access List) permite ou bloqueia pacotes por meio do endereço IP de origem do pacote. Lista de acesso estendida Uma lista de acesso estendida (Extended Access List) permite ou bloqueia pacotes de dados por meio do endereço de origem do pacote, endereço de destino do pacote e pelos ports de acesso TCP ou UDP das aplicações. O formato e o exemplo de um comando ACL em um roteador com função de firewall são mostrados a seguir: R1(config)#access-list nº-da-lista [permit ou deny] protocolo endereço-origem mascara port endereço-destino mascara port R1(config-if)#ip access-group nº-da-lista [in ou out] (especifica o número da lista e se é aplicada na entrada ou na saída da interface) As listas de acesso podem ser aplicadas na entrada (tráfego inbound) ou na saída de uma interface do roteador com firewall (tráfego outbound). Examina cada pacote e aplica os bloqueios ou permissões especificadas na lista de acesso para a interface. O comando “permit” permite a passagem do pacote e o comando “deny” nega o pacote. R1(config)#access-list nº-da-lista [permit ou deny] endereço-de-origem [wildcard mask] #access-list 5 deny host 172.16.0.3 (bloqueia o acesso deste host) #access-list 5 deny host 10.0.0.9 (bloqueia o acesso deste host) #access-list 5 permit * (permite o acesso dos demais host) #access-list 5 deny * (nega o acesso a todos) Também é possível bloquear faixas de endereços IP por meio de uma máscara. Exemplos: #access-list 5 permit 172.16.0.0 0.0.0.15 (a máscara 15=00001111 indica a permissão para a faixa de endereços de 172.16.0.1 a 172.16.0.15) #access-list5 permit 172.16.0.0 0.0.0.255 (a máscara 255=11111111 indica a permissão para a faixa de endereços de 172.16.0.1 a 172.16.0.255) #access-list5 deny 172.16.0.0 0.0.0.31 (a máscara 31=00011111 indica a negação de acesso para a faixa de endereços de 172.16.0.1 a 172.16.0.31) Exemplos A seguir são apresentados outros exemplos de permissão e negação de faixas utilizando máscaras. 1: negar o acesso dos hosts de 172.16.0.5 a 172.16.0.15 #access-list 6 permit 172.16.0.4 (permite o endereço 172.16.0.4) #access-list 6 permit 172.16.0.0 0.0.0.3 (permite os endereços de 172.16.0.0 a 172.16.0.3) #access-list 6 deny 172.16.0.0 0.0.0.15 (nega o acesso de 172.16.0.0 a 172.16.0.15) #access-list 6 permit any (permite todos os que não foram especificados anteriormente) 2: negar o acesso dos hosts de 172.16.0.12 a 172.16.0.19 #access-list 9 permit 172.16.0.0 0.0.0.7 (permite de 0 a 7) #access-list 9 permit 172.16.0.8 0.0.0.3 (permite de 8 a 11 ou 00001000+00000111=00001111) #access-list 9 deny 172.16.0.0 0.0.0.15 (nega de 0 a 15) #access-list 9 deny 172.16.0.16 0.0.0.3 (nega de 16 a 19 ou 00010000+00000011=00010011) #access-list 9 permit any (permite os demais) 3: negar o acesso dos hosts de 172.16.0.1 a 172.16.0.15 #access-list 11 permit 172.16.0.0 0.0.0.0 (permite apenas o acesso do endereço 172.16.0.0) #access-list 11 deny 172.16.0.0 0.0.0.15 (nega o acesso de 0 a 15) #access-list 11 permit any (permite o acesso dos demais) #show access-list (mostra a lista de acesso) 4: negar o acesso ao FTP #access-list 14 deny tcp 172.16.0.3 0.0.0.0 10.0.0.9 0.0.0.0 eq 21 (ao endereço IP 172.16.0.3 de origem é negado acessar o FTP-porta 21 do endereço IP 10.0.0.9) #access-list 14 permit ip any any 5: negar o acesso à web #access-list 17 deny tcp 172.16.0.3 0.0.0.0 10.0.0.11 0.0.0.0 eq 80 (a lista 17 nega o acesso do host 172.16.0.3 ao servidor web 10.0.0.11 port 80) #access-list 17 permit if any any 6: negar o acesso da rede 172.16.0.0 à rede 10.0.0.0 R1#configure terminal (vai para o modo de configuração) R1(config)#access-list 3 deny 172.16.0.0 0.0.255.255 (nega o acesso da rede 172.16.0.0) R1(config)#access-list 3 permit any (permite todos os outros) R1(config)#interface ethernet1 (para a interface ethernet1) R1(config-if)#ip access-group 3 out (aplica a lista de acesso 3 na interface de saída ethernet1 do roteador) Alguns comandos utilizados para exibir as listas de acesso do firewall do roteador: #show access-list #show access-list 3 #show ip access-list #show ip interface #show running-config As listas de controle de acesso (ACL) são permissões de acesso a um componente, sistema ou aplicação de uma rede. A lista de acesso em um equipamento como um roteador ou servidor fornece o acesso ao serviço após verificar se existe permissão, com base no endereço de rede, identificação do usuário e outros parâmetros. O Quadro 1 apresenta alguns tipos de listas de acesso definidas pelo número. Basicamente são utilizadas as listas padrão (standard) ou estendidas, porém há outros tipos específicos para outros sistemas e protocolos como o Decnet e o IPX (protocolo de redes Novell). Quadro 1 – Listas de acesso Tipo de ACL Número Standard IP access list 1-99 Extended IP access list 100-199 Ethernet type code 200-299 Transparent bridging (protocol type) 200-299 Source-route bridging (protocol type) 200-299 DECnet and estendam DECnet 300-399 XNS 400-499 Estendam XNS 500-599 AppleTalk 600-699 Transparent bridging (vendor code) 700-799 Source-route bridging (vendor code) 700-799 Standard IPX 800-899 Estendam IPX 900-999 IPX SAP 1000-1099 Estendam transparent bridging 1100-1199 NLSP route summary 1200-1299 A lista de acesso padrão (Standard Access List) filtra somente os pacotes IP da origem dos dados. Dessa forma, possui um processamento mais rápido. Figura 3 – A lista de acesso do firewall/roteador R1 bloqueia o acesso do usuário ao servidor, por meio do endereço IP. A lista de acesso estendida, adicionalmente, permite um filtro mais preciso, • • • • • • • • • • • • • • • • pois avalia também endereços IP de destino, tipos de protocolos (TCP, UDP, ICMP, OSPF e outros) que podem ou não trafegar na rede, ports de aplicações, permitindo assim um maior controle. Para servidores com sistema operacional Linux, as configurações de firewall podem variar entre as diferentes versões do Linux e devem ser checadas na documentação de cada versão. A seguir são apresentados alguns parâmetros utilizados nos comandos de criação de iptables no firewall. -A cadeia: anexa regras a uma cadeia. -D cadeia: apaga regras de uma cadeia. -I cadeia regra_num: insere regras no começo da cadeia. -L [cadeia]: lista as regras em uma cadeia. -F [cadeia]: remove as regras de uma cadeia. -Z [cadeia]: zera os contadores de pacotes e bytes da cadeia. -N cadeia: cria e dá nome a uma cadeia. -X [cadeia]: apaga a cadeia. -C cadeia: verifica como a cadeia processou o pacote/datagrama. -P cadeia política: define a política utilizada para o pacote/datagrama utilizado como: DROP (descarta), QUEUE (põe na fila), RETURN (retorna à cadeia anterior) e ACCEPT (aceita o pacote). -p [!] Protocol: define o protocolo a que a regra se aplica, como: TCP, UDP. -s [!] addres[/mask]: define a origem do pacote ao qual a regra se aplica, por meio do endereço IP. -d [!] address[/mask]: define o destino do pacote ao qual a regra se aplica, por meio do endereço IP. -j alvo: define o destino do pacote: ACCEPT, DROP, QUEUE ou RETURN. -i [!] interface_name: define a interface onde o datagrama é recebido. -o [!] interface_name: define o nome da interface onde o datagrama é transmitido. • • • • -sport [!] [port[:port]]: especifica as portas de origem do datagrama. -dport [!] [port[:port]]: especifica a porta de destino do datagrama. -icmp-type [!] typername: especifica o tipo de mensagem ICMP para a regra como: echo-request, echo-reply, source-quench, time-exceeded, destionation-unreachable, network-unreachable, host-unreanchable, protocol-unreachable e port-unreachable. -mac-source [!] address: especifica o endereço MAC. Exemplo A seguir é apresentado um exemplo de como bloquear porta da aplicação Telnet e evitar o acesso: iptables -A INPUT -p tcp -dport 23 -j LOG -log-prefix “Telnet” Para se bloquear ping direcionado à rede: iptables -A INPUT -p icmp -icmp-type echo-request -j DROP Para a configuração de um arquivocom um script básico de firewall, acessar o diretório no qual o script foi salvo e foi criado o arquivo rc.firewall: touch /etc/rc.d/rc.firewall (cria o arquivo) mcedit rc.firewall (edita o arquivo) INT=eth1 (dá o nome de INT para a interface interna da rede) EXT=ppp0 (dá o nome de EXT para a interface externa da rede) iptables -t nat –F (exclui todas as regras) iptables -t mangle -F iptables -t filter –F iptables –X (exclui cadeias customizadas) iptables -t nat –Z (zera os contadores das cadeias) iptables -t mangle -Z iptables -t filter -Z iptables -P INPUT DROP (define a política padrão) iptables -P OUTPUT ACCEPT iptables -P FORWARD DROP iptables -t nat -A PREROUTING -i $EXT -p tcp --dport 3389 -j DNAT --to 192.168.0.200 (redireciona os dados da interface externa vindos pela porta 3389 para o endereço IP interno) iptables -t nat -A PREROUTING -i $EXT -p tcp --dport 5900 -j DNAT --to 192.168.0.201 (redireciona os dados vindos da interface externa pela porta 5900 para o endereço IP interno) iptables -t nat -A PREROUTING -i $INT -p tcp --dport 80 -j REDIRECT --to-port 3128 (redireciona os dados vindos da interface interna pela porta 80 para a porta 3128) iptables -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT (os dados que chegam de conexões estabelecidas e relacionadas serão aceitos) iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT (permite o ping) iptables -A INPUT -p tcp --dport 22 -j ACCEPT (permite o acesso externo ao servidor utilizando o SSH) iptables -A INPUT -p tcp --dport 21 -j ACCEPT (permite o acesso FTP ao servidor) iptables -A FORWARD -m state --state ESTABLISHED, RELATED -j ACCEPT (encaminha para a rede externa os pacotes estabelecidos e relatados) iptables -A FORWARD -i $INT -o $EXT -p icmp -j ACCEPT (encaminha mensagens do protocolo ICMP para a rede externa) iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 25 -j ACCEPT (libera a porta 25 do correio eletrônico da rede interna para a rede externa) iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 22 -j ACCEPT (libera a porta 22 ou SSH da rede interna para a rede externa) iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 21 -j ACCEPT (libera o tráfego FTP, porta 21 da rede interna para a rede externa) iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 110 -j ACCEPT (libera o tráfego de correio eletrônico, porta 110, da rede interna para a rede externa) iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 443 -j ACCEPT (libera o tráfego da rede interna para a externa da porta 443 ou SSL) iptables -A FORWARD -i $INT -o $EXT -p tcp --dport 3389 -j ACCEPT (libera o tráfego da rede interna para a externa da porta 3389 ou Terminal Server) iptables -A FORWARD -i $EXT -o $INT -p tcp --dport 3389 -j ACCEPT (libera o tráfego da rede externa para a rede interna da porta 3389 ou Terminal Server) iptables -A OUTPUT -m state --state NEW, ESTABLISHED, RELATED -j ACCEPT (libera o tráfego de dados que saem da máquina) iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE (ativa o NAT ou mascaramento) Módulos de autenticação Para diminuir os riscos de segurança de acesso em qualquer sistema, é necessário se fazer a autenticação dos usuários, ou seja, a identificação do usuário que quer acessar o sistema. A autenticação garante que o usuário é quem diz ser. A autenticação pode ser feita localmente ou remotamente por meio de protocolos de autenticação. No Linux, tem-se o PAM (Pluggable Authentication Modules), que é um módulo que centraliza a autenticação dos serviços como o login e o SSH. No PAM especifica-se que aplicação necessita de autenticação e ele faz o processo. O sistema de cadastro de usuários no Linux é um arquivo de texto como: /etc/passwd, mas pode também ser feito em outros sistemas de cadastro de usuários como o RADIUS e o TACACS. A documentação do PAM pode ser acessada em sites como: <http://www.linux-pam.org/Linux-PAM- html/Linux-PAM_SAG.html> (acesso em: 20 fev. 2017). Para acessar uma aplicação, o usuário necessita da autenticação, a qual é solicitada ao módulo PAM do Proxy, que faz a interface com a aplicação para validar o usuário e permitir ou bloquear o acesso. RADIUS O RADIUS é um protocolo de autenticação de usuários remotos. O usuário solicita ao servidor uma autorização de login, fornecendo o seu hostname (nome ou IP) e uma senha. O servidor RADIUS para Linux pode ser obtido no site: <http://www.freeradius.org> (acesso em: 20 fev. 2017), onde também está a documentação para configurar o servidor. Squid O Squid é um servidor Proxy que trata a segurança de acessos externos analisando o tráfego dos protocolos http, HTTPS, FTP e Gopher. Possui o recurso cache, que armazena em memória o conteúdo acessado para ser utilizado no próximo acesso à internet e, dessa forma, fornecer o conteúdo mais rapidamente, pois não necessita acessar a internet novamente. Proxy transparente Em redes com Proxy é necessário configurar nos browsers e aplicações dos computadores o endereço e porta do Proxy para que este possa receber e filtrar o tráfego de dados direcionado à internet. http://www.linux-pam.org/Linux-PAM-html/Linux-PAM_SAG.html http://www.freeradius.org A técnica chamada de Proxy transparente utiliza uma regra no firewall que então efetua o direcionamento dos acessos à internet para o servidor Proxy. Dessa forma não é preciso configurar os browsers nem as aplicações que acessam a internet, pois automaticamente o firewall direciona o tráfego para ser analisado pelo Proxy, o que facilita em redes com uma quantidade muito grande de computadores. Para implementar esse direcionamento, utilizar os seguintes comandos no Linux. #iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j DNAT –to 192.168.17.10:3128 (direciona as requisições destinadas para a porta 80/Web que entram pela interface eth0 para a porta 3128, onde está o servidor Proxy, na máquina de IP 192.168.17.10) #iptables -t nat -A PREROUTING -i eth0 -p tcp –dport 80 -j REDIRECT –to-port 3128 (direciona as requisições destinadas para a porta 80/Web que entram pela interface eth0 para a porta 3128, onde está o servidor Proxy, que no caso está na mesma máquina) Módulo PAM (Pluggable Authentication Modules) O servidor Proxy Squid é capaz de efetuar o controle por usuário, ou seja, é capaz de autenticar o acesso à internet por usuário e não só por máquina, utilizando, por exemplo, módulos PAM (Pluggable Authentication Modules), que fazem a autenticação de usuários e se encarrega de todo o processo. Figura 4 – Módulos da arquitetura PAM que fazem a autenticação dos usuários nos acessos às aplicações por meio de diferentes dispositivos, como a biometria, entre outros. O PAM é uma arquitetura de autenticação composta de vários módulos que permitem acessar variados dispositivos e formas, como uso de smartcards, biometria e tokens para identificação e autenticação dos usuários. Um exemplo de instalação do servidor Proxy Squid, que, além de analisar o tráfego de dados, permitindo ou bloqueando dados, também é capaz de guardar informações para uso posterior é apresentado a seguir: # mkdir /downloads (criar diretório para download) # cd /downloads # wget [link de onde será baixado o pacote] (fazer o download) # apt-get install squid (instalação do Squid no Linux) # apt-get install build-essential Criar configurações do squid.conf: http_port 3128 visible hostname [nome do servidor] auth_param basic realm cache-access_log /var/log/squid/access.log auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid_passwd acl password proxy_auth REQUIRED http_access allow password http_acess deny all # touch /etc/squid/squid_passwd (cria arquivo para armazenar senhas) # htpasswd /etc/squid/squid_passwd gdh (cadastro do login) # groupadd squid # useradd -g squid -s /dev/null squid Relatórios Para a geração de relatórios com as informações fornecidas pelo servidor Proxy, é possível utilizar uma ferramenta como o software Sarg, que extrai os dados dos logs do Proxy e mostra em forma de relatórios. # apt-get installapache2 (instalar o Apache para visualizar os dados do Sarg) # apt-get install sarg (instalar o Sarg) As configurações do Sarg ficam no arquivo “sarg.conf”, onde deve ser colocada a configuração a seguir: access_log /var/log/squid3/access.log (indica onde estão os logs) output_dir /var/www/html/ (indica a pasta de saída do Sarg) Relatórios e análise de logs gerados por sistemas de detecção de intrusão IDS A análise de logs e geração de relatórios para o gerenciamento da segurança dos acessos pode também ser feita pelo monitoramento automático por dispositivos e aplicativos conhecidos como IDS (Intrusion Detection System). Muitos desses aplicativos são opensource e podem ser obtidos sem custos, em especial para sistemas Linux. Alguns também fazem a auditoria na rede e geram relatórios com recomendações para a solução de ameaças que possam ocorrer. O Nessus e o Snort são exemplos de aplicativos opensource que fazem essa função para sistemas Unix/Linux. Figura 5 – Dispositivo de detecção de intrusão (IDS) interno e externo para monitorar e gerar informações sobre alterações que ocorram na rede. Softwares opensource como o Snort ou Ossec executam essa função. As alterações e os acessos fora da política de segurança estabelecida são notificados pelo IDS para o servidor de gerenciamento, onde é feita a monitoração. Um sistema de detecção de intrusão faz o monitoramento, identificação e notificação de ocorrências que ponham em risco a segurança da rede. Os sistemas de detecção de intrusão (IDS) podem ser baseados em host ou HIDS, quando as informações são coletadas e analisadas em um único host (computador), que verifica as informações de registros de logs e eventos como a permissão ou alteração de dados. Eles identificam e alertam ocorrências de tentativas de acesso não autorizado. Os sistemas IDS baseados em rede ou NIDS monitoram e analisam o tráfego de um segmento específico da rede. São instalados em computadores de diferentes segmentos de rede, onde analisam o conteúdo dos pacotes trafegados naquele segmento. Os sistemas de detecção de intrusão híbridos são uma junção dos dois sistemas anteriores. A detecção de ameaças feita pela procura de eventos já conhecidos e predefinidos de ataques é chamada de Detecção por Assinatura. A detecção de atividades diferentes das normais na rede e considerada anomalia e potencial fonte de ataques e monitorada é chamada de Detecção por Anomalias. Um IDS de Modo Passivo envia alertas de ameaças, mas não executa nenhuma ação em relação a ela. Já um IDS de Modo Reativo envia alertas de ameaças para o administrador e também executa ações predefinidas, como bloquear o tráfego. Snort O Snort é uma ferramenta de detecção de intrusão opensource baseada em redes. Ela analisa o tráfego da rede e monitora os pacotes IP buscando por conteúdos específicos. Ossec O Ossec é uma ferramenta de IDS baseada em host que faz o monitoramento e auditoria de servidores, computadores, logs enviados pelos agentes. Virtual Private Network (VPN) Outro módulo ou ferramenta de implementar a segurança em rede são as VPNs (Virtual Private Network), que fazem a criptografia dos dados transmitidos entre dois pontos da rede, além da autenticação dos usuários. As VPNs podem ser implementadas em dispositivos como roteadores, em conjunto com as configurações de firewall e Proxy. Uma VPN disponibiliza na rede um caminho que se comporta como uma linha de comunicação privativa entre dois pontos. Essa linha privativa é chamada de túnel e faz com que os dados fiquem em sigilo entre os dois pontos, por meio de criptografia. A criação do canal de comunicação virtual é chamada de tunelamento. Os pacotes IP são encapsulados, criptografados e enviados dentro de outro pacote pela rede até o destino final. Figura 6 – Pacote IP é encapsulado e criptografado dentro de outro pacote IP e no destino é feita a operação inversa. Exemplo A seguir será apresentado um exemplo de configuração de um túnel VPN entre dois roteadores. Roteador de origem #ip routing (ativa o roteamento IP) #interface serial0 #ip address endereço mascara #interface ethernet0 #ip address endereço mascara #interface tunnel0 #tunnel source interface #tunnel destination endereço #router igrp nº #network endereço Roteador de destino • • • • #ip routing #interface serial 0 #ip address endereço mascara #interface ethernet0 #ip address endereço mascara #interface tunnel3 #tunnel source interface #tunnel destination endereço #router igrp nº #network endereço Os protocolos de segurança e criptografia mais utilizados são: IPSec (Internet Protocol Security); L2TP (Layer 2 Tunneling Protocol); L2F (Layer 2 Forwarding); PPTP (Point-to-Point Tunneling Protocol). Módulo LDAP O LDAP (Lightweight Directory Access Protocol) é um protocolo usado em servidores Proxy para gerenciar o acesso dos usuários da rede e a busca de informações. Está definido pelo IETF na RFC2251, a qual pode ser acessada no endereço a seguir: <http://www.ietf.org/rfc/rfc2251.txt> (acesso em: 21 fev. 2017). O protocolo LDAP é basicamente utilizado para procurar, alterar e apagar dados nos diretórios. Quadro 2 – Operações básicas de LDAP Operação Descrição Abandon Abandona a operação previamente enviada ao servidor. Add Acrescenta uma entrada ao diretório. Bind Inicia uma nova sessão no servidor LDAP. Compare Compara as entradas de um diretório de acordo com critérios. Delete Suprime uma entrada de um diretório. Extended Efetua operações vastas. Rename Altera o nome de uma entrada. http://www.ietf.org/rfc/rfc2251.txt Search Procura entradas em um diretório. Unbind Termina uma sessão no servidor LDAP. Scripts Seguem-se exemplos de scripts de criação de firewall com o módulo Netfilter do Linux, que utiliza iptables para fazer o filtro de pacotes. Para mostrar as cadeias de regras de entrada e saída: # iptables -L INPUT -n –v # iptables -L OUTPUT -n -v --line-numbers Para ligar ou desligar o firewall: # service iptables stop # service iptables start # service iptables restart Para deletar regras do firewall, utilizando as opções: -F (deleta todas as regras), -X (deleta a cadeia), -t table_name (seleciona a tabela e deleta as regras), -P (coloca a política de segurança padrão): # iptables -F # iptables -X # iptables -t nat -F # iptables -t nat -X # iptables -t mangle -F # iptables -t mangle -X # iptables -P INPUT ACCEPT # iptables -P OUTPUT ACCEPT # iptables -P FORWARD ACCEPT Para deletar regras do firewall, pelo número da linha (line-numbers): # iptables -L INPUT -n --line-numbers # iptables -L OUTPUT -n --line-numbers # iptables -L OUTPUT -n --line-numbers | less # iptables -L OUTPUT -n --line-numbers | grep 202.54.1.1 Para deletar, por exemplo, a linha 4: # iptables -D INPUT 4 Para ver regras no firewall: # iptables -L INPUT -n --line-numbers Para salvar regras no firewall: # service iptables save Para restaurar regras no firewall de um arquivo de nome /root/my.active.firewall.rules: # iptables-restore < /root/my.active.firewall.rules Para descartar todo o tráfego: # iptables -P INPUT DROP # iptables -P OUTPUT DROP # iptables -P FORWARD DROP # iptables -L -v -n Para bloquear o tráfego de entrada, mas permitir o tráfego de saída: # iptables -P INPUT DROP # iptables -P FORWARD DROP # iptables -P OUTPUT ACCEPT # iptables -A INPUT -m state --state NEW,ESTABLISHED -j ACCEPT # iptables -L -v –n Para rejeitar dados vindos de redes externas para uma rede interna especificada: # iptables -A INPUT -i eth1 -s 192.168.0.0/24 -j DROP # iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP Para bloquear pacotes vindos de um determinado IP (por exemplo, 1.2.3.4): # iptables -A INPUT -s 1.2.3.4 -j DROP # iptables -A INPUT -s 192.168.0.0/24 -j DROP Para bloquear o acesso a determinados ports: # iptables -A INPUT -p tcp --dport 80 -j DROP # iptables -A INPUT -i eth1 -p tcp --dport 80 -j DROP Bloqueia o acesso ao port 80 somente para o IP 192.168.1.0: # iptables -A INPUT -i eth1 -p tcp -s 192.168.1.0/24--dport 80 -j DROP Bloqueia o tráfego de saída para um determinado IP ou domínio: # host -t a domínio.com Bloqueia todo o tráfego de saída para o IP 75.126.153.206: # iptables -A OUTPUT -d 75.126.153.206 -j DROP Bloqueia o acesso ao Facebook: # host -t a www.facebook.com # iptables -A OUTPUT -p tcp -d 69.171.224.0/19 -j DROP # iptables -A OUTPUT -p tcp -d www.facebook.com -j DROP # iptables -A OUTPUT -p tcp -d facebook.com -j DROP Bloqueia pacotes vindos de interfaces externas como ataques de IP Spoofing (que simula endereços da rede interna). No caso a interface da rede externa é a eth1 e a rede interna 10.0.0.0: # iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j LOG --log-prefix “IP_SPOOF A: “ # iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP Limita o número de tentativas de login: # iptables -A INPUT -i eth1 -s 10.0.0.0/8 -m limit --limit 5/m --limit-burst 7 -j LOG Descarta ou aceita o tráfego vindo de um determinado endereço MAC: # iptables -A INPUT -m mac --mac-source 00:0F:EA:91:04:08 -j DROP # iptables -A INPUT -p tcp --destination-port 22 -m mac --mac-source 00:0F:EA:91:04:07 -j ACCEPT Bloqueia ou aceita pedidos de ping: # iptables -A INPUT -i eth1 -p icmp --icmp-type echo-request -j DROP # iptables -A INPUT -s 192.168.1.0/24 -p icmp --icmp-type echo-request -j ACCEPT Abre uma faixa de números de ports para acesso: # iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 7000:7010 -j ACCEPT Para aceitar somente conexões ao servidor web (port 80) vindas de uma faixa específica de endereços IP: #iptables -A INPUT -p tcp --destination-port 80 -m iprange --src-range 192.168.1.100- 192.168.1.200 -j ACCEPT Exemplos de scripts para abrir e fechar ports TCP e UDP (para aceitar usar o comando ACCEPT e para descartar trocá-lo pelo comando DROP). Abre port 22 do TCP (SSH): iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 22 -j ACCEPT http://www.facebook.com http://www.facebook.com Abre o port 631 (serviços de impressão) do TCP/UDP: iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 631 -j ACCEPT iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 631 -j ACCEPT Permite o protocolo NPT (Network Time Protocol ou Protocolo), que faz a sincronização dos relógios dos dispositivos de uma rede, pelo port 123 do protocolo UDP: iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 123 -j ACCEPT Abre o port 25 (SMTP) do TCP para todos: iptables -A INPUT -m state --state NEW -p tcp --dport 25 -j ACCEPT Abre o port de DNS para todos: iptables -A INPUT -m state --state NEW -p udp --dport 53 -j ACCEPT iptables -A INPUT -m state --state NEW -p tcp --dport 53 -j ACCEPT Abre o port 80 (servidor web) para todos: iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT iptables -A INPUT -m state --state NEW -p tcp --dport 443 -j ACCEPT Abre o port 110 (POP3 – e-mail) para todos: iptables -A INPUT -m state --state NEW -p tcp --dport 110 -j ACCEPT Abre o port 143 (IMAP) para todos: iptables -A INPUT -m state --state NEW -p tcp --dport 143 -j ACCEPT Abre os ports do servidor de arquivos Samba para os usuários da rede local: iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 137 -j ACCEPT iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 138 -j ACCEPT iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 139 -j ACCEPT iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 445 -j ACCEPT Abre o acesso ao Proxy Server para os usuários da rede local: iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p tcp --dport 3128 -j ACCEPT Abre o acesso ao MySQL server para usuários da rede local: iptables -I INPUT -p tcp --dport 3306 -j ACCEPT Restringe o número de conexões paralelas de um usuário ao servidor. No exemplo limita a três conexões SSH por host: # iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 3 -j REJECT Limita os acessos HTTP a 20: # iptables -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 --connlimit-mask 24 -j DROP Testes do firewall: # netstat –tulpn (verifica se os ports estão abertos ou não) # netstat -tulpn | grep :80 (verifica se o port 80 está aberto ou não) # service httpd start (ativa o servidor web) # iptables -L INPUT -v -n | grep 80 (verifica se as iptables estão permitindo acesso ao port 80, se não abre os ports) # iptables -A INPUT -m state --state NEW -p tcp --dport 80 -j ACCEPT Essas são as regras básicas de firewall. A criação de regras mais complexas pode ser feita, conhecendo em detalhes o funcionamento do TCP/IP, do kernel do Linux e dos dispositivos de rede como roteadores que incorporam firewall e Proxy. A seguir a descrição da estrutura formal de comandos das iptables. Estrutura de comandos das iptables Estrutura básica dos comandos das iptables: iptables [-t <table-name>] <command><chain-name> \ <parameter-1><option-1> \ <parameter-n><option-n><table-name> (especifica o nome da tabela. Se omitida, a tabela de filtro é usada) <command> (especifica a ação a ser realizada) • • • • • • • • • • • • 1. 2. <chain-name> (nome da cadeia de comandos) <parameter>-<option> (parâmetros e opções) As opções dentro dos comandos são: -A: anexa a regra ao final da cadeia. -D <integer> | <rule>: deleta uma regra da cadeia. -E: renomeia uma cadeia. -F: elimina uma cadeia deletando todas as regras. -h: fornece uma lista de estrutura de comandos. -I [<integer>]: insere a regra na cadeia em um ponto específico ou no topo da cadeia se não for especificado o local de inserção. -L: lista todas as regras da cadeia especificada. -N: cria uma nova cadeia de regras. -P: configura uma política padrão para que os pacotes que não se enquadrem em nenhuma regra da cadeia seja aceito ou rejeitado (ACCEPT ou DROP). -R: recoloca uma regra em outro lugar da cadeia de regras. -X: deleta uma cadeia especificada. -Z: zera o contador de pacotes. Exemplo Deletar todas as regras existentes (para aplicar um novo conjunto de regras): iptables –F ou iptables –flush Estabelecer uma cadeia de regras padrão (o padrão é ACCEPT, para trocar colocar DROP): iptables -P INPUT DROP iptables -P FORWARD DROP 3. 4. 5. 6. 7. iptables -P OUTPUT DROP Bloquear um endereço IP específico: BLOCK_THIS_IP=”x.x.x.x” iptables -A INPUT -s “$BLOCK_THIS_IP” -j DROP ou bloqueando a interface Ethernet do endereço IP ou o tráfego TCP: iptables -A INPUT -i eth0 -s “$BLOCK_THIS_IP” -j DROP iptables -A INPUT -i eth0 -p tcp -s “$BLOCK_THIS_IP” -j DROP Permitir o tráfego SSH na interface Ethernet etho: iptables -A INPUT -i eth0 -p tcp --dport 22 -m state -- state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state -- state ESTABLISHED -j ACCEPT Permitir o tráfego de entrada SSH somente de uma rede específica (no exemplo a rede 10.0.10.0/24 ou 10.0.10.0/255.255.255.0): iptables -A INPUT -i eth0 -p tcp -s 10.0.10.0/24 --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --sport 22 -m state -- state ESTABLISHED -j ACCEPT Permitir o tráfego HTTP e HTTPS (web port 80 ou 443): iptables -A INPUT -i eth0 -p tcp --dport 80 -m state -- state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --sport 80 -m state -- state ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --dport 443 -m state -- state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp --sport 443 -m state - -state ESTABLISHED -j ACCEPT Combinar múltiplas regras com mútiplos ports (este exemplo permite que conexões externas acessem múltiplos ports, com a mesma regra, no caso o tráfego de entrada SSH, http e HTTPS): iptables -A INPUT -i eth0 -p tcp -m multiport --dports 22,80,443 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports 22,80,443 -m state --state ESTABLISHED -j ACCEPT 8. 9. 10. 11. 12. 13. 14. Permitir otráfego de saída SSH (port 22): iptables -A OUTPUT -o eth0 -p tcp --dport 22 -m state -- state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --sport 22 -m state -- state ESTABLISHED -j ACCEPT Permitir o tráfego de saída SSH (port 22) somente para acessar uma rede específica (no exemplo a rede 192.168.100.0/24): iptables -A OUTPUT -o eth0 -p tcp -d 192.168.100.0/24 -- dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --sport 22 -m state -- state ESTABLISHED -j ACCEPT Permitir o tráfego de saída web HTTPS (port 443). Se desejar a permissão também para o http (port 80) adicionar mais duas regras com o port 80: iptables -A OUTPUT -o eth0 -p tcp --dport 443 -m state - -state NEW,ESTABLISHED -j ACCEPT iptables -A INPUT -i eth0 -p tcp --sport 443 -m state -- state ESTABLISHED -j ACCEPT Permitir o ping de redes externas para a rede interna: iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT Permitir o ping da rede interna para redes externas: iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT Prevenir ataques externos DoS (Denial of Service) ao servidor web (no exemplo, permite no máximo 25 conexões por minuto): iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT Salvar as regras da iptable (que serão salvas no arquivo 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. etc/sysconfig/iptables): service iptables save Exercícios Descrever a função básica de um Proxy Server. Fazer o download de um Proxy Server da internet e instalar. Relacionar os ports das aplicações DNS, Telnet, FTP e HTTP (web). O que faz uma ACL? Criar um comando de lista de acesso de um roteador para bloquear o acesso de um equipamento de rede com o endereço IP 10.1.1.3. O número dessa lista de acesso deve ser 5. Criar um comando de firewall em uma iptable do Linux para bloquear acessos externos do tipo Telnet e, assim, evitar que intrusos tenham acesso aos terminais de controle do sistema. Montar o comando para o Proxy Server do Linux, que permite o acesso ao servidor para que ele atue como servidor de arquivos FTP. Fazer o download e instalação de software de geração de relatórios para análise de dados de um Proxy Server. Descrever um dispositivo IDS e instalar uma ferramenta opensource para atuar como IDS na rede. Para bloquear todos os dados que vêm de redes externas para a rede interna 10.0.0.0, qual comando deve ser colocado na iptable para bloquear esse tráfego, mas permitir a entrada de e-mails (abrir port 110 – POP3) para todos? As respostas dos exercícios deste livro estão disponíveis para download no seguinte link: <https://www.senaispeditora.com.br/catalogo/ informacoes- tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de- redes/> http://www.senaispeditora.com.br/catalogo/informacoes-tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de-redes/ 4. Análise de tráfego – ferramentas e aplicações Definição Softwares para análise de tráfego de redes e aplicações Definição Existem vários aplicativos para monitorar e analisar o tráfego de dados em redes. Alguns são proprietários, ou seja, ferramentas de gerenciamento de redes desenvolvidas por fabricantes para suas plataformas. Entre estes estão: Openview, NetView, Cisco Works, Tivoli, CA Spectrum, SunNet Manager e outras ferramentas. Outros são abertos, ou seja, utilizam arquiteturas abertas como o TCP/IP com o protocolo SNMP, entre eles: MRTG, Nagios, Cacti, Zabbix. O objetivo dessas ferramentas é monitorar serviços e equipamentos de redes, sinalizando o uso, analisando o tráfego, a ocupação desses recursos e falhas que ocorram, por meio de indicadores de tempo de resposta, volume de dados trafegados, disponibilidade e qualidade dos serviços, entre outros indicadores. Medir e analisar o desempenho de dispositivos e serviços de rede permite o planejamento e o dimensionamento correto da estrutura de rede. Softwares para análise de tráfego de redes e aplicações MRTG O Multi Router Traffic Grapher (MRTG) é uma ferramenta de monitoração que gera páginas HTML com gráficos de dados coletados a partir do protocolo SNMP. Essa ferramenta gera as informações de gerenciamento por meio de relatórios e gráficos, como a Figura 1, que mostra o volume de tráfego de dados por segundo em uma rede. A ferramenta apresenta se o tráfego da rede está ou não atingindo a capacidade máxima do link de comunicação. No caso de o volume de dados trafegados estar acima do suportado pelo link de comunicação, a solução é então aumentar a velocidade do canal de comunicação; por exemplo, quando um canal de comunicação está em média com 60% de uso de sua capacidade, recomenda-se fazer um aumento da velocidade do canal. Figura 1 – Relatório gráfico de monitoração do volume de tráfego de uma rede. Observa-se que o volume de tráfego, medido em bits por segundo, é maior durante os dias úteis da semana. O MRTG é um software de monitoração que faz coleta de dados dos dispositivos da rede, utilizando o protocolo SNMP e gerando informações em páginas HTML que podem ser acessadas remotamente. Ele trabalha em Unix e Windows, é feito na linguagem Perl e suporta o protocolo SNMPv2c. Funciona lendo os dados das interfaces dos equipamentos, recebendo informações em média a cada 5 minutos de acordo com a sua configuração e gerando gráficos no formato PNG. Cada interface monitorada é identificada na MIB. Para a geração de relatórios pode-se utilizar a aplicação Cacti, pois é muito prática em conjunto com o MRTG. A aplicação RRDtool (base de dados) pode ser utilizada como base de dados para armazenar os dados coletados. O MRTG Bundle 2.1.0 é uma instalação para Windows e Linux com o RRDtool (BD), o Apache (que é o webserver que utiliza a porta 9191) e o CGI, que é a parte gráfica. Para instalar o MRTG, no Windows, primeiro deve-se instalar o Perl (Active- Perl). O sistema Linux já vem com o Perl. Para configurar o MRTG, colocar: o endereço IP do computador, a porta SNMP (normalmente a porta 161) que será utilizada; para saber o SNMP OID do objeto da MIB (para buscar o OID, pode-se usar a aplicação Getif, que navega na MIB e busca o OID da interface). Digitar na linha de comando: “perl cfgmaker” e criar o arquivo “mrtg.cfg”. Para uma monitoração contínua, de forma que o MRTG comece a operar automaticamente com o boot, colocar o comando: “RunAsDaemon: yes”. O MRTG não guarda dados históricos. Ele apenas recebe os dados e constrói gráficos. Se quiser armazenar informações, utilizar o RRDtool, que é um database, e o Cacti, que cria relatórios e gráficos. Para instalar o MRTG no Linux, digitar o comando “apt-get install mrtg”, e o programa irá baixar e instalar automaticamente. Para baixar o MRTG pela página oficial, acessar o endereço: MRTG – <http://oss.oetiker.ch/mrtg/> (acesso em: 21 fev. 2017). Nesse endereço oficial é possível encontrar as versões para diferentes sistemas operacionais. No caso do Linux, segue um roteiro/script de instalação: #tar zpfx mrtg-nºversão.tar.gz (baixar e extrair o arquivo do Linux) #cd mrtg-nºversão #./configure –prefix=/usr –sysconfdir=/etc/mrtg (configurar para compilar) #make (compilar) #make install http://oss.oetiker.ch/mrtg/ • • • • Entrar no MRTG e criar o arquivo de configuração utilizando o utilitário “cfgmaker” com o respectivo IP do dispositivo a ser monitorado e finalmente executar o MRTG. Utilizar o manual de referência de configuração do MRTG que pode ser obtido no endereço <http://oss.oetiker.ch/mrtg/doc/mrtg- reference.en.html> (acesso em: 21 fev. 2017). Zabbix O Zabbix é um software livre de monitoramento de redes que coleta dados e monitora dispositivos de rede e aplicações. Pode trabalhar com vários bancos de dados como: Oracle, MySQL, DB2 e outros. Funciona em várias plataformas como o GNU/Linux, AIX e Windows. No endereço a seguir é possível verificar qual plataformase deseja instalar essa ferramenta e baixar a versão desejada e as instruções desta: <http://www.zabbix.org> ou <http://www.zabbixbrasil.org> (acessos em: 21 fev. 2017). É um software estável e com bons relatórios, capaz de monitoramento com ou sem o uso de agentes nos dispositivos remotos, monitoramento de ambientes virtualizados como o VMWare e de aplicações web. É distribuído pela GNU (General Public License). O Zabbix possui vários componentes: Zabbix Server: componente que verifica serviços remotos como servidores web e de e-mail. Zabbix Proxy: coleta dados de desempenho e disponibilidade e envia para o Z server. Zabbix Agent: monitora os dados dos agentes, coleta informações e envia para o Zabbix Server ou Zabbix Proxy. Utiliza o protocolo de transporte TCP e normalmente as portas 10050 e 10051 para os agentes, e 10051 para aplicações Java. O protocolo de aplicação SNMP utiliza o protocolo de transporte UDP e a porta 161 para transmitir os dados. Zabbix Interface Web ou Frontend: faz parte do Z server. Para iniciar, escolher e instalar o banco de dados e o servidor para a interface http://oss.oetiker.ch/mrtg/doc/mrtg-reference.en.html http://www.zabbix.org http://www.zabbixbrasil.org web como o Apache e o PHP para o repositório de configuração de pacotes. Utilizar a configuração padrão mínima para plataformas Linux, como mostra o arquivo de configuração para o agente a seguir: #vl /etc/zabbix/zabbix_agentd.conf O arquivo de configuração do agente deve ter a seguinte configuração mínima: Server=[endereço IP do servidor] Hostname=[nome da máquina client] StartAgents=3 DebugLevel=3 PldFile=/var/tmp/zabbix_agentd LogFile=/tmp/zabbix_agentd.log Timeout=3 Fazer o download e instalação dos pacotes do repositório de configuração do Zabbix no endereço <http://repo.zabbix.com/zabbix/2.2> (acesso em: 21 fev. 2017). #apt-get install zabbix-server-mysql zabbix-frontend-php (exemplo de instalação do servidor Zabbix com Mysql e PHP) #apt-get install zabbix-agent (exemplo de instalação do agente do Zabbix) Uma recomendação para implementar o monitoramento utilizando o Zabbix é começar com poucos dispositivos e pelos itens mais simples e depois ir aumentado os dispositivos monitorados. O Zabbix é um software que fornece excelentes relatórios, boa visualização de dados de monitoramento, emissão de alertas por e-mail e tem um bom desempenho. É um software opensource e suporta os protocolos SNMPv1 e SNMPv2. A interface web do Zabbix fornece um rápido acesso aos dados de monitoração e configuração, facilitando assim o acesso a ele. Nagios O Nagios é também uma ferramenta opensource para o gerenciamento e monitoramento de redes e geração de relatórios alertas com diversas interfaces. O download desse programa está disponível nos sites <htpp://www.nagios.org> e <http://www.nagios.org/download>, nos quais é http://repo.zabbix.com/zabbix/2.2 http://www.nagios.org http://www.nagios.org/download possível escolher a versão adequada para o sistema operacional em uso. Os plugins podem ser obtidos no endereço <http://www.nagios- plugins.org/download/> (acessos em: 21 fev. 2017). No sistema Linux, instalar em /usr/local/nagios, mas antes instalar os pacotes: Apache2, PHP, GCC compiler, GD e bibliotecas de desenvolvimento, utilizando os comandos: sudo apt-get install apache2 sudo apt-get install libapache2-mod-php5 sudo apt-get install build-essential sudo apt-get install libgd2-spm-dev Criar conta para o usuário Nagios e senha: /usr/sbin/useradd –m –s /bin/bash nagios passwd nagios Criar um grupo nagcmd para a interface web e adicionar os usuários Nagios e Apache: /usr/sbin/groupadd nagcmd /usr/sbin/usermod –a –G nagcmd nagios /usr/sbin/usrmod –a –G nagcmd www-data FIQUE ALERTA Como criar um diretório para guardar os downloads e baixar o Nagios e os plugins: mkdir ~/downloads cd ~/downloads wget http://prdownloads.sourceforge.net/sourceforge/nagios/nagios- 3.2.3.tar.gz wget https://www.nagios-plugins.org/download/nagios-plugins-1.4.11.tar.gz Extrair o código-fonte e executar o script de configuração do grupo criado: cd ~/downloads tar xzf nagios-3.2.3.tar.gz cd nagios-3.2.3 . /configure –with-command-group=nagcmd make install make install –init make install – config make install –commandmode Editar o arquivo com os e-mails que receberão alertas, instalar o arquivo de http://www.nagios-plugins.org/download/ http://prdownloads.sourceforge.net/sourceforge/nagios/nagios-3.2.3.tar.gz http://www.nagios-plugins.org/download/nagios-plugins-1.4.11.tar.gz 1. 2. 3. 4. configuração web, criar conta nagiosadmin e senha: vi /usr/local/nagios/etc/objects/contacts.cfg make install-webconf groupadd nagios useradd –g nagios nagiosadmin htpasswd –c /usr/local/nagios/etc/htpasswd.users/nagiosadmin Extrair os plugins do Nagios e instalar: cd ~/downloads tar xzf nagios-plugins-1.4.11.tar.gz cd nagios-plugins-1.4.11 . /configure – with-nagios-user=nagios –with-nagios-group=nagios make make install /etc/init.d/nagios start Em seguida, instalar e configurar os agentes nos dispositivos a serem monitorados, como o NSClient (que executa ações e tarefas nos equipamentos monitorados), o NRPE (Nagios Remote plugin Executor), responsável pela coleta de dados do Nagios, e o NSCA (Nagios Service Check Acceptor), que envia resultados do Nagios. O NRPE pode ser baixado pelo endereço sugerido abaixo, em seguida descompactado e instalado: cd ~/downloads wget http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2-8/nrpe-2.8.tar.gz tar xzfnrpe-2.8.tar.gz cd nrpe-2.8 ./configure make make install make install-plugin make install-daemon make install-daemon-config Exercícios Citar as características da ferramenta MRTG e a sua função básica. Fazer o download e a instalação do MRTG. Descrever as características básica do Cacti. Pesquisar exemplos gráficos de visualização de tráfego e suas aplicações no monitoramento de redes. http://sourceforge.net/projects/nagios/files/nrpe-2.x/nrpe-2-8/nrpe-2.8.tar.gz 5. 6. Descrever as características da ferramenta Zabbix e instalar esse aplicativo. Descrever as características básicas da ferramenta de monitoramento Nagios. As respostas dos exercícios deste livro estão disponíveis para download no seguinte link: <https://www.senaispeditora.com.br/catalogo/informacoes- tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de- redes/> http://www.senaispeditora.com.br/catalogo/informacoes-tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de-redes/ 5. TACACS, RADIUS e AAA – protocolos e arquitetura de segurança e autenticação Definição Conceitos de autenticação, autorização e Accounting (AAA) e aplicabilidade Auditoria Terminal Access Controller Access Control Service (TACACS) Remote Access Dial-in User Service (RADIUS) Definição A segurança e o controle de acesso a sistemas e redes é um dos pontos básicos de um modelo de segurança, a qual deve ser implementada e monitorada. Alguns dos protocolos utilizados no controle de acesso para fazer a autenticação, a autorização e o registro ou contabilização dos acessos são o TACACS e o RADIUS. Basicamente um modelo de controle de acesso consiste em uma aplicação TACACS instalada em um host central e clients instalados nos dispositivos ou usuários remotos que farão o acesso. Essas aplicações devem ser instaladas e configuradas para disponibilizar os processos de autenticação e autorização de acessos. Conceitos de autenticação, autorização e Accounting (AAA) e aplicabilidade A identidade de um usuário ou dispositivo de acesso a redes e sistemas pode ser definida como sua identificação exclusiva. Um exemplo de identidade é o username, nome pelo qual o usuário se identifica quando faz o login em um sistema. Quando um usuário se identifica pelo username no login de acesso, é necessário validar essa identificação pelo processo chamado de autenticação. Autenticação A autenticação garante que o usuário ou dispositivo que está acessando um sistema é realmente ele. Dessaforma existe a segurança pela qual somente os usuários pré-cadastrados e validados terão acesso ao sistema, evitando assim acessos indevidos. O Linux opera com diversos protocolos de autenticação, como o módulo PAM, que centraliza a autenticação de todos os serviços, o TACACS, o RADIUS Server, o NIS (Network Information Service), o AD (Active Diretory) e outros. Na autenticação, a verificação da identidade do usuário é feita pela comparação de username e senha, certificados digitais, biometria e outros métodos. A autenticação pergunta: “quem é o usuário?”; “o usuário está cadastrado?”. Autorização Após a autenticação vem o processo de autorização, em que são atribuídos ao usuário os privilégios de acesso, ou seja, liberar o acesso somente àquilo que foi definido na política de segurança para esse usuário e/ou o grupo a que pertence. A autorização pergunta: “o que o usuário tem permissão de fazer após o acesso?”. • • • • • A autorização é basicamente a concessão de uso para um determinado serviço a um usuário previamente autenticado. É aplicada para colocar restrições no acesso, por exemplo, proibir o acesso a um determinado serviço de rede no final de semana. Accounting (contabilização ou registro) No processo de contabilização, as informações sobre as atividades de acesso são coletadas e enviadas ao servidor de autenticação para registro ou log. O registro possui as informações sobre “o que o usuário fez?”. A seguir são mostrados alguns dos usos da arquitetura AAA para o controle de acesso a serviços na rede: Controle de acesso em redes locais e wireless. Controle de acesso por VPN (Virtual Private Network), normalmente feito por acesso remoto via internet, onde se checam as credenciais (identidade) do usuário ou dispositivos de rede, para estabelecer o túnel VPN de conexão. Controle de acesso por meio de firewalls e Proxy de autenticação. Controle de acesso à internet. Controle de acesso aos equipamentos de rede como roteadores e servidores. Auditoria Os procedimentos de auditoria se referem à coleta e análise das informações relacionadas à utilização dos recursos da rede e dos acessos feitos pelos usuários. Essas informações são normalmente armazenadas com o nome de log em arquivos de textos e analisadas manualmente ou por aplicações desenvolvidas para esse fim, que fazem a análise e o monitoramento automáticos de eventos como os IDS (Intrusion Detection System). Na auditoria em tempo real, as informações são processadas e disponibilizadas de imediato para análise e uso. Na auditoria de modalidade batch, as informações são gravadas e armazenadas para análise posterior. As informações são: identidade do usuário, tipos de acesso que ele efetuou, horários do início e fim dos acessos e demais dados que sejam necessários relativos ao acesso. Detalhes sobre o acesso a redes e arquitetura AAA podem ser obtidos nas RFC2881 e RFC2903. Auditoria de rede A auditoria de rede consiste em avaliar se os serviços de rede estão operacionais, atualizados e funcionando corretamente. Essa análise pode ser feita manualmente ou por aplicativos. Para isso é necessário ter uma documentação completa dos serviços de rede instalados e do modo como estão instalados. Uma das aplicações que fazem auditoria e análise de sistemas, segurança e serviços de rede é o software NESSUS, que faz o escaneamento de sistemas operacionais, dispositivos de redes, bases de dados, servidores, vulnerabilidades, infraestrutura e geração de relatórios. Essa ferramenta e sua documentação podem ser obtidas no endereço <http://www.nessus.org> (acesso em: 21 fev. 2017). Auditoria de senhas Uma política de segurança de senhas inclui a quantidade mínima de caracteres que formam a senha; evitar senhas óbvias como datas ou sequências numéricas como 1234 e outros padrões fáceis de se descobrir. As senhas dos sistemas Linux são armazenadas no arquivo “/etc/passwd”, que é um arquivo “.txt” e assim possui muita vulnerabilidade, ou no arquivo “/etc/shadow”, que possui uma segurança maior por evitar o acesso por usuários comuns. No módulo PAM do Linux, a administração de senhas já vem com criptografia, o que aumenta a segurança contra hackers. Deve-se também evitar que usuários que não mais utilizam o sistema fiquem http://www.nessus.org cadastrados desnecessariamente. Auditoria de arquivos Visa avaliar e garantir que os arquivos de configurações e executáveis do sistema estejam instalados corretamente e seguros contra alterações, evitando, por exemplo, que sejam substituídos e alterados por ataques de hackers. Esse controle de acesso a arquivos e configurações pode ser feito por meio de assinaturas digitais, as quais identificam o arquivo original e permitem o acesso somente para os usuários que as possuam. Uma ferramenta que automatiza esse processo é o TRIPWIRE, que pode ser obtido no endereço <http://www.tripwire.com> (acesso em: 21 fev. 2017). Terminal Access Controller Access Control Service (TACACS) O protocolo TACACS foi especificado originalmente pela RFC1492 e posteriormente evoluiu para a versão atual chamada de TACACS+, que utiliza o TCP como protocolo de transporte e que faz parte da plataforma Cisco (Cisco Secure Access Control System – CS ACS). Alguns fabricantes incorporaram o TACACS em seus equipamentos, com algumas variações, porém com o nome HWTACACS. O TACACS+ faz tanto o processo de autenticação quanto o de autorização, no controle de acesso aos equipamentos de rede. O processo é centralizado no servidor TACACS+, onde a configuração dos usuários e grupos de usuários é feita. Cada comando enviado por um usuário para o servidor TACACS é comparado com a lista de comandos e tipos de acessos autorizados que está no servidor, para então autorizar ou não o acesso do usuário ou dispositivo de rede. O servidor TACACS deve ser instalado em uma rede interna confiável, de forma que o servidor esteja protegido contra acessos e ataques externos, onde o acesso ao servidor é feito por login administrativo. http://www.tripwire.com Figura 1 – Exemplo de usuário solicitando acesso a um serviço. A solicitação vai para o TACACS+ Server, que responde. Fonte: Cisco Networks. O TACACS+ pode ser instalado no mesmo servidor que o AD para se obter melhor desempenho. Acessar o site <http://www.tacacs.net> (acesso em: 21 fev. 2017) para fazer o download da versão desejada do sistema operacional para instalação e testes. O TACACS+ em sua versão 1.3 utiliza a porta 49 do TCP para as conexões de entrada; assim, essa porta deve ser configurada no firewall para permitir esse tráfego. O usuário do TACACS+ pode ser um dispositivo de rede como um roteador, switch ou firewall, que necessita de autenticação para acesso. Esses usuários ou clientes são chamados de NAS. Para incluir um cliente no servidor TACACS+ é necessário editar o arquivo “clients.xml”. A autorização de acesso aos serviços, feita de acordo com a política de segurança, é especificada no arquivo “authorization.xml”. Remote Access Dial-in User Service (RADIUS) O RADIUS é um protocolo de autenticação de usuários, para o controle de acesso remoto a serviços de redes. Foi muito utilizado pelos provedores de acesso à internet, ambientes de acesso dial-up, VPNs de acesso remoto (como IPSec e SSL VPN) e redes wireless. No Linux há o módulo PAM com o http://www.tacacs.net RADIUS Server. O usuário solicita uma autorização de login para o servidor, assim o cliente deve estar autorizado no servidor. Essa autorização é composta do hostname ou IP do usuário e uma chave/senha de acesso criptografada, que é configurada tanto no dispositivo do usuário quanto no servidor. O RADIUS faz a bilhetagem (log ou contabilização dos acessos) registrando quanto tempo o usuário ficou conectado e o volume de dados trafegado. Essa ferramenta pode ser obtida no endereço <http://www.freeradius.org> (acesso em: 21 fev. 2017), em uma versão opensource para o Linux. O RADIUS faz em conjunto a autenticação e autorização e pode dividir os usuários em grupos, em que cada grupo de usuáriostem autorização para diferentes acessos. A maioria dos equipamentos de rede, como roteadores e switches, pode operar com o RADIUS e o TACACS+, utilizando, por exemplo, o RADIUS em um ambiente de rede local para controlar o acesso de um usuário a uma porta física do switch e o TACACS+ para controle de acesso de configuração do equipamento. Um servidor para controle de acesso, na arquitetura AAA, é o CS ACS da Cisco, que faz o controle de acesso utilizando tanto o RADIUS como o TACACS+. Dessa forma, controla tanto as funções de acesso a serviços de rede como o controle de acesso administrativo aos equipamentos da rede. Assim, o RADIUS e o TACACS+ são os principais protocolos de serviços AAA em equipamentos de rede. http://www.freeradius.org Figura 2 – Comparação da forma de operar do RADIUS e do TACACS+, em que o primeiro faz a autenticação e a autorização em conjunto, e o último faz a autenticação e a autorização separadamente. O RADIUS é recomendado para pequenas redes em que a autorização não é necessária. Para redes maiores e com políticas de segurança mais abrangentes, o TACACS+ é mais recomendado. O RADIUS era muito utilizado na autenticação dos usuários que faziam o acesso à internet por meio de linhas telefônica e modems, tendo que digitar a identificação e senha para ser autenticados e, então, poder acessar o servidor web do provedor, daí o seu nome Remote Authentication Dial-In User Service (RADIUS). É um padrão do IETF e utiliza o port 1812 no protocolo de transporte UDP para o serviço de autenticação e o port 1813 para o serviço de registro de dados (Accounting). Figura 3 – Servidor RADIUS autenticando usuários que fazem o acesso remoto pela internet (VPN) ou por linha telefônica (dial-up), para permitir ou bloquear o acesso à rede interna. Exercícios 1. 2. 3. 4. 5. Definir os conceitos da arquitetura AAA e sua função. O que é auditoria de rede e qual sua função? O que é o TACACs e o que faz? O que faz o RADIUS e qual a sua função? Fazer o download e instalar o software GNS3 para o desenho e testes de topologias de rede. As respostas dos exercícios deste livro estão disponíveis para download no seguinte link:< https://www.senaispeditora.com.br/catalogo/informacoes- tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de- redes/> http://www.senaispeditora.com.br/catalogo/informacoes-tecnologicas-tecnologia-da-informacao/gerenciamento-e-seguranca-de-redes/ Apêndice Configuração Práticas recomendadas Configurações O arquivo de configurações ou Shell é o conjunto de comandos que permite ou nega os acessos de acordo com a política de segurança. O Shell fica ativo durante toda a sessão em que o usuário fica logado, fazendo a análise e o filtro do tráfego de dados. A seguir alguns exemplos de comandos do arquivo “authorization.xml”. <Permit>.*<Permit> (permite todo o tráfego ou permit all) <Deny>.*/Deny> (nega todo o tráfego ou deny all) Endereços e faixas de endereços: (atua neste único endereço IP) 192.168.*.* (atua em todos os endereços IP que começam com 192.168) 192.168.10.1-192.168.10.255 (atua em todos os IPs desta faixa) GNS3 É uma ferramenta para desenhar e testar topologias de rede, a qual pode ser baixada do endereço <https://www.gns3.com> (acesso em: 22 fev. 2017). Para instalar no Linux Ubuntu 64 bits os comandos são: sudo add-apt-repository ppa:gns3/ppa sudo apt-get update sudo apt-get install gns3-gui Esse software simula redes e suas configurações para fazer testes e solução de problemas. É um software opensource. http://www.gns3.com Figura 1 – Topologia de uma rede criada pelo software GNS3. Configuração do TACACs em um roteador Cisco No equipamento, no caso o roteador, habilitar o AAA e configurar o servidor TACACs com o IP dele, definir a senha/chave de comunicação entre o equipamento e o servidor: aaa new-model authentication login default tacacs local aaa authentication login consoleport none aaa authentication ppp default if-needed tacacs aaa authorization network tacacs aaa authorization exec default if-authenticated none enable secret local_secret username local_user secret local_password line con 0 login authentication consoleport line vty 0 4 login authentication telnet line vty 5 15 tacacs-server host 192.168.10.3 tacacs-server key senhadeacesso O GNS3 é basicamente um simulador de redes que emula diferentes equipamentos de redes como: roteadores, switches, computadores e dispositivos de rede, permitindo a simulação e execução de testes de configurações e funcionamento da rede. Figura 2 – Tela do GNS3 com interface gráfica. O GNS3 é uma ferramenta útil para registrar e testar as configurações e dispositivos de rede antes de serem colocadas em produção. • • • • • Figura 3 – O GNS3 é capaz de simular diversas plataformas Cisco e IOS. Os IOS devem ser carregados no GNS3 para fazer a simulação. Para instalar o GNS3 no Linux Ubuntu: sudo apt-get install gns3 dynamips Práticas recomendadas Gerenciamento de falhas Nesta área, o objetivo é monitorar, detectar, isolar o problema, emitir alertas e notificações e corrigir as falhas. Os alertas são emitidos em interfaces gráficas, normalmente utilizando o protocolo HTML, para notificar o usuário. Os traps ou pollings (mensagens enviadas pelos agentes) são recebidos por meio do protocolo SNMP e interpretados de acordo com os dados armazenados na MIB. Os alertas podem ser emitidos a partir de falhas detectadas pelos agentes nos dispositivos de rede como: falta de energia ou falha na fonte de alimentação no dispositivo; temperatura elevada ou falha no ventilador; falha na memória; falhas em aplicações rodando no dispositivo; erros ou interrupções do canal de comunicação de dados. Gerenciamento de configuração O objetivo do gerenciamento de configuração é monitorar, registrar e controlar as configurações dos dispositivos de rede. Têm-se aqui o gerenciamento e administração dos arquivos de configurações, o inventário de equipamentos e softwares utilizados pelos equipamentos da rede. Os dispositivos de rede são mapeados, nomeados e documentados, o que facilita na resolução de problemas e falhas que ocorram na rede, assim como também na configuração correta dos equipamentos. • • • • • Gerenciamento do software Em uma rede composta de muitos dispositivos, a atualização de software, quando necessária, exige um sistema de controle eficaz e automatizado que possa ser feito remota e rapidamente. A manutenção e troca de versões de softwares em equipamentos exige ações como: fazer o backup da configuração atual antes de efetuar a mudança; carregar a nova versão no equipamento; automatizar e fazer as manutenções de configurações e atualizações de software fora do horário comercial, para não impactar no trabalho dos usuários; planejar todas as etapas de configurações e atualizações de software para evitar que ocorram falhas nesses procedimentos; é recomendável sempre se fazer um teste piloto com um pequeno grupo de equipamentos, antes de fazer em toda a rede, para detectar eventuais problemas que possam ocorrer e corrigi-los antes de implantar em toda a rede. Gerenciamento de desempenho e nível de serviço (SLA) Gerenciar o desempenho de uma rede e monitorar o desempenho e a disponibilidade desta, verificando por exemplo se a velocidade de transferência dos dados está dentro do aceitável, ou seja, se o nível de serviço (SLA) está dentro dos parâmetros desejados e atendendo os usuários e serviços de forma adequada. Uma das formas de ter um parâmetro de desempenho é efetuar um acordo ou contrato de serviço com os usuários da rede, em que é especificado como e com que qualidade os serviços de rede serão disponibilizados. Nesse contrato estabelecem-se parâmetros de níveis de serviço de rede que serão oferecidos, chamados de SLA, como a velocidade dos canais de comunicação, a taxa de utilização máxima da CPU para que o equipamento não fique sobrecarregado, o tempo de resposta da rede, entre outros. Relatórios de desempenho também devem ser emitidos regularmente,mostrando que a • • • rede está atendendo com folga às necessidades da empresa. Gerenciamento de segurança Gerenciar a segurança em uma rede é monitorar e permitir o acesso às informações somente a pessoas autorizadas. O mesmo vale para os dispositivos de rede, que devem ser autenticados e autorizados para se conectarem com outros dispositivos. O objetivo do gerenciamento de segurança é controlar o acesso aos recursos de rede com base em uma política de segurança. É importante implementar uma configuração padrão mínima de segurança para roteadores e switches, o que é feito por meio de ACLs (Listas de Controle de Acesso). As ACLs são listas de comandos que são aplicados nas interfaces de entrada e saída dos roteadores e switches para evitar ataques e bloquear tráfego não compatível com a política de segurança. O uso de ID e senha para o acesso a esses equipamentos também é recomendado, assim como o uso de protocolos de autenticação e autorização como o TACACS e a arquitetura AAA (Autenticação, Autorização e Accounting), em que: Autenticação: é o processo de identificação de usuários, incluindo login e senha, pelo qual o usuário é identificado para poder acessar um sistema ou equipamento de rede. Autorização: controla o acesso a determinados serviços de rede e equipamentos como roteadores, de acordo com a política de segurança. Quanto mais privilégios de autorização um usuário recebe, mais segura deverá ser a autenticação. Accounting e relatórios: registra os acessos ou contabilidade e faz a coleta das informações de segurança, gerando arquivos de registros de logs com a identificação dos horários de acesso, comandos executados e outras informações que poderão ser visualizadas em interfaces gráficas ou relatórios. Os relatórios permitem aos gerentes de rede rastrear os serviços acessados pelos usuários e dispositivos de rede. Gerenciamento de relatórios O gerenciamento de relatórios consiste em obter dados sobre a utilização dos recursos de rede e emitir essas informações em um formato gráfico ou em papel, para que sejam analisadas. Considerações finais Neste livro, foram estudadas as principais ferramentas utilizadas no gerenciamento e monitoramento de redes e as arquiteturas de segurança utilizadas para fornecer segurança no acesso aos dados e auditoria de redes. As arquiteturas físicas de gerenciamento de redes abordadas foram: centralizada, descentralizada e distribuída, assim como o modelo de gerenciamento FCAPS da ISO, que especifica as etapas de monitoramento e gerência de redes nos itens: falhas, configuração, desempenho, contabilização e segurança. Aprenderam o modelo de gerenciamento pela web (WBEM), as bases de dados de gerenciamento MIB, o protocolo de troca de mensagens SNMP, firewall, Proxy Servers, NAT, segurança física e lógica. Também foram conhecidas as listas de acesso (ACLs) e os scripts, que fazem o controle do tráfego de dados, assim como as iptables. As ferramentas de análise de tráfego como MRTG, Zabbix e Nagios foram estudadas e avaliadas, bem como os protocolos de autenticação e autorização de acessos TACACS e RADIUS, com práticas recomendadas ao final do Apêndice. Por fim, foram tratados os aspectos fundamentais e práticos a serem utilizados no monitoramento, no gerenciamento de redes e na segurança do acesso às redes, além da auditoria de redes, visando dar segurança às redes corporativas e auxiliar no planejamento. Devido à grande abrangência do assunto, é necessário conhecer novas aplicações que são continuamente desenvolvidas para aumentar a segurança e o controle de acesso às informações. Referências BENNETT, G. Designing TCP/IP internetworking. Rio de Janeiro: Infobook, 1998. CHIOZZOTTO, M.; SILVA, L. A. P. TCP/IP: tecnologia e implementação. São Paulo: Érica, 1999. CISCO SYSTEMS. Interconnecting Cisco network devices. Cisco Systems, 2000. GARFINKEL, S.; SPAFFORD G. Practical UNIX security. Sebastopol: O’Reilly & Associates, 1991. IBM. INTERNATIONAL TECHNICAL SUPPORT ORGANIZATION. TCP/IP: tutorial and technical overview. Dec. 2006. MCLEAN, J. C. Windows Server 2003 network infrastruture, 2004. MCQUERRY, S. Interconnecting Cisco network devices. Indianapolis: Cisco, 2000. MORAES, A. F. Segurança em redes: fundamentos. São Paulo: Érica, 2010. RANUM, M. J. R. Thinking about firewalls. SANSII, 1993. SOUSA, L. B. Redes de computadores. São Paulo: Érica, 2010. ______. TCP/IP: básico e conectividade em redes. São Paulo: Érica, 2002. ______. Projetos e implementação de redes. São Paulo: Érica, 2010. ______. Redes Cisco CCNA. São Paulo: Érica, 2002. VIEIRA, F. M. Trabalhando em redes. São Paulo: Érica, 2002. Sites Aceco TI. Disponível em: <http://www.acecoti.com.br>. Acesso em: 22 fev. 2017. FreeRADIUS. Disponível em: <http://www.freeradius.org>. Acesso em: 22 fev. 2017. GNS3. Disponível em: <http://www.gns3.com>. Acesso em: 22 fev. 2017. Internet Engineering Task Force. Disponível em: <http://www.ietf.org/rfc/rfc2251.txt>. Acesso em: 22 fev. 2017. Linux-PAM. Disponível em: <http://www.linux-pam.org/Linux-PAM- html/Linux-PAM_SAG.html>. Acesso em: 22 fev. 2017. Nagios. Disponível em: <http://www.nagios.org>. Acesso em: 22 fev. 2017. NESSUS. Disponível em: <http://www.nessus.org>. Acesso em: 22 fev. 2017. Psionic. Disponível em: <http://www.psionic.com>. RPM. Disponível em: <http://www.rpmfind.net>. Acesso em: 22 fev. 2017. SourceForge. Disponível em: <http://sourceforge.net/projects/sarg/files/sarg/sarg-2.3.3/sarg- 2.3.3.tar.gz/download>. Acesso em: 22 fev. 2017. TACACs. Disponível em: <http://www.tacacs.net>. Acesso em: 22 fev. 2017. The Multi Router Traffic Grapher. Disponível em: <http://oss.oetiker.ch/mrtg/>. Acesso em: 22 fev. 2017. Zabbix. Disponível em: <http://www.zabbix.org>. Acesso em: 22 fev. 2017. http://www.acecoti.com.br http://www.freeradius.org http://www.gns3.com http://www.ietf.org/rfc/rfc2251.txt http://www.linux-pam.org/Linux-PAM-html/Linux-PAM_SAG.html http://www.nagios.org http://www.nessus.org http://www.psionic.com http://www.rpmfind.net http://sourceforge.net/projects/sarg/files/sarg/sarg-2.3.3/sarg-2.3.3.tar.gz/download http://www.tacacs.net http://oss.oetiker.ch/mrtg/ http://www.zabbix.org Sobre o autor Lindeberg Barros de Sousa é engenheiro pela Fundação Armando Álvares Penteado (Faap), com pós-graduação em Administração da Produção pela Fundação Getulio Vargas (FGV) e Gestão (Instituto Keppe-Pacheco/INPG), além de especializações em Arquitetura de Computadores e Comunicação de Dados (FDTE/USP/IPT) e Gerência de Projetos (Instituto Vanzolini). Atua há mais de 20 anos nas áreas de consultoria, treinamento, gerência de projetos, desenvolvimento, operação e suporte de plataformas de tecnologia da informação, em empresas nacionais e multinacionais, nas áreas industrial, comercial, de serviços e mercado financeiro. Foi diretor e membro do Conselho Deliberativo da Sociedade dos Usuários de Informática e Telecomunicações de São Paulo (SUCESU-SP) e autor de livros nas áreas de Redes de Computadores e Comunicação de Dados, publicados pela Editora Érica. É professor universitário em cursos de graduação e pós-graduação em Tecnologia da Informação na Universidade de Mogi das Cruzes (UMC), Faculdade de Informática e Administração Paulista (Fiap) e Faculdades Associadas de São Paulo (Fasp). Conselho Editorial Paulo Skaf Walter Vicioni Gonçalves Débora Cypriano Botelho Ricardo Figueiredo Terra Roberto Monteiro Spada Neusa Mariani Editor chefe Rodrigo de Faria e Silva Editor de mídias digitais Antonio Hermida Produção editorial Letícia Mendes de Souza Edição Paula Hercy Cardoso Craveiro Eloah Pina Monique Gonçalves Tania Mano Preparação Lilian Garrafa Revisão Muiraquitã Editoração Gráfica Ltda. Produção gráfica Camila Catto Sirlene Nascimento Valquíria Palma Diagramação Globaltec Editora Capa Inventum Design Administrativo e financeiro Valéria Vanessa Eduardo Flávia Regina Souza de Oliveira Comercial Ariovaldo Camarozano Bruna Mataran Volpe © SENAI-SP Editora, 2017 A SENAI-SP Editoraempenhou-se em identificar e contatar todos os responsáveis pelos direitos autorais deste livro. Se porventura for constatada omissão na identificação de algum material, dispomo-nos a efetuar, futuramente, os possíveis acertos. Dados Internacionais de Catalogação na Publicação (CIP) Sousa, Lindeberg Barros de Gerenciamento e segurança de redes / Lindeberg Barros de Sousa. – São Paulo : SENAI-SP Editora, 2017. 104 p. : il. (Tecnologia da informação) Inclui referências ISBN 978-85-8393-866-8 1. Redes de computadores I. Título. CDD 004.65 Índice para o catálogo sistemático: 1. Redes de computadores 004.65 SENAI-SP Editora Avenida Paulista, 1313, 4o andar, 01311 923, São Paulo – SP F. 11 3146.7308 | editora@sesisenaisp.org.br | www.senaispeditora.com.br mailto:editora@sesisenaisp.org.br http://www.senaispeditora.com.br Informática - Fundamentos e terminologia Ramos, Alex de Almeida 9788583936602 216 páginas Compre agora e leia Compreender os recursos computacionais não é mais um diferencial, mas um pré-requisito para se manter inserido no mundo atual. O objetivo desta obra é apresentar um pouco da história do computador, seus componentes de hardware e uma visão geral sobre o uso do Windows 8. Para proporcionar mais facilidade em suas atividades do cotidiano, o livro ensina os principais recursos e ferramentas do Microsoft Office Word 2013, Microsoft Office Excel 2013 e Microsoft Office PowerPoint 2013, além do uso da internet, tipos de navegadores, dicas de pesquisa, formas de acesso e aspectos relacionados à segurança das informações. Compre agora e leia http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583936602/d3d1730089f0e92f24835244a0bf9d46 http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583936602/d3d1730089f0e92f24835244a0bf9d46 Sistemas mecânicos de motocicletas SENAI-SP Editora 9788583935353 168 páginas Compre agora e leia A história das motocicletas, alguns dos modelos já fabricados, os tipos e componentes dos motores, seu funcionamento e procedimentos de manutenção são estudados nesta publicação. São apresentados os tipos de chassi, os detalhes dos sistemas de freios, o sistema de direção e suspensão, tipos de amortecedores, especificação técnica dos pneus, a divisão do sistema de transmissão. O livro descreve também o sistema de alimentação de combustível, a composição do sistema de ignição, como funciona o sistema de lubrificação e arrefecimento, diagrama elétrico, baterias e sistema de sinalização e iluminação. Compre agora e leia http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583935353/ef5dff6c9877853c0527b2a6bf49dbd5 http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583935353/ef5dff6c9877853c0527b2a6bf49dbd5 Matemática básica SENAI-SP Editora 9788583933212 124 páginas Compre agora e leia De forma prática e objetiva, esta publicação aborda o estudo das operações matemáticas fundamentais, tais como o sistema de numeração decimal, adição, subtração, multiplicação, potenciação e divisão exata. Aborda também os tipos de fração, potenciação, razão e proporção, regra de três, porcentagem, medidas, figuras geométricas, a importância da leitura de gráficos e os tipos mais comuns. Compre agora e leia http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583933212/9f54706f7cec291868704f9a960fca38 http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583933212/9f54706f7cec291868704f9a960fca38 Dashboard no Microsoft Office Excel 2016 Fraga, Adalberto Conceição 9788583937531 240 páginas Compre agora e leia Direcionado a estudantes e profissionais dos mais diversos níveis estratégicos de uma organização, que dependem de grande quantidade de dados para trabalhar na tomada de decisão, este livro ensina a desenvolver e analisar relatórios gerenciais com a criação de dashboards automáticos e personalizados. Apresenta as principais ferramentas como conjunto de ícones, barra de dados, minigráficos, gráficos de colunas, dispersão, rosca para criação de velocímetros de desempenho, tabela e gráficos dinâmicos, além das novas ferramentas da versão do Excel 2016, como Power Map, Power View, Gráficos de Mapa de Árvores, Explosão Solar, Queda d'água e Funil. Compre agora e leia http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583937531/d7107539361f75bc01d72646f580b8f3 http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583937531/d7107539361f75bc01d72646f580b8f3 Redes de computadores Bungart, José Wagner 9788583937647 200 páginas Compre agora e leia Esta publicação apresenta os princípios de funcionamento das redes de computadores e os protocolos que permitem a comunicação entre os dispositivos que a compõem. Destinada a estudantes de cursos técnicos, tecnólogos, profissionais de informática e demais interessados, ela destaca os principais equipamentos utilizados nas redes de computadores, suas funções, características e aplicabilidade, por exemplo, as topologias de redes, modelo OSI, arquitetura TCP/IP, camadas transporte e protocolo IP e seus endereçamentos. Descreve a camada enlace e a camada física, redes sem fio, serviços de redes como DHCP e o DNS, serviços de acesso remoto Telnet e SSH. Ao final, traz as configurações básicas de switches e roteadores. Compre agora e leia http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583937647/72038af4e3d15602c620d68a1a13f411 http://www.mynextread.de/redirect/Amazon+%28BR%29/3036000/9788583938675/9788583937647/72038af4e3d15602c620d68a1a13f411 Folha de Rosto Apresentação Sumário Introdução 1. Ferramentas de gerenciamento de redes Conceito Importância do gerenciamento Tipos de gerência de redes Aplicabilidade e modelos de gerência de redes Protocolos e elementos de um sistema de gerência de redes 2. Firewall Segurança física Segurança lógica e fluxo de pacotes Tabelas NAT (Network Address Translation) 3. Proxy Server – firewall de nível de aplicação Proxy Módulos de autenticação Relatórios 4. Análise de tráfego – ferramentas e aplicações Definição Softwares para análise de tráfego de redes e aplicações 5. TACACS, RADIUS e AAA – protocolos e arquitetura de segurança e autenticação Definição Conceitos de autenticação, autorização e Accounting (AAA) e aplicabilidade Auditoria Terminal Access Controller Access Control Service (TACACS) Remote Access Dial-in User Service (RADIUS) Apêndice Configurações Práticas recomendadas Considerações finais Referências Sobre o autor Créditos