VPN: Redes Virtuais Privadas

VPN: Redes Virtuais Privadas

Introdução

A necessidade de acesso remoto vem crescendo  muito nos últimos anos, principalmente em meios corporativos onde os usuário trabalham remotamente e necessitam estabelecer uma comunicação de sua casa a uma rede interna da sua empresa onde ele tem acesso a servidores, impressoras, máquinas e etc.

Existem várias maneiras de se estabelecer uma comunicação, porém devido a vários fatores alguns meios se tornam inviáveis. Além disso a segurança é um fator crucial na hora de se estabelecer uma conexão, pois nessa comunicação os dados trafegam de um lado a outro tornando possível a interceptação caso não haja mecanismos de segurança envolvidos.

A fim de atender a essas demandas muitas organizações e usuário utilizam uma tecnologia chamado VPN (virtual private Network). As VPN´s utilizam a rede pública, a internet, como meio para estabelecer uma conexão segura entre dois hosts remotos, isso proporciona uma imensa redução de custos devido a essa tecnologia utilizar a internet como meio ao invés de links dedicados, ou seja, quanto maior a distância maior é a diferença de custo. isso proporciona uma imensa redução de custos 

Ademais, este artigo tem como objetivo explanar as várias possibilidades envolvendo o uso de VPN´s nas redes de comunicação, bem como mostrar o funcionamento das várias tecnologias envolvidas.

Tunelamento

Para criar uma VPN é necessário que os dois hosts envolvidos estejam conectados a internet e tenham instalados um software que irá fazer essa gestão. Na grande maioria das vezes há um servidor que recebe as conexões e então os clientes se conectam a ele.

Por meio de protocolos é criado um sistema de tunelamento, ao qual permite que os dados possam trafegar com segurança da máquina remetente para a máquina receptora, mesmo numa rede pública como a internet. Para isso a máquina remetente  realiza a criptografia e o encapsulamento dos dados, além de identificar seu número ip no pacote a ser enviado. Do outro lado a máquina receptora trata os pacotes de dados, identifica a máquina remetente através do número Ip no cabeçalho, desencapsula os dados e por fim descriptografa os dados.

Ao criar uma conexão VPN um número IP específico é atribuído a ela, ocultando o ip da máquina de origem o que impossibilita o rastreamento, proporcionando privacidade e segurança na conexão.

Tipos de VPN

Existem vários tipos de implementações de VPN, onde cada uma irá possuir suas próprias características. Portanto o administrador de redes deve levar em consideração alguns fatores que podem garantir o bom funcionamento dessa tecnologia.

  • Intranet VPN

Em uma intranet VPN, a comunicação será realizada entre hosts em uma mesma rede interna, como o próprio nome diz. Nesse tipo de VPN é crucial que as informações possuam uma criptografia rápida, para não sobrecarregar a rede na troca de dados. Por outro lado tem que ser confiável, pois no túnel irá trafegar dados de aplicações críticas como sistemas financeiros, e banco de dados da empresa. Por último é importante facilitar o gerenciamento já que numa rede interna possuem diversos cenários que mudam constantemente.

  • Acesso Remoto VPN

Em uma VPN de acesso remoto uma empresa irá conectar seus funcionários que estejam fisicamente distantes da rede. Neste cenário, geralmente é necessário um software cliente de acesso remoto. O gerenciamento dessa VPN será feito por um servidor central que terá como uma das funcionalidades a autenticação dos usuários que irão formar um túnel até ele. Devido a ter muitos usuários conectados simultaneamente, uma forma de autenticação rápida e eficiente irá garantir uma segurança e flexibilidade melhor na hora de trafegar os dados através do túnel formado (cliente/servidor). É importante ressaltar que a qualidade do serviço estará limitada muitas vezes a infraestrutura do cliente, já que ele está remoto e depende de uma boa conexão entre outros fatores.

  • Extranet VPN

Esse tipo de VPN são implementadas para conectar uma empresa a seus sócios, fornecedores, clientes, etc … Para isso ser possível é necessário uma análise bem feita para que quando implementada garanta uma interoperabilidade entre as diversas empresas envolvidas, havendo comunicação de suas respectivas redes privadas. Por ser um tipo de VPN mais complexa irá difundir vários protocolos de segurança, garantindo a integridade dos dados trafegados nos diversos túneis criados. Um fator importante é o controle de tráfego, pois devido a elevada troca de informações, pode gerar gargalos na rede, então deve ser levado em conta na hora de implementar.

Funções de uma VPN

Como mencionado em tópicos anteriores, a utilização da rede pública como meio de conexão entre redes privadas proporciona uma diminuição de custos significativos, esse é um dos grandes pontos da utilização de VPN´s, porém para essa tecnologia ser de fato efetiva ela deve prover um conjunto  de funções que garanta a  Confidencialidade, Integridade e Autenticidade das informações.

  • Confidencialidade

Para ter confidencialidade das informações, deve ser levado em consideração que os dados podem ser interceptados no caminho, é de extrema importância que os dados trafegados sejam absolutamente privados e que se porventura forem capturados eles não possam ser compreendidos.

  • Integridade

O host que está enviando os dados utiliza a função de hash e uma chave compartilhada para calcular a soma de verificação da mensagem, incluindo-a com o pacote. O host que está recebendo executa a mesma função de hash, faz o cálculo de verificação e compara com a original, caso a mensagem foi alterada no caminho o destinatário descarta a mensagem. Esse processo pode ser feito por um dos algoritmos de hash, o MD5 ou SHA1.

MD5

É um algoritmo de hash de 128 bits unidirecional desenvolvido pela RSA Data Security. 

SHA1

É um algoritmo de hash seguro que foi desenvolvido pelo instituto nacional de normas e tecnologia. O cálculo do SHA1 resulta em um hash de 160 bits que é usado para verificação de integridade.

  • Autenticidade

É importante que somente usuários e equipamentos autorizados a fazer parte de uma VPN podem trocar dados entre si, ou seja, somente um elemento que tenha sido autenticado em uma VPN pode interagir com outro elemento para e trocar dados nesta conexão.

Dependendo da técnica utilizada na VPN à privacidade poderá ser garantida para os dados ou para todo pacote(cabeçalho/dados). Existem 4 técnicas que podem ser utilizadas em uma implementação de VPN.

Modo transmissão

Somente os dados são criptografados, não havendo mudança no tamanho dos pacotes. Geralmente são soluções proprietárias, desenvolvidas por fabricantes.

Modo transporte

Somente os dados  são criptografados, podendo haver mudança no tamanho do pacote, é uma solução de segurança adequada, onde os dados trafegam somente entre dois nós da comunicação.

Modo túnel criptografado

Modo mais utilizado e seguro das VPN´s, onde os dados e cabeçalho do pacote são criptografados, empacotados e transmitidos em um novo endereçamento IP, em um túnel estabelecido de um ponto de origem a um ponto de destino.

Modo túnel não criptografado

Neste modo tanto os dados quanto o cabeçalho são empacotados e transmitidos em um novo endereço IP, em um túnel estabelecido de um ponto a outro, porém não se faz uso da criptografia, fazendo com que os dados e cabeçalho os mesmos como foram gerados na origem.

Criptografia

A criptografia é o ato de codificar e decodificar dados, ou seja, quando os dados são criptografados, é aplicado um algoritmo para codificá-lo de modo que ele não tenha mais o formato original e portanto não possa mais ser lido por qualquer um. Esse dado criptografado só pode ser decodificado para o formato original com o uso de uma chave de decriptografia específica.

Nas VPN´s é utilizada a criptografia de modo que os dados transmitidos não sejam compreensíveis ao serem interceptados por terceiros. Então somente o verdadeiro destinatário consegue fazer uso desses dados utilizando uma chave de decriptografia.

As tecnologias responsáveis por fazerem a criptografia dos dados são chamadas de chave simétrica e chave assimétrica.

  • Chave Simétrica

A criptografia simétrica faz uso de uma única chave que é compartilhada entre o emissor e o destinatário. Esse tipo de criptografia possui uma boa performance e a possibilidade de manter uma comunicação contínua entre várias pessoas simultâneas, caso a chave seja comprometida basta trocar por uma nova. Em contrapartida essa criptografia possui algumas falhas graves dentre elas, quando o número de usuários aumenta torna-se complexo a gestão das chaves.

  • Chave Assimétrica

A criptografia Assimétrica faz uso de duas chaves de segurança, uma pública e a outra privada. A chave privada é utilizada para decifrar as mensagens enquanto que a chave pública é utilizada para criptografar. É importante ressaltar que esse processo é feito nas duas pontas.

  • Algoritmos para Criptografía

DES (Data Encryption Standard)

É o algoritmo mais difundido mundialmente, possui um número máximo de 56 bits. Ele realiza 16 ciclos na codificação para proteger a informação, porém se usa a mesma chave tanto para codificar quanto para decodificar, o que permite que os dados sejam decifrados em algumas horas utilizando o mecanismo de força bruta.

3DES (Triple Data Encryption Standard)

Utiliza os mesmos princípios do DES, porém consiste em executar os procedimentos por 3 vezes com 3 chaves diferentes, podendo chegar a 168 bits. No entanto com os aparelhos modernos de hoje em dia com a técnica de força bruta é possível decifrar as mensagens em algumas semanas.

AES XEX (Advance Encryption Standard)

O AES é um dos algoritmos mais seguros, ele utiliza o princípio de dividir a informação em colunas, em seguida realizam uma série de operações, misturando-as entre si e  utilizam ao mesmo tempo a chave de criptografia. Possuem um número máximo de 384 bits Este algoritmo é utilizado como padrão nos EUA.

Protocolos Utilizados por Redes VPN

  • Ipsec (Internet Protocol Security)

O protocolo Ipsec se trata de um extensão do do protocolo IP, ele tem por objetivo garantir comunicações privadas  seguras, utilizado de meios como a criptografia. Ele fornece autenticação a nível de rede, verificação da integridade dos dados e a transmissão com criptografia e chaves fortes de 128 bits. Portanto implementa um alto grau de segurança na hora de transmitir os dados.

O Ipsec utiliza de alguns elementos para proteger a comunicação via rede, O cabeçalho de autenticação (AH) e a carga de empacotamento (ESP).

AH

Esse elemento irá prover uma autenticação e verificação da integridade dos dados, impedindo assim que terceiros não possam interceptar sem autorização, e também evita que se forem interceptados em trânsito  não sejam alterados. É importante salientar que ele não permite a criptografia de dados, então se torna ideal quando utilizado para garantir a integridade, não o sigilo.

ESP

Já esse elemento permite que os dados sejam transportados de uma forma segura e mais eficiente, pois além de garantir a integridade, ele aplica a criptografia dos dados impedindo a leitura por terceiros. É importante ressaltar que o ESP não substitui o AH, pois este é capaz de verificar parte do cabeçalho que o ESP não faz.

  • PPTP (Point-to-Point Tunneling Protocol)

Este protocolo opera na porta TCP 1723. é um dos mais antigos protocolos VPN em uso, existente desde o windows 95, o PPTP foi desenvolvido inicialmente para encapsular outro protocolo o PPP (Point-to-Point Protocol) que veremos mais adiante. 

O protocolo PPTP permite que os próprios sistemas dos usuários finais estabeleçam um túnel a uma localidade arbitrária sem intermediação de um provedor de acesso, por isso ganha o termo de protocolo “voluntário”.

De todos os protocolos VPN o PPTP é o mais fácil de ser configurado, e computacionalmente falando é o mais rápido, usado principalmente em streaming de áudio ou vídeo, ou até mesmo em dispositivos com hardware limitados.

No entanto o PPTP possui diversas vulnerabilidades de segurança, seus protocolos de autenticação, normalmente o MS-CHAP-v1/v2, já foram quebrados várias vezes em análises de segurança. Portanto esse protocolo é recomendável quando o fator segurança não é recomendável.

  • L2TP (Layer 2 Tunnelling Protocol)

O L2TP surgiu em 1999, desenvolvido em parceria pela Cisco e Microsoft. Foi desenvolvido como uma atualização para o PPTP e para o L2F. É um protocolo que não fornece nenhum tipo de encriptação ou confidencialidade por si próprio, tornando necessário a utilização integrada com outros protocolos, como o IPsec. 

Devido a esse fator a utilização deste protocolo se faz muito mais segura em comparação ao PPTP, pois como atua em conjunto com o IPsec que é um dos protocolos de segurança mais efetivos atualmente, garante a integridade e confidencialidade dos dados. No entanto apresenta uma maior lentidão em relação ao PPTP, e geralmente é bloqueado em Firewalls, pois utiliza a porta UDP 500 que estes costumam bloquear.

  • L2F (Layer 2 forwarding)

O L2F foi desenvolvido pela Cisco no início da tecnologia VPN, esse protocolo entende que uma rede privada sempre se encontra atrás de um gateway. Como faz o tunelamento independente do IP, pode trabalhar com redes Frame Relay e ATM.

A autenticação é feita em dois níveis: uma ao se estabelecer a conexão com o gateway e outra no acesso a rede. Geralmente os protocolos utilizados para a autenticação são o PPP, Radius (Remote Authentication Dial in User Service), TACACS (Terminal Access Controller Access-Control System) ou TACACS+.

Esse protocolo não possui nenhum mecanismo de criptografia e não possui um padrão de tunelamento, o que gera uma dificuldade na comunicação com diferentes usuários VPN e os dados interceptados podem ser lidos facilmente.

  • PPP (Point-to-Point Protocol)

O PPP é um protocolo que atua na camada de enlace de dados (camada 2), geralmente é utilizado para transportar pacotes através de uma conexão entre dois pontos. Dentre suas características estão a autenticação na conexão e criptografia na transmissão.

Este protocolo é utilizado sobre muitos tipos de redes físicas incluindo cabo serial, linha telefônica, telefone celular, enlaces de rádio e enlaces de fibra óptica.

O PPPoE (Point-to-Point Protocol over Ethernet) é um derivado do PPP, é usado comumente por provedores de serviço de internet para estabelecer uma conexão de DSL com seus clientes.

  • MPLS (Multiprotocol Label Switching)

O MPLS pode ser definido como um protocolo para transporte de aplicações multimídia (voz, dados e vídeo). É uma tecnologia que surgiu nos anos 90 como um protocolo baseado em engenharia de tráfego e vem sendo aprimorado desde então. 

O protocolo MPLS consiste em uma tecnologia de chaveamento de pacotes que possibilita o encaminhamento e a comutação eficiente de fluxos de tráfego através da rede. Ele se apresenta como uma solução para diminuir o processamento dos equipamentos de redes e interligar com maior eficiência as redes de tecnologias distintas. O termo Multiprotocol significa que essa tecnologia pode rodar sob qualquer protocolo de rede.

Em redes convencionais os pacotes são encaminhados seguindo um intenso processo de pesquisa em seus cabeçalhos, o que gera um aumento no processamento dos routers e um tempo de espera maior. No entanto nas redes MPLS os pacotes são rotulados e os roteadores são capacitados a decidir o encaminhamento mais adequado para esses pacotes, dessa forma os pacotes são encaminhados evitando todo o processo de pesquisa do roteamento convencional.

As Operadoras podem utilizar o MPLS para estabelecer circuitos virtuais ou túneis em uma rede IP, permitindo o tráfego de aplicações com diferentes requisitos. 

  • SSL (Secure Sockets Layer)

É um protocolo que vem ganhando adesão de vários usuários pois esse tipo de VPN não exige software dedicado, ou seja, roda diretamente no navegador. Essa funcionalidade torna muito mais flexível para usuários que trabalham remotos, pois permite que uma ampla gama de aparelhos móveis possam ser conectados a VPN sem deixar a segurança cair.

Além disso o SSL trabalha com vários certificados digitais e também possui muitos fatores de autenticação, com isso o acesso só será liberado para o usuário que tem a permissão, assim é possível regular o tráfego podendo bloquear alguns usuários de acessar determinados servidores por exemplo.

Geralmente utilizadas em sites de compras e prestadores de serviços online, os navegadores Web já vêm integrados com SSL. As conexões SSL tem https ao invés de http.

  • OpenVPN

O openVPN é o protocolo mais utilizado atualmente, além de apresentar alta segurança e estabilidade ainda fornece uma integridade na conexão sem causar perdas consideráveis na velocidade.

Esse protocolo é código aberto, é mantido e atualizado pela comunidade frequentemente. Com ele é possível se conectar com qualquer porta com base nos protocolos tcp e udp, ou seja, é capaz de passar por firewalls sem dificuldade.

Porém o funcionamento desse protocolo é complexo e exige atenção em sua instalação. existem softwares que facilitam a configuração, porém costumam ser pagos.

 Ele oferece criptografia de 128 e 256 bits, é capaz de armazenar senhas com até 3 + 38 zeros.

Conclusão

Este artigo teve como propósito mostrar as várias tecnologias e possibilidades que rodeiam as redes VPN. Podemos concluir que as VPN´s proporcionam uma redução significativa de custos uma vez que utilizam a rede pública como meio para trafegar os dados, fornece conexões simples e ao mesmo tempo complexas dependendo da necessidade de cada usuário ou organização. Portanto é fundamental que antes de ser implementada, deve-se fazer um estudo detalhado acerca de todas as tecnologias envolvidas. A escolha de um bom protocolo para garantir a integridade, confidencialidade e autenticidade é fundamental. O administrador ainda deve levar em conta a sensibilidade dos dados trafegados de uma ponta a outra para que assim ele possa ter uma idéia de como projetar sua VPN.

Fonte: GTA/UFRJ e Hostone

2 comentários sobre “VPN: Redes Virtuais Privadas

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *