Hoje eu estava pesquisando sobre o OpenVPN e encontrei um artigo bem completo que descrevia a ferramenta na wikipedia, porém o artigo ainda não tinha tradução para o português, acabei fazendo uma tradução e criando a versão em português com algumas coisinhas a mais.
Artigo original:
http://en.wikipedia.org/wiki/OpenVPN
Tradução:
http://pt.wikipedia.org/wiki/OpenVPN
Esta é uma tradução inicial, pode e deve ser melhorada, mais material pode ser acrescentado, se você puder colaborar será muito bom, seja revisando, seja escrevendo mais informações, toda a ajuda é bem vinda ;)
OpenVPN The open source VPN
O OpenVPN é um software livre e open-source para criar redes privadas virtuais do tipo ponto-a-ponto ou server-to-multiclient através de túneis criptografados entre computadores. Ele é capaz de estabelecer conexões diretas entre computadores mesmo que estes estejam atrás de Nat Firewalls sem necessidade de reconfiguração da sua rede. Ele foi escrito por James Yonan e publicado sob licença GNU General Pulic Licence (GPL).
Introdução
O OpenVPN permite autenticação ponto-a-ponto através de chaves secretas compartilhadas, certificados ou autenticação com usuário e senha. Quando utilizado em modo multiclient-server ele permite que cada cliente utilize a autenticação pública com certificados, fazendo isto através de assinaturas digitiais e certificados de autoridade. Ele utiliza extensivamente a criptografia OpenSSL. Usa também os protocolos SSLv3/TLSv1. Esta disponível para Solaris, Linux, OpenBSD, FreeBSD, NetBSD, Mac OS X, e Windows 2000/XP/Vista. Ele contém muitos recuros de controle se segurança. Ele não é um cliente VPN baseado em web, não é compatível com IPsec ou qualquer outro tipo de pacote VPN. Todo pacote do OpenVPN consiste em apenas um binário tanto para conexões do lado do cliente quanto para conexões do lado do servidor, você vai encontrar mais alguns arquivos e chaves dependendo do tipo e método de autenticação utilizado. Eventualmente é utilizado por gamers como uma maneira de acessar jogos LAN fora da internet.
Criptografia
O OpenVPN utiliza a biblioteca OpenSSL para prover criptografia entre ambos canais de controle de dados. Isto faz com que o OpenSSL cuidade de toda a criptografia e autenticação, permitindo ao OpenVPN utilizar todas as cifras disponíveis no pacote do OpenSSL. Ele pode utilizar o pacote de autenticação HMAC para adicionar uma camada de segurança para a conexão. Ele pode também utilizar aceleração de hardware para obter uma melhor performance na encriptação.
Autenticação
O OpenVPN te possibiliade autenticação entre os pontos de várias maneiras. O OpenVPN oferece chaves secretas compartilhadas, autenticação baseada em certificados e autenticação baseada em usuário e senha. O método de autenticação com chaves secretas compartilhadas é o mais simples, e combinando com certificados ele se torna o mais robusto e rico recurso de autenticação. A autenticação com usuário e senha é um recurso novo (disponível apenas na versão 2.0) ele possibilita que sejam utilizados certificados no cliente, mas não é obrigatório (o servidor precisa de certificado). O código fonte em formato tarball inclui um exemplo de script Perl que verifica usuário e senha através do PAM e um plug-in em C chamado auth-pam-plugin.
Networking
O OpenVPN pode rodar sobre UDP (preferencimental por padrão) ou TCP. Ele multiplexa toda a comunicação em cima de uma única porta TCP/UDP. Ele tem a habilidade de trabalhar com a maioria dos proxy servers (incluindo HTTP) e funciona muito bem trabalhando com NAT]] para passar por firewalls. As configurações do servidor tem a habilidade de fornecer certas configurações de rede para seus clientes, isto inclui endereços Ipv4, comandos de rotas e algumas poucas configurações de conexão. O OpenVPN oferece dois tipos de interfaces para rede via Universal TUN/TAP driver. Ele pode criar um túnel em layer-3 (TUN), ou pode criar um túnel em layer-2 baseado em ethernet TAP, o que pode carregar qualquer tipo de tráfico ethernet. O OpenVPN pode utilizar a biblioteca de compressão LZO para compactar o fluxo de dados. A porta 1194 é a numeração oficial IANA para o OpenVPN. As novas versões do OpenVPN já estão configuradas para utilizarem esta porta. Um novo recurso na versão 2.0 permite que um processo possa manipular e gerenciar vários túneis simultâneos como alternativa ao método original de um processo por túnel, o qual era uma restrição das versões 1.x.x.
O OpenVPN utiliza os protocolos TCP e UDP como uma alternativa ao IPsec em situações onde o ISP pode ter bloqueado os protocolos específicos para VPN na tentativa de forçar os seus clientes a assinarem serviços mais caros.
Segurança
O OpenVPN oferece vários recursos de segurança internos. Ele roda em userspace, ao invés de necessitar de uma operação em ip stack. O OpenVPN tem a habilidade de bloquear os privilégios de acesso root, ele usa o mlockall para previnir que dados sensíveis sejam colocados em swap, outra característica é que após a sua inicialização ele roda em ambiente chroot.
O OpenVPN oferece suporte a smart card através de criptografia baseada em token PKCS#11.
Clientes OpenVPN para Windows
http://openvpn.se/
Clientes OpenVPN para MAC
http://code.google.com/p/tunnelblick/
http://viscosityvpn.com/
http://www.shimoapp.com/
Clientes UNIX/LINUX/BSD
http://projects.gnome.org/NetworkManager/
Artigos, Tutoriais, Howtos [pt-br]
OpenVPN Pantaneiro
http://gutocarvalho.net/mediawiki/index.php/OpenVPN_Pantaneiro
VPN em Linux com OpenVPN
http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=2602
Implementando soluções com o OpenVPN
http://www.istf.com.br/vb/showthread.php?t=8624
Criando Vpns usando OpenVPN
http://www.fug.com.br/content/view/173/60
OpenVPN Howto
http://epx.com.br/artigos_3rd/howto.php exp.com.br
[]’s
Guto