Desenvolvido por James Yonan, o OpenVPN é uma solução de VPN multiplataforma e open source amplamente utilizada no Linux, tendo a sua primeira versão lançada no ano de 2001. Antes de ater-me às funções do OpenVPN, é importante que você entenda, primeiramente, o que é VPN.
O termo VPN é um acrônimo para Virtual Private Network, que, em português, significa Rede Virtual Privada. A criação de redes virtuais privadas tem como propósito estabelecer conexões entre múltiplos computadores, as quais acontecem dentro de um “túnel” por onde o tráfego flui.
Portanto, ao criar uma VPN, o usuário utiliza da conexão ponto-a-ponto (P2P) com os recursos próprios da Internet, dispensando serviços de intermediários, mas com um nível de proteção oferecido no software utilizado para tal — é aí que entra o OpenVPN.
Neste artigo, você aprenderá tudo o que precisa sobre o funcionamento do OpenVPN, bem como a história, os benefícios e, é claro, como fazer o download dessa solução. Boa leitura!
Breve história do OpenVPN
A primeira versão que James Yonan escreveu foi a 0.90, lançada com a licença GPL (General Public License), permitia aos usuários a criação de uma simples VPN ponto-a-ponto usando protocolo UDP (User Datagram Protocol) usando a cifra simétrica Blowfish.
À versão 1.x foram adicionados a autenticação TLS (Transport Layer Security) e um recurso de troca de chaves e diversas outras melhorias e funcionalidades, além de portas OpenBSD, Mac OS e RedHat. Em 2004 o ciclo da versão 1.x foi encerrado para ceder lugar à 2.0.
A chegada do OpenVPN 2.0 representou grandes avanços em relação às antecessoras, como:
- suporte a instâncias de servidor multicliente (isto é, permitir ao servidor receber conexões de múltiplos clientes);
- autenticação por meio de username / password;
- interface de gerenciamento; e
- melhorias no adaptador TUN / TAP do Windows.
No entanto, até agosto de 2008, nenhuma versão oficial do OpenVPN havia sido lançada desde a 2.0.9. O fato de a comunidade de suporte ainda ser muito pequena era outro empecilho para o desenvolvimento da solução.
Naquela época, dois caras, chamados Krzee King e Eric Crist, que futuramente se tornariam grandes referências sobre VPN, tinham interesse em construir uma comunidade maior e, então, passaram a integrar o grupo.
Após reuniões e tomadas de decisão, em 2009, a companhia OpenVPN incorporou em sua equipe o especialista em servidores open source Samuli Sepänen, responsável por contribuir significativamente na construção da comunidade ativa para o projeto.
Conforme a comunidade do OpenVPN cresceu, o desenvolvimento da solução alcançou o mais alto patamar da tecnologia VPN, trazendo consigo uma vasta gama de novos recursos que tornaram o OpenVPN uma ferramenta imbatível.
Funcionamento do OpenVPN
O OpenVPN é um pacote repleto de funcionalidades que, quando devidamente configurado, estabelece comunicação segura entre computadores usando a Internet como instrumento de ligação — como se fosse um longo cabo abstrato conectando duas máquinas.
Para que a conexão entre os clientes aconteça de maneira segura, o OpenVPN opera por meio da comunicação cliente-servidor, a qual é composta de dois níveis. Esse modo de operação requer duas instâncias — server e client — que interagem entre si.
OpenVPN Server
É a parte que se comunica com a Internet para estabelecer o túnel. Seja um servidor tradicional, seja um servidor cloud, o OpenVPN Server recebe a chamada do cliente e, em seguida, prepara o ambiente de VPN para que o cliente assuma a função de servidor para conectar-se aos demais clientes.
OpenVPN Client
O OpenVPN Client é a parte que possibilita ao cliente se comunicar com o servidor e, também, com os computadores participantes da chamada em VPN, independentemente do sistema operacional que cada um utilize.
A conexão via OpenVPN passa por processos de criptografia e autenticação do OpenSSL, podendo ela ser feita usando protocolo UDP ou TCP para transmissão — como o UDP transfere os dados diretamente, sem repetições, ele oferece um desempenho melhor.
As camadas de segurança, inclusive, são reforçadas pelos recursos de segurança da rede, tais como: sistemas antivírus, firewall corporativo e a própria equipe de Segurança da Informação que protege o ambiente.
Razões para utilizar o OpenVPN
A melhor maneira de se conectar a qualquer VPN é usando o seu próprio cliente de software, visto que um programa específico executa, automaticamente, o complexo trabalho para fazer a conexão acontecer. Em poucas palavras, o usuário somente instala e usa.
Entretanto, soluções desse tipo nem sempre atendem às necessidades de uma empresa, por exemplo, que enxergam problemas com interfaces pouco amigáveis, configurações que incluem elementos irrelevantes e mau aproveitamento dos recursos de hardware.
Um meio eficiente para superar esses obstáculos e continuar usufruindo dos benefícios da VPN é utilizar um serviço com o cliente de código aberto, como o OpenVPN (publicado pela General Public License – GPL), bastando a rede suportar o protocolo em questão para ter condições de criar e gerenciar suas conexões.
Embora se tenha de abrir mão das funcionalidades extras oferecidas pelo software convencional, no OpenVPN a interface complexa cede lugar a um ambiente fácil de gerenciar, gerando, além de praticidade, economia de recursos computacionais.
O administrador ganha, também, com registros de logs bem detalhados, essencial para encontrar soluções para problemas, e alto nível de controle de gerenciamento, ou seja, a liberdade de configuração não tem limites.
Download do OpenVPN
Acessando a página oficial da comunidade OpenVPN, você se depara com uma variedade de alternativas para baixá-lo em sua máquina. Primeiramente, é preciso selecionar entre duas categorias de solução: “Community Downloads” e “Access Server Downloads”.
Na sessão “Community Downloads” se encontra o instalador do OpenVPN em suas versões cliente para Linux, Mac OS, Windows e outras plataformas. Em “Access Server Downloads”, estão disponíveis pacotes para servidores Linux (Ubuntu, Fedora, RedHat e CentOS) e provedores de cloud computing, como Amazon Web Services, Microsoft Azure e Google Cloud.
Em suma, o OpenVPN é uma solução completa que, não por acaso, é utilizado por muitas corporações no mundo todo — até por sua compatibilidade com todos os diversos sistemas operacionais da atualidade.
A tendência, por ser um software tão ativo entre usuários e desenvolvedores, é que o OpenVPN ganhe ainda mais robustez na medida em que aumente a quantidade de voluntários para o projeto. Logo, resta alguma razão utilizar outra ferramenta? Responda nos comentários!
Quer saber como construir um ambiente Linux seguro e funcional para criar VPNs de alto desempenho, proteger a rede, gerenciar dispositivos, entre outras atribuições de um sysadmin? Acesse agora mesmo o site Profissionais Linux!