Lomadee, uma nova espécie na web. A maior plataforma de afiliados da América Latina.

sábado, 12 de março de 2011

Criando uma VPN básica


Introdução

Uma VPN (Virtual Private Network, ou rede virtual privada) é, como o nome sugere, uma redevirtual, criada para interligar duas redes distantes, através da Internet. Usar uma VPN permite que você compartilhe arquivos e use aplicativos de produtividade e de gerenciamento, como se todos os micros estivessem conectados à mesma rede local. Você pode até mesmo imprimir em impressoras da rede remota, da mesma forma que faria com uma impressora local.
Antigamente, a única forma de interligar redes em dois locais diferentes era usar linhas de frame-relay. Para quem não é dessa época, uma linha de frame-relay oferece um link dedicado de 64 kbits entre dois pontos (a matriz e a filial de uma empresa, por exemplo), com um custo mensal fixo. Você pode combinar várias linhas frame-relay em uma única conexão, de acordo com a necessidade, o problema nesse caso é o preço. Atualmente, existem outras opções de conexões dedicadas e de conexões de alta disponibilidade, oferecidas pelas operadoras, mas elas ficam fora do orçamento da maioria das pequenas e médias empresas.
Usando uma VPN, você pode obter todos os benefícios de ter uma conexão dedicada entre dois pontos usando conexões via ADSL ou cabo, que são muito mais baratas. Dependendo do volume de uso da rede, você pode tanto utilizar a conexão que já tem quanto utilizar uma segunda conexão apenas para a VPN, evitando assim que o tráfego prejudique a navegação dos usuários. Além de interligar duas ou mais redes, a VPN pode (dependendo da configuração) ser acessada também por funcionários trabalhando remotamente.
Todos dados que trafegam através da VPN são encriptados, o que elimina o risco inerente à transmissão via Internet. Naturalmente, nenhuma VPN pode ser considerada "100% segura", já que sempre existe um pequeno risco de alguém conseguir obter acesso aos servidores, de forma a roubar as chaves de encriptação (por exemplo), mas, em uma VPN bem configurada, o risco é realmente muito pequeno. É muito mais provável que um funcionário descontente sabote a rede interna, ou envie informações sigilosas para fora, do que algum invasor consiga efetivamente obter acesso à rede via Internet.
Nesse tópico, estudaremos como criar VPNs usando o OpenVPN. Além de ser mais simples de configurar que a maioria das outras soluções de VPN e ser bastante seguro e flexível, ele possui versões Linux e Windows, o que permite criar túneis interligando máquinas rodando os dois sistemas sem grandes dificuldades.
Outras vantagens são que ele pode ser usado por clientes conectando através de uma conexão compartilhada via NAT (apenas o servidor precisa de portas abertas) e a boa tolerância contra conexões ruins, ou ao uso de conexões com IP dinâmico. A VPN pode ser configurada para ser restabelecida de forma automática em caso de interrupção na conexão, o que torna o link bastante confiável.
Com relação à segurança, o OpenVPN pode ser configurado para utilizar chaves estáticas, que oferecem um nível mediano de segurança, em troca de uma configuração mais simples, ou para utilizar certificados X509, onde a configuração é um pouco mais complexa, mas, em compensação, a segurança é muito maior (bem superior à da maioria das soluções comerciais). Isso permite que você escolha a melhor relação entre praticidade e segurança de acordo com a situação.

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.

Criando VPNs usando chaves estáticas

A forma mais simples de configurar o OpenVPN é utilizar chaves estáticas, onde um arquivo contendo um algoritmo de encriptação é usado pelas duas partes para encriptar os dados transmitidos através da VPN.
Nesse modo, você gera uma arquivo de texto no servidor, contendo a chave de encriptação e precisa apenas copiá-la para o cliente e fazer uma configuração rápida para criar a VPN. Se você quer apenas criar uma VPN doméstica, ou criar uma VPN temporária entre duas redes, esta é a configuração recomendada.
O grande problema em utilizar uma chave estática é que, como o nome sugere, a mesma chave é utilizada sessão após sessão, sem nunca mudar. Com isso, existe uma pequena possibilidade de um atacante obstinado conseguir quebrar a VPN usando um ataque de força bruta. Como a chave é um arquivo de texto, que é armazenado tanto no cliente quanto no servidor, existe também a possibilidade de alguém conseguir copiá-lo, caso tenha acesso físico a uma das máquinas. Outra limitação é que usando uma chave estática o servidor suportará a conexão de um único cliente por VPN.
Para VPNs com vários clientes, ou em redes empresariais, onde a segurança é prioridade, é recomendável utilizar uma estrutura baseada em certificados X509, como veremos no tópico seguinte.
Vamos então à configuração de nossa primeira VPN. Para este exercício inicial, recomendo que utilize duas máquinas da rede local, que não tenham firewall ativo. Depois de entender melhor como o sistema funciona, passaremos para uma configuração mais elaborada.
O primeiro passo é gerar o arquivo com a chave, no servidor. O arquivo deve ser gerado dentro do diretório "/etc/openvpn" (o diretório padrão de configuração), de forma que acessamos o diretório antes de executar o comando que gera a chave:
# cd /etc/openvpn
# openvpn --genkey --secret static.key
Isso gerará o arquivo "static.key", que contém a chave de encriptação que será usada para criar a conexão. Ele é um arquivo de texto simples, que contém uma chave de 2048 bits, como em:
#
# 2048 bit OpenVPN static key
#
-----BEGIN OpenVPN Static key V1-----
0600d007988a59c6f7895884d336d445
2679fd3d2c0b9e0b777b4da92ab97043
... (mais 13 linhas)
e871ed9077185a2a6904e67cd0869e15
-----END OpenVPN Static key V1-----
Este arquivo deve ser copiado para a pasta "/etc/openvpn" do cliente, usando (por exemplo) o SFTP. Você pode usar também um pendrive, ou outra mídia de uso local, mas não é recomendável enviá-lo por meios não seguros (e-mail por exemplo), já que qualquer um que tenha acesso ao arquivo poderá se conectar à sua VPN ou desencriptar todo o tráfego transmitido através dela.
Para acessar o servidor (a partir do cliente) via SFTP, use o comando "sftp ip" para se conectar e, em seguida, use os comandos "cd /etc/openvpn" e "get static.key" para fazer a cópia, como em:
# cd /etc/openvpn
# sftp root@192.168.1.101
Password:
sftp> cd /etc/openvpn
sftp> get static.key

Fetching /etc/openvpn/static.key to static.key
sftp> quit
Com o arquivo contendo a chave presente nas duas máquinas, falta criar os arquivos de configuração que serão usados pelo OpenVPN. Neste exemplo, criarei o arquivo "/etc/openvpn/server.conf" no servidor e o arquivo "/etc/openvpn/client.conf" no cliente. Os nomes podem ser diferentes, mas os arquivos devem ser criados dentro da pasta "/etc/openvpn" e devem terminar com a extensão ".conf"
O arquivo "/etc/openvpn/server.conf", no servidor, fica com o seguinte conteúdo:
dev tun
ifconfig 10.0.0.1 10.0.0.2
secret static.key
A linha "ifconfig 10.0.0.1 10.0.0.2" inclui os endereços que serão usados pelas interfaces virtuais da VPN, no servidor e no cliente. No exemplo, o servidor utilizará o endereço "10.0.0.1" e o cliente o endereço "10.0.0.2". Você pode utilizar outros endereços se preferir. O importante é que os endereços utilizados na VPN devem ser sempre diferentes dos endereços usados na rede local.
A linha "secret static.key" especifica o arquivo com a chave de encriptação, que criamos no passo anterior. Não esqueça de alterar a linha caso o nome do arquivo seja diferente.
Em seguida, vem o arquivo "/etc/openvpn/client.conf", que deve ser criado no cliente:
remote 192.168.1.101
dev tun
ifconfig 10.0.0.2 10.0.0.1
secret static.key
A primeira linha especifica o endereço IP do servidor. No exemplo, estou utilizando um endereço de rede local, já que estamos apenas testando a VPN, mas, em um exemplo real de uso, você utilizaria o endereço IP de Internet do servidor ou (ao utilizar uma conexão com IP dinâmico) um domínio virtual utilizado por ele. Se você ainda não tem um, acesse o no-ip.com ou o dyndns.org e faça o registro.
Com os arquivos de configuração criados, inicializar a VPN é incrivelmente simples. Você precisa apenas reiniciar o serviço "openvpn" tanto no cliente quanto no servidor, usando o comando:
# /etc/init.d/openvpn restart
Ao ser iniciado, o serviço procura por arquivos ".conf" dentro do diretório "/etc/openvpn" e inicia as VPNs configuradas automaticamente (desde que o serviço esteja configurado para subir durante o boot, o que é feito por padrão na maioria das distribuições). Isso não apenas simplifica a configuração, mas faz com que a VPN passe a ser automaticamente restabelecida a cada boot. Para desativá-la, basta parar o serviço:
# /etc/init.d/openvpn stop
Você pode, também, ativar o OpenVPN manualmente, usando (como root) o comando:
# openvpn --config /etc/openvpn/client.conf
(onde o "client.conf" é o arquivo de configuração que será usado)
Este comando manual permite acompanhar as mensagens de inicialização e de conexão, o que ajuda a descobrir o que está errado em casos em que a VPN não funciona, embora a configuração pareça estar correta.
Se a VPN é usada pelos clientes apenas esporadicamente, você pode criar um ícone no desktop, ou um pequeno script contendo o comando, para que o usuário possa se conectar à VPN apenas quando precisar. Outra opção é instalar o kvpnc (http://home.gna.org/kvpnc/), um cliente gráfico que pode ser usado para se conectar a VPNs baseadas em diversos protocolos, incluindo o OpenVPN:
138f1016
Depois de estabelecida a VPN, o cliente passará a ter uma nova interface de rede, a "tun0", com o endereço IP "10.0.0.2", que funciona como um link ponto-a-ponto com a interface "tun0" do servidor, que recebe o endereço "10.0.0.1":



Teste a conexão usando o ping, ou acessando algum serviço disponível no servidor, como em:
# ssh 10.0.0.1
Depois do teste inicial, você pode fazer um teste realizando a conexão via Internet (você pode usar uma conexão discada ou outra conexão temporária no cliente para fazer o teste). Para isso, você vai precisar apenas alterar a configuração no cliente, adicionando o endereço de internet do servidor, como em:
remote hardway.no-ip.org
dev tun
ifconfig 10.0.0.2 10.0.0.1
secret static.key
Não se esqueça de reiniciar o OpenVPN para que a alteração entre em vigor:
# /etc/init.d/openvpn restart

Configuração das portas no OpenVPN

Diferente de outras soluções de VPN, o OpenVPN utiliza uma única porta de entrada, mesmo que sejam utilizadas várias VPNs simultaneamente. Isso facilita bastante a configuração do firewall ou do roteamento de portas no servidor.
No OpenVPN 2.x é utilizada por padrão a porta 1194 UDP, que deve estar aberta no firewall do servidor (versões antigas, anteriores à 2.0-beta16 utilizavam a porta 5000 UDP). Se o servidor acessa através de uma conexão compartilhada, é necessário configurar o gateway da rede (ou o modem ADSL) para encaminhar a porta para ele.
Como de praxe, é possível alterar a porta padrão usada pelo OpenVPN, desde que você especifique a nova porta tanto na configuração do servidor quanto do cliente. Para isso, usamos a opção "proto udp", seguida pela porta desejada, que deve ser incluída tanto na configuração do servidor quanto na do cliente, como em:
proto udp
port 22222
É possível, também, usar uma porta TCP. Nesse caso, usamos a opção "proto tcp-server" na configuração do servidor (/etc/openvpn/server.conf) e a opção "proto tcp-client" na configuração do cliente (/etc/openvpn/client.conf), como em:
proto tcp-server
port 22222
e:
proto tcp-client
port 22222
O grande problema em utilizar o TCP no OpenVPN é que o desempenho da VPN será perceptivelmente pior do que se utilizada uma porta UDP.
Isso ocorre porque no UDP os pacotes são transmitidos diretamente, sem nenhum overhead, o que garante o melhor desempenho. No UDP não existe correção de erros nem retransmissão de pacotes perdidos, mas isso não é um problema no caso do OpenVPN, pois ele é o responsável apenas pela criação do link de dados. Sobre ele, temos o protocolo TCP/IP e as diferentes camadas do sistema operacional, que se encarregam dessa tarefa.
Ao utilizar uma porta TCP, o próprio OpenVPN é obrigado a fazer a checagem e a retransmissão de pacotes, respeitando o modo de funcionamento do protocolo. Isso aumenta bastante a latência da conexão e faz com que cada vez que um pacote é perdido, o OpenVPN precise parar a transmissão de todos os pacotes subsequentes até que a retransmissão seja feita. Quanto maior for o volume de dados que trafegam pela VPN, mais desvantajoso é o uso do TCP no caso do OpenVPN, de forma que é mais recomendável utilizar uma porta UDP sempre que possível.

Estabilizando e otimizando a conexão

Usando a configuração simplificada do exemplo anterior, você notará que a VPN não será muito estável, pois qualquer interrupção na comunicação entre as duas máquinas derrubará o link, até que você reinicie o serviço do OpenVPN (no cliente), forçando a reconexão, como em:
# /etc/init.d/openvpn restart
Vamos então a um conjunto de parâmetros de configuração que permitem estabilizar a VPN, fazendo com que o OpenVPN passe a monitorar a conexão e restabelecê-la automaticamente sempre que necessário.
O primeiro, e mais importante, é o parâmetro "keepalive", que faz com que o servidor e o cliente monitorem a conexão, enviando pings periódicos um para o outro, e reiniciem a VPN automaticamente caso não recebam resposta dentro de um período determinado. Esta opção é especialmente importante em VPNs usadas através de links ADSL ou qualquer outro tipo de conexão que não seja completamente estável. Um exemplo de uso seria:
keepalive 10 120
O primeiro número especifica o intervalo dos pings e o segundo o timeout, depois do qual a VPN é reiniciada. Nesse caso, o ping é enviado a cada 10 segundos sem atividade e a VPN é reiniciada depois de 120 segundos sem respostas. Caso o link seja interrompido, o cliente tenta restabelecer a VPN periodicamente, até que tenha sucesso. Esta linha deve ser incluída tanto na configuração do servidor quanto na do cliente.
Opcionalmente, você pode incluir a linha "inactive", para especificar um tempo máximo para as tentativas de reconexão. Se quiser que o cliente desista depois de uma hora, por exemplo, inclua a linha:
inactive 3600
O parâmetro "comp-lzo" faz com que o OpenVPN passe a compactar os dados transmitidos através do túnel (é necessário que o pacote "lzo" esteja instalado). O algoritmo usado pelo OpenVPN é bastante leve, por isso o uso adicional de processamento, tanto no servidor quando nos clientes é pequeno. A compressão dos dados não faz milagres, mas é uma boa forma de melhorar o desempenho da VPN ao utilizar links lentos ou congestionados. Esta é outra opção que deve ser incluída tanto no servidor quanto nos clientes para que seja usada:
comp-lzo
Outras duas opções, úteis para tornar a VPN mais confiável e mais resistente a problemas de conectividade, são a "persistkey" e a "persisttun". Elas fazem com que o daemon mantenha a interface tun aberta e as chaves carregadas quando é reiniciado (quando a VPN é restabelecida depois de uma queda de conexão, por exemplo), o que torna mais rápida a restauração do link e evita problemas diversos:
persist­key
persist­tun
Outra opção útil ao utilizar conexões com IP dinâmico é a opção "float", que permite que o túnel continue aberto mesmo que o endereço IP da outra máquina mude. Em situações normais, a mudança de IP faria com que a conexão fosse encerrada e o túnel fosse interrompido até que fosse reiniciado (seja manualmente ou seja pelo uso da opção keepalive). A opção "float" torna o processo mais transparente, já que o OpenVPN passa a monitorar as mudança de endereços, mantendo o túnel aberto enquanto houver conexão entre as duas partes. Essa opção também deve ser incluída tanto na configuração do servidor quanto na do cliente:
float
Temos aqui um exemplo mais incrementado de configuração do servidor, onde a porta é especificada manualmente e são usados os parâmetros que acabamos de ver:
dev tun
proto udp
port 22222
keepalive 10 120
comp-lzo
persist­key
persist­tun
float
ifconfig 10.0.0.1 10.0.0.2
secret static.key
A configuração no cliente é praticamente a mesma, com a adição da linha "remote", que especifica o endereço do servidor e a mudança na linha "ifconfig", onde a ordem dos endereços são trocados:
remote hardway.no-ip.org
dev tun
proto udp
port 22222
keepalive 10 120
comp-lzo
persist­key
persist­tun
float
ifconfig 10.0.0.2 10.0.0.1
secret static.key

Roteando pacotes através da VPN

Originalmente, o cliente terá acesso apenas ao próprio servidor. Para que ele tenha acesso aos demais hosts da rede, é necessário realizar alguns passos adicionais.
O primeiro é ativar o roteamento de pacotes no servidor, de forma que ele passe a encaminhar os pacotes recebidos do cliente para a interface de rede local. Mesmo que o servidor possua uma única placa de rede, a VPN é vista pelo sistema como uma interface separada, de forma que, do ponto de vista do sistema operacional, a VPN e a rede local são duas placas de rede separadas.
O roteamento é feito usando dois comandos (executados no servidor):
# echo 1 > /proc/sys/net/ipv4/ip_forward
# iptables -t nat -s 10.0.0.2 -A POSTROUTING -o eth0 -j MASQUERADE
O primeiro ativa o roteamento de pacotes no Kernel e o segundo orienta o sistema a encaminhar os pacotes recebidos a partir do endereço IP do cliente (10.0.0.2, no exemplo) para a interface de rede local (eth0, no exemplo). Estes dois comandos precisam ser adicionados em algum dos scripts de inicialização do sistema (como o "/etc/rc.local) para que sejam executados a cada boot.
O próximo passo é executar o comando abaixo no cliente, de forma que ele passe a consultar o servidor ao tentar acessar endereços dentro da faixa usada pela rede local:
# route add -net 192.168.1.0 netmask 255.255.255.0 gw 10.0.0.1 dev tun0
Note que o comando especifica a faixa de endereços usada na rede local (192.168.1.0, no exemplo), a máscara, o endereço IP do servidor do outro lado da VPN e a interface virtual usada pela VPN (tun0).
A partir daí, o cliente conseguirá acessar outros micros da rede, montar compartilhamentos ou até mesmo imprimir em impressoras compartilhadas. É importante notar, entretanto, que se o cliente também estiver conectado a uma rede local (acessando através de uma conexão compartilhada, por exemplo), ela deve utilizar uma faixa diferente de endereços.

Configuração do OpenVPN no Windows

A configuração da versão Windows do OpenVPN é bastante similar à da versão Linux, com exceção de alguns detalhes e algumas adaptações feitas devido às diferenças entre os dois sistemas. Depois de baixar o pacote no http://opnvpn.se e instalar o programa, acesse a opção "OpenVPN configuration file directory", dentro da pasta "OpenVPN" que será criada no iniciar:
4519aa4a
O atalho leva à pasta "config" dentro do diretório de instalação do programa, onde irão a chave de encriptação e o arquivo de configuração, de forma similar à pasta "/etc/openvpn" que temos no Linux.
Se você pretende usar a máquina Windows como servidor, pode usar a opção "Generate a static OpenVPN key", usando o atalho dentro do menu iniciar. Isso gerará um arquivo "key.txt" dentro do diretório de configuração, que precisa então ser copiado para o cliente.
Se, por outro lado, você quer usar a máquina Windows para se conectar a um servidor Linux, comece copiando o arquivo "static.key" do servidor para dentro da pasta de configuração:
m4b58332c
É necessário criar também um arquivo de configuração, com a extensão "ovpn" (usando o bloco de notas), onde são especificadas as opções de configuração. O conteúdo do arquivo é exatamente o mesmo que usaríamos em um cliente Linux:



Depois de copiar a chave e gerar o arquivo de configuração, clique com o botão direito sobre ele e use a opção "Start OpenVPN on this config file" para ativar a VPN:
19a28787
Isso abrirá uma janela do prompt do MS-DOS mostrando o progresso da conexão:
e448468
Assim como no Linux, a VPN aparece como uma nova interface de rede, que recebe o endereço IP definido na configuração:
727e7114
Depois de testar a conexão, é possível fazer com que ela seja inicializada automaticamente ativando o serviço do OpenVPN, que passa então a monitorar o diretório de configuração, carregando automaticamente os arquivos de configuração colocados dentro dele, assim como no Linux.
Para isso, acesse o "Painel de Controle > Ferramentas Administrativas > Serviços" e mude a configuração do "OpenVPN Service" de "Manual" para "Automático":

m7fdc49ec