Instalando o OpenVPN e criando uma VPN básica

Instalando o OpenVPN e criando uma VPN básica


O primeiro passo é instalar o OpenVPN, tanto no cliente quanto no servidor. Nas distribuições derivadas do Debian você pode instalá-lo rapidamente via apt-get:
# apt-get install openvpn
No final da instalação, ele exibirá uma mensagem, perguntando se o OpenVPN deve ser desativado antes de ser atualizado ("Would you like to stop openvpn before it gets upgraded?"). Responda que sim.
No OpenSuSE, abra o Yast e, dentro da seção de gerenciamento de pacotes, faça uma busca pelo pacote "openvpn". A busca resulta em dois resultados: "openvpn", que é o pacote em que estamos interessados e "openvpn-devel", que contém o código fonte. Basta selecionar o pacote e concluir a instalação.
No Fedora, a instalação pode ser feita usando o yum. Ele se encarregará de instalar também os pacotes "openssl" e "lzo", que contém as bibliotecas usadas pelo OpenVPN para encriptar e compactar o tráfego da rede:
# yum install openvpn
No CentOS, é necessário adicionar o repositório do RPMForge já que (até o CentOS 5.1), o pacote OpenVPN não faz parte dos repositórios oficiais. Você pode adicionar o repositório seguindo as instruções disponíveis aqui: http://wiki.centos.org/Repositories/RPMForge.
O primeiro passo é instalar a chave GPG do repositório:
# rpm --import http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt
Com a chave instalada, baixe o pacote RPM do repositório. Este pacote instala o arquivo com a configuração do repositório dentro da pasta "/etc/yum/repos.d". Verifique o link do pacote para a versão do CentOS que está utilizando na página com as instruções. No caso do CentOS 5.1, versão 32 bits, por exemplo, o pacote é o "rpmforge-release-0.3.6-1.el5.rf.i386.rpm". Se você está fazendo a configuração via linha de comando, pode baixar o pacote usando o wget, como em:
# wget -c
http://apt.sw.be/redhat/el5/en/i386/RPMS.dag/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
Em seguida, instale o pacote usando o comando "yum localinstall", como em:
# yum localinstall rpmforge-release-0.3.6-1.el5.rf.i386.rpm
A partir daí, você pode instalar o pacote do OpenVPN usando o yum, assim como no Fedora:
# yum install openvpn
No Mandriva, basta instalar o pacote "openvpn" usando urpmi. Assim como no Fedora, ele também se encarrega de instalar as dependências:
# urpmi openvpn
Se você estiver utilizando uma distribuição que não inclua o pacote nos repositórios, ou se a versão disponível for muito antiga, você pode também instalar a partir do pacote com o código fonte, disponível no: http://openvpn.net/index.php/downloads.html
Depois de instalar o pacote, o próximo passo é carregar o módulo "tun" do Kernel, que é utilizado pelo OpenVPN para criar interfaces virtuais. Cada VPN criada se comporta como se fosse uma nova interface de rede, conectada à rede de destino. Imagine que a VPN se comporta como se existisse um cabo de rede gigante ligando esta interface virtual à rede do outro lado do túnel.
# modprobe tun
Adicione a linha "tun" no final do arquivo "/etc/modules" para que o módulo passe a ser carregado automaticamente durante o boot:
# echo tun >> /etc/modules
Estes três passos, ou seja, a instalação do OpenVPN, o carregamento do módulo e a adição da linha no final do arquivo devem ser executados tanto no servidor quanto nos clientes.
Depois de concluída a instalação, você pode criar um túnel simples, não encriptado, usando os comandos abaixo. Este túnel não pode ser considerado uma "VPN" já que não é seguro, mas serve como um "hello word" dentro da configuração do OpenVPN.
Presumindo que as duas máquinas estejam ligadas em rede e que não exista nenhum firewall no caminho, use o comando abaixo no cliente, especificando o endereço do servidor:
# openvpn --remote 192.168.1.1 --dev tun0 --ifconfig 10.0.0.1 10.0.0.2
Faça o mesmo no servidor, especificando agora o endereço do cliente:
# openvpn --remote 192.168.1.202 --dev tun0 --ifconfig 10.0.0.2 10.0.0.1
Rode o comando "ifconfig" no cliente e você verá que foi criada uma interface de rede virtual, a "tun0", com o endereço "10.0.0.1":
e261f31
No exemplo, o servidor recebe o endereço "10.0.0.2". Você pode testar a conectividade usando o ping ou qualquer outra ferramenta:
5201f91d
Como comentei, o OpenVPN possui também uma versão Windows, que está disponível no http://openvpn.se.
Esta versão inclui um instalador gráfico e funciona em todas as versões do Windows a partir do Windows 2000. Ela inclui também o driver tun/tap, que é instalado automaticamente, você precisa apenas prestar atenção nas mensagens de instalação. Em um certo ponto, será exibida uma mensagem avisando que o driver TAP/Win32 não passou pelo processo de certificação de compatibilidade com o Windows. Responda "Continuar assim mesmo" para efetuar a instalação, do contrário o OpenVPN não funcionará.
m3626323d
O processo de certificação dos drivers para o Windows é um processo caro e demorado, onde os fabricantes de componentes submetem os drivers de dispositivo à Microsoft para que eles sejam certificados. Este é um processo que não está ao alcance de projetos independentes, como o OpenVPN, daí a exibição da mensagem. De qualquer forma, isso não significa que o software seja instável ou inseguro, muito pelo contrário. Se a certificação da Microsoft fosse um indicador de qualidade, softwares como o IIS e o IE não teriam tantas falhas e brechas de segurança.

Nenhum comentário:

Postar um comentário