240 likes | 396 Vues
Objetivos do capítulo: introdução ao gerenciamento de redes motivação componentes principais Ambiente de gerenciamento de redes da Internet MIB: base de informações de gerenciamento SMI: linguagem de definição de dados SNMP: protocolo para gerenciamento de redes
E N D
Objetivos do capítulo: introdução ao gerenciamento de redes motivação componentes principais Ambiente de gerenciamento de redes da Internet MIB: base de informações de gerenciamento SMI: linguagem de definição de dados SNMP: protocolo para gerenciamento de redes serviços de apresentação: ASN.1 firewalls Capítulo 8: Gerenciamento de Redes
O que é gerenciamento de redes? • Sistema autônomo (isto é “rede”): centenas ou milhares de componentes de hardware/software interagindo • outros sistemas complexos que requerem monitoração e controle: • avião a jato • usinas nucleares • outras? ”Gerenciamento de redes inclui o fornecimento, integração e coordenação de hardware, software e elementos humanos para monitorar, testar, configurar, consultar, analisar, avaliar e controlar a rede e recursos para atender os requisitos de desempenho, qualidade de serviço e operação em tempo real dentro de um custo razoável."
managing entity data data data data data agente agente agente agente Infraestrutura para Gerenciamento de Redes definições: gerenciador Elementos gerenciados contêm objetos gerenciados cujos dados são reunidos numa MIB (Management Information Base) entidade de gerenciamento Elemento gerenciado protocolo de gerenciamento Elemento gerenciado Elemento gerenciado Elemento gerenciado
OSI CMIP Common Management Information Protocol projetado nos anos 80: o padrão de gerenciamento por excelência padronização lenta demais SNMP: Simple Network Management Protocol origem na Internet (SGMP) começou simples desenvolvido e adotado rapidamente crescimento: tamanho e complexidade atualmente: SNMP V3 padrão de fato para gerenciamento de redes Padrões de Gerenciamento de Redes
SNMP visão-geral: 4 partes-chave • Management information base (MIB): • base de dados distribuída com dados de gerenciamento de rede • Structure of Management Information (SMI): • linguagem de definição para objetos da MIB • protocolo SNMP • transporta informações e comandos sobre objetos entre o gerenciador e o elemento gerenciado • segurança, capacidades administrativas característica nova do SNMPv3
Propósito: criação de uma sintaxe e semântica para definição de dados de gerenciamento de forma não-ambígua tipos de dados: formato genérico dos dados OBJECT-TYPE tipo de dado, status, semântica do objeto gerenciado MODULE-IDENTITY grupos de objetos relacionados num módulo MIB SMI: linguagem de definição de dados Tipos de Dados Básicos INTEGER Integer32 Unsigned32 OCTET STRING OBJECT IDENTIFIER IPaddress Counter32 Counter64 Gauge32 Time Ticks Opaque
MODULE SNMP MIB Um módulo MIB é especificado pela SMI como: MODULE-IDENTITY (100 MIBs padronizadas, mais proprietárias) OBJECT TYPE: OBJECT TYPE: OBJECT TYPE: objetos especificados via construção OBJECT-TYPE da SMI
OBJECT-TYPE:ipInDelivers MODULE-IDENTITY:ipMIB SMI: exemplo de Objeto e Módulo ipMIB MODULE-IDENTITY LAST-UPDATED “941101000Z” ORGANIZATION “IETF SNMPv2 Working Group” CONTACT-INFO “ Keith McCloghrie ……” DESCRIPTION “The MIB module for managing IP and ICMP implementations, but excluding the management of IP routes.” REVISION “019331000Z” ……… ::= {mib-2 48} ipInDelivers OBJECT TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION “The total number of input datagrams successfully delivered to IP user- protocols (including ICMP)” ::= { ip 9}
Exemplo de MIB : módulo UDP Object ID Nome Tipo Comentários 1.3.6.1.2.1.7.1 UDPInDatagrams Counter32 número total de datagramas entregues neste nó 1.3.6.1.2.1.7.2 UDPNoPorts Counter32 número de datagramas com app destino inexistente 1.3.6.1.2.1.7.3 UDInErrors Counter32 número de datagramas não entregues por outras razões 1.3.6.1.2.1.7.4 UDPOutDatagrams Counter32 número de datagramas enviados 1.3.6.1.2.1.7.5 udpTable SEQUENCE uma linha para cada porta emn uso por uma aplicação, fornece o número da porta e o endereço IP
Nomeação de Objetos questão: como nomear cada possível objeto padrão (protocolos, dados, outros..) em cada possível padrão de rede?? resposta: ISO Object Identifier tree: • nomeação hierarquica de todos os objetos • cada ramificação tem um nome e um número 1.3.6.1.2.1.7.1 udpInDatagrams UDP MIB2 management ISO ISO-ident. Org. US DoD Internet
ISO Object Identifier Tree Examine www.alvestrand.no/harald/objectid/top.html
pedido managing entity managing entity data data agent agent protocolo SNMP Duas formas de transportar informações da MIB: comandos e eventos entidade gerenciadora entidade gerenciadora trap msg resposta agente agente Managed device Managed device elemento gerenciado elemento gerenciado Modo comando/resposta Modo evento
Protocolo SNMP: tipos de mensagens Função Tipo de Mensagem GetRequest GetNextRequest GetBulkRequest Manager-to-agent: “me envie dados” (instância,próximo na lista, bloco) InformRequest Manager-to-Manager: eis o valor da MIB SetRequest Manager-to-agent: define valor da MIB Agent-to-manager: valor, resposta ao pedido Response Agent-to-manager: informa gerenciador de evento excepcional Trap
Protocolo SNMP: formatos de mensagens Cabeçalho Get/Set Variáveis para Operações Informação do Trap Cabeçalho do Trap
SNMP segurança e administração • criptografia: mensagem SNMP criptografada com DES • autenticação: calcular, enviar MIC(m,k): calcula hash (MIC) sobre a mensagem (m), com chave secreta compartilhada (k) • proteção contra playback: usar nonce • controle de acesso baseado em visões • A entidade SNMP mantém uma base de dados de direitos de acesso e regras para vários usuários • A própria base de dados é acessível como um objeto gerenciado!
a 00000011 00000001 a 00000001 00000011 O problema de apresentação Q: uma cópia perfeita dos dados de memória a memória resolve o problema de comunicação entre computadores distintos? R: nem sempre! struct { char code; int x; } test; test.x = 256; test.code=‘a’ test.code test.x test.code test.x Formato do host 2 Formato do host 1 problema: diferentes formatos de dados e convenções de armazenamento
É muito bom É muito bom Serviço de Apresentação Serviço de Apresentação Serviço de Apresentação É da pontinha! Que barato! Que da hora! Hippie de meia- idade (anos 60) Vovózinha Adolescente século XXI Resolvendo o problema de apresentação 1. Transladar o formato do host local para um formato independente de host 2. Transmitir os dados num formato independente de host 3. Transladar o formato independente para o formato do host remoto
ASN.1: Abstract Syntax Notation 1 • padrão ISO X.208 • usado extensivamente na Internet • é como comer verduras: saber isto “é bom para você”! • Tipos de dados definidos, construtores de objetos • como SMI • BER: Basic Encoding Rules • especifica como os dados definidos em ASN.1 devem ser transmitidos • cada objeto transmitido tem codificação Type, Length, Value (TLV) - Tipo, Tamanho, Valor
Codificação TLV Idéia: os dados transmitidos são auto-identificáveis • T: tipo de dados, um dos tipos definidos em ASN.1 • L: tamanho dos dados em bytes • V: valor do dados, codificado de acordo com as regras do ASN.1 Valor do Tag Tipo Booleano Inteiro Cadeia de bits Cadeia de octeto Nulo Identificador de Objeto Real 1 2 3 4 5 6 9
Codificação TLV exemplo Instâncias de tipo de dados especificadas no módulo Módulo de declarações de tipo de dados escritas em ASN.1 Valor, 259 Tamanho, 2 bytes Tipo=2, inteiro cadeia de bytes transmitidos Valor, 5 octetos (caracteres) Tamanho, 5 bytes Tipo=4, cadeia de octetos
Dois tipo de firewal: filtros de pacotes gateways de aplicação firewall Firewalls Para evitar ataques de negação de serviço • inundação de SYN flooding: atacante estabelece muitas conexões TCP falsas. O computador atacado aloca buffers para as conexões falsas e fica sem recursos para as verdadeiras. Para evitar modificações ilegais de dados internos. • ex., o atacante troca a página de entrada da CIA por alguma coisa diferente Para evitar que intrusos obtenham informações secretas. isola a rede interna da organização da Internet pública, permitindo que alguns pacotes passem e bloqueando outros.
A rede interna é conectada à Internet através de um roteador. Fabricante do roteador oferece opções para filtragem de pacotes, baseado em: endereço IP de origem endereço IP de destino Número de portas TCP/UDP de origem e destino Tipo de mensagem ICMP Bits de SYN e ACK do TCP Exemplo 1: bloquear datagramas entrantes e saintes com campo de protocolo = 17 no protocolo IP e com porta de origem ou de destino igual a 23. Todo o fluxo UDP de entrada e de saída e todas as conexões telnet ficam bloqueadas. Exemplo 2: bloquear segmentos TCP de entrada com ACK=0. Previne que clientes externos façam conexões TCP com clientes internos, mas permite que os clientes internos façam conexões para fora. Filtragem de pacotes
Filtra os pacotes com base nos dados de aplicação, assim como em campos dos protocolos IP/TCP/UDP. Exemplo: permite usuários internos selecionados fazer uma conexão telnet para fora. sessão telnet gateway para host remoto sessão telnet host-gateway roteador e filtro gateway de aplicação gateway-to-remote host telnet session host-to-gateway telnet session application gateway router and filter Gateways de Aplicação 1. Exige que todos os usuários telnet se conectem através de um gateway. 2. Para os usuários autorizados, o gateway estabelece a conexão telnet com o host de destino. Gateway repassa os dados entre as duas conexões. 3. Roteador filtra todas as conexões telnet que não se originam no gateway.
IP spoofing: roteador não tem como saber se os dados “realmente” vêm de onde dizem que vêm Se várias aplicações necessitam de tratamento especial, cada uma deve ter seu próprio gateway. Software cliente precisa saber como contactar o gateway. ex., deve definir o endereço IP de um proxy no browser Web Filtros muitas vezes adotam uma política de tudo ou nada para UDP. Critério: grau de comunicação com o mundo exterior versus nível de segurança Sites muito protegidos também sofrem com ataques. Limitações de firewalls e gateways