VPN
Virtual Private Networks
 
Francisco Braz Filho
 
Workshop apresentado em Setembro/98 por
Francisco Braz Filho na disciplina Administração e Integração de Sistemas
do Mestrado em Ciência da Computação da UFPE


 
Índice

1. Introdução
2. Soluções Anteriores às VPNs
3. Usos Comuns de VPNs 

3.1. Acesso remoto de usuários através da Internet
3.2. Conexão de subredes através da Internet
3.3. Redes sigilosas
4. Requerimentos Básicos
5. Tunelamento
6. Protocolos
7. Autenticação de Usuários
8. Gerenciamento de Endereços
9. Compressão de Dados
10. Criptografia de Dados
11. Gerenciamento de Chaves
12. Suporte a Vários Protocolos
13. Conclusões
14. Referências

  1. Introdução
Uma Rede Privada Virtual (Virtual Private Network – VPN) conecta os componentes e recursos de uma rede sobre outra rede. Esta possibilidade é bastante atraente para os Gerentes de Redes, já que eles podem se utilizar da infra-estrutura de uma rede pública, como a Internet, no lugar de linhas privadas para o transporte de dados corporativos, oferecendo aos usuários a mesma segurança e características normalmente disponíveis apenas nas suas redes privadas.
Figura 1: Rede Privada Virtual

Segundo estudo efetuado pela Sun Microsystems em 1996, as empresas podem economizar até 50% dos custos de manutenção das linhas privadas convencionais se utilizarem a Internet para transportar seus dados, o que torna a VPN um meio interessante para interligar escritórios de filiais, funcionários e pessoas que precisem de mobilidade.

Apesar do grande interesse nas VPN sua implantação efetiva ainda é tímida. Isto se deve ao fato de que a VPN é uma tecnologia relativamente nova e muitos gerentes de redes ainda não entendem como essas redes virtuais devem funcionar.

O objetivo deste trabalho é oferecer uma visão geral das Redes Privadas Virtuais, descerver seus requerimentos básicos e discutir algumas das tecnologias chave que permitem oferecer segurança nas conexões efetuadas sobre redes públicas.

  1. Soluções Anteriores às VPNs
Para permitir aos empregados remotos a possibilidade de conexão aos recursos de informática da corporação, independente da sua localização, uma empresa deve desenvolver uma solução de acesso remoto confiável e escalável. Normalmente se implementa uma das soluções a seguir:
Em ambos os casos é necessário manter uma infra-estrutura de telefonia convencional para recebimento das chamadas, além do alto custo envolvido para suportar a operação contínua do serviço.

Nenhuma destas soluções ofereçe confiabilidade e escalabilidade máximas, em termos de custo, gerenciamento e administração flexível, e demanda por conexões.

Portanto, faz sentido encontrar um meio termo onde a organização possa substituir ou suplementar seu investimento em infra-estrutura por uma solução mais barata baseada na tecnologia da Internet. Desta maneira a empresa pode focar suas atividades no seu negócio com a certeza que a acessibilidade não será afetada, e que foi implantada a solução mais econômica.

  1. Usos Comuns de VPNs
  2. Vamos analisar alguns casos onde as VPNs podem ser utilizadas.

    1. Acesso remoto de usuários através da Internet
    2. Para um usuário remoto acessar os recursos da sua rede corporativa através de uma VPN via Internet basta que ele se conecte a um Provedor de Serviços de Internet (Internet Services Provider – ISP) por meio de uma ligação local. Usando esta conexão local para o ISP o software da VPN cria um canal virtual entre o computador do usuário e a sua rede corporativa.

      Figura 2: Acesso remoto de usuários através da Internet
    3. Conexão de subredes através da Internet
    4. O roteador da rede remota (filiais ou outras empresas, por exemplo) deve ser ligado ao ISP da sua localidade através de uma linha dedicada ou de linha discada, dependendo do volume de tráfego de dados e da disponibilidade desejada, ficando o software da VPN responsável por criar a Rede Privada Virtual entre a rede remota e a rede corporativa. Isto reduz significativamente os custos com linhas de comunicação em comparação com cirtuitos dedicados ou ligações telefônicas de longa distância, já que em ambos os casos a conexão com o ISP é local.

      Figura 3: Ligação de subredes remotas
    5. Redes sigilosas
    Em algumas redes corporativas existem dados que por serem muito sigilosos residem em uma LAN fisicamente desconectada do resto da Intranet.

    Tal atitude protege as informações confidenciais, mas cria problemas para os usuários que não estão fisicamente ligados a esta rede separada, mas que precisam acessar os dados.

    Figura 4: Redes sigilosas
    A utilização de uma Rede Privada Virtual permite que a rede departamental esteja fisicamente conectada à Intranet, mas separada logicamente por meio de um servidor de VPN. Neste caso o servidor de VPN não está atuando como um roteador entre a rede corporativa e a LAN do departamento, pois um roteador iria apenas interconectar as duas redes, permitindo a todos o acesso à rede sensível. Através da VPN o administrador da rede pode assegurar que apenas aqueles usuários que possuem direitos apropriados poderão estabelecer uma VPN com o servidor de VPN e ter acesso aos recursos protegidos do departamento. Adicionalmente, toda a comunicação que passa pela VPN pode ser criptografada, aumentando o nível de segurança da informação.
  3. Requerimentos Básicos
Quando uma empresa implanta uma solução de acesso remoto a sua rede corporativa normalmente ela deseja facilitar o acesso controlado aos recursos da sua rede e informações. A solução através de VPN deve permitir a fácil conexão de usuários ou redes remotas à Intranet, e garantir a privacidade e integridade dos dados que são transportados pela Internet, o mesmo se aplicando aos dados sensíveis que trafegam internamente na rede.

Portanto, no mínimo uma solução de VPN deve oferecer as seguintes facilidades:

A solução deve verificar a identidade do usuário e restringir o acesso à VPN aos usuários autorizados. Além disso a solução deve oferecer recursos de auditagem e contabilização para mostrar quem acessou qual informação e quando.
A solução deve atribuir ao cliente um endereço na rede privada, e deve assegurar que os endereços privados irão permanecer privados.
Os dados transportados na rede pública devem ser mantidos ilegíveis para usuários não autorizados e também devem ser comprimidos para melhor eficiência do sistema.
A solução deve gerar e atualizar automaticamente as chaves de criptografia para o cliente e o servidor.
A solução deve ser capaz de lidar com protocolos comumente utilizados nas redes públicas, a exemplo do Internet Protocol (IP) e do Internet Packet Exchange (IPX).
  1. Tunelamento
  2. Tunelamento é um método de utilizar a infra-estrutura de uma rede qualquer para transferir dados entre duas outras redes. Os dados a serem transferidos podem ser quadros (ou pacotes) de outro protocolo. Ao invés de mandar um quadro como ele foi produzido pelo nó de origem, o protocolo de tunelamento encapsula o quadro em um cabeçalho adicional. Este cabeçalho fornece as informações necessárias para o roteamento de forma que os dados encapsulados possam atravessar a rede intermediária.

    Figura 5: Tunelamento

    O caminho lógico através do qual os dados encapsulados viajam pela rede intermediária é chamado de túnel. Quando os dados encapsulados chegam ao seu destino, o cabaçalho adicional é retirado e os quadros originais seguem para o seu destino final. O processo de tunelamento envolve todo este processo (encapsulamento, transmissão e desencapsulamento dos pacotes).

    A rede de trânsito pode ser de qualquer tipo. A Internet é a mais comum, mas existem muitos casos de tunelamento em uso há anos, como o SNA sobre IP e IPX sobre IP.

  3. Protocolos
As VPNs utilizam o recurso do tunelamento para enviar seus dados através das redes intermediárias através da utilização de protocolos que atuam nas camadas de enlace (nível 2) ou de rede (nível 3) do modelo de referência ISO/OSI.

O objetivo do tunelamento de protocolo em nível 2 é o de transportar protocolos de nível 3 como AppleTalk, IP e IPX numa rede IP intermediária. Para conseguir isto foi utilizado um protocolo de nível 2, normalmente o PPP, o qual foi projetado para transportar diferentes protocolos de nível 3 em canais seriais. Neste esquema os pacotes de nível 3 são encapsulados em pacotes PPP, os quais são encapsulados em pacotes IP para serem transportados via Internet.

Os protocolos mais comuns no nível 2 são:

Criado por um grupo chefiado pela Microsoft. Permite que o tráfego de IP, IPX e NETBEUI seja criptografado e então encapsulado em um cabeçalho IP para transmissão em uma rede pública ou privada.
Criado pela Cisco e utilizado apenas em seus equipamentos. Uma combinação dos recursos do PPTP e do L2F, utilizando por vários fabricantes.

Já no nível 3 temos o IP Security (IPSec) Tunnel Mode, em desenvolvimento pela IETF (Internet Engineering Task Force). Este protocolo permite que pacotes IP sejam criptografados e encapsulados em um cabeçalho IP para ser enviado através de uma rede intermediária.

A IETF já publicou cinco RFCs abrangendo parte do protocolo IPSec – RFC 1825 até 1829.
  1. Autenticação de Usuários
  2. No nível 2 os protocolos normalmente herdam o esquema de autenticação do PPP. As senhas são descartáveis, permitindo inclusive a utilização de smart cards e calculadoras criptográficas.

    No nível 3 os protocolos assumem que as pontas já são conhecidas (e autenticadas) antes do estabelecimento do túnel. Uma exceção é a negociação ISAKMP do IPSec, que oferece autenticação mútua entre as pontas do túnel.

    A maioria das implementações IPSec apenas suporta certificados baseados nas máquinas, e não nos usuários, o que permite que qualquer usuário com acesso físico a uma máquina certificada possa fazer uso do túnel. Esta falha pode ser eliminada com a utilização do IPSec em conjunto com um protocolo de nível 2, como o L2TP.
     

  3. Gerenciamento de Endereços
  4. Os protocolos de nível 2 suportam atribuição dinâmica de endereços de clientes baseados no mecanismo de negociação Network Control Protocol (NCP).

    Normalmente os protocolos de camada 3 assumem que um endereço já foi previamente atribuído antes da inicialização do túnel. Esquemas para atribuição de endereços em um túnel IPSec ainda estão em desenvolvimento.
     

  5. Compressão de Dados
  6. Nos protocolos de nível 2 a compressão de dados é baseada no PPP.

    A IETF está investigando métodos semelhantes para compressão nos protocolos de camada 3 (como o IP Compression).
     

  7. Criptografia de Dados
  8. Os protocolos de nível 2 suportam os mecanismos de criptografia de dados do PPP. A implementação PPTP da Microsoft, por exemplo, suporta o uso opcional do Microsoft Point-to-Point Encryption (MPPE), que é baseado no algoritmo RSA/RC4.

    No nível 3 os protocolos podem utilizar diversos métodos de criptografia. O Ipsec define vários métodos que podem ser negociados durante a troca ISAKMP/Oakley, que é efetuada na inicialização do túnel.

    A implementação L2TP da Microsoft usa a criptografia do IPSec para proteger os dados entre o cliente e o servidor do túnel.

  9. Gerenciamento de Chaves
  10. O MPPE, por exemplo, confia em uma chave inicial gerada durante a autenticação do usuário e efetua automaticamente a sua troca periodicamente.

    O IPSec explicitamente negocia uma chave comum durante a troca ISAKMP e também faz a troca periodicamente.

  11. Suporte a Vários Protocolos
  12. Os protocolos de camada 2 suportam múltiplos protocolos, a exemplo de IP, IPX, NETBEUI, AppleTalk, etc.

    Já o IPSec tipicamente só suporta pacotes IP. Outros protocolos podem ser encapsulados, mas isso deve ser feito ainda na camada 3.
     

  13. Conclusões
  14. A segurança é o ponto mais importante a ser considerado na escolha de uma solução de VPN. OS protocolos hoje existente oferecem um bom nível de segurança.

    O conjunto de protocolos IPSec é o mais completo a nível tecnológico existente atualmente para a criação de VPNs realmente seguras, além de ser integrado às especificações do IPv6, o que o fará tornar-se o padrão de fato na Internet.

    Um número cada vez maior de fabricantes estão anunciando suporte ao IPSec, tanto a nível de hardware como de software. Alguns exemplos são a 3Com, Livingston e Microsoft com a versão 5 do Windows NT Server.

    Como a racionalização de custos é uma necessidade mundial, as VPNs são uma opção tentadora para os gerentes de rede, e devem ter seu espaço no mercado ocupado de forma acentuada em um futuro próximo, já sendo possível vermos no mercado várias ofertas de provedores oferecendo o serviço na Internet.
     

  15. Referências