- Eriberto Blog - http://eriberto.pro.br/blog -

OpenVPN com Windows 7

Tweet [1]

Recentemente, alguns clientes de rede que trabalham em outro ambiente e se conectam via OpenVPN fizeram upgrade de XP para 7. Depois desse upgrade, tivemos dois problemas:

Comecei a realizar testes com um netbook com Windows 7 via 3G. O console do OpenVPN GUI mostrava bem claramente uma situação: na hora de criar rotas, eu obtinha o erro Route addition via IPAPI failed. Então, olhando o manual on-line do OpenVPN e procurando por Windows, encontrei:

Windows-Specific Options:
[...]
--route-method m
     Which method m to use for adding routes on Windows?

     adaptive (default) -- Try IP helper API first.  If that fails, fall back to the route.exe shell command.
     ipapi -- Use IP helper API.
     exe -- Call the route.exe shell command.

Outra boa opção que encontrei na Internet e depois procurei entender no manual foi a –route-delay. Esta opção também é benéfica nos MS Windows. As citadas opções devem ser inseridas no script do cliente. Assim, incluí as seguintes linhas nos clientes:

--route-method exe
--route-delay 5

Bem, com as linhas acima, a situação mudou. Passei a receber uma mensagem referente a não ter privilégios para criar rotas. Então, executei o OpenVPN GUI como administrador e deu certo. Um pouco estranho, pois os usuários teriam que ter a senha de algum administrador. Então, procurando na Internet sem parar, não encontrei uma solução direta via Windows. Parece que ninguém encontrou. Mas há aplicativos como suDown [2] e sudowin [3] que dizem resolver o problema. Não os testei porque realmente não estou precisando desse tipo de solução.

O último problema enfrentado foi o fato dos usuários conseguirem navegar fora do túnel. Na maioria das vezes isso não é problema, a não ser no nosso caso (aqui no meu trabalho). Dependendo do IP de origem (VPN ou Internet), o nosso usuário terá direito a alguns acessos. Então, ele deverá estar o tempo todo dentro do túnel. Já tínhamos uma configuração para isso, do lado do servidor. Trata-se da seguinte linha no arquivo do OpenVPN server (em /etc/openvpn/):

push "redirect-gateway"

Só que  não estava funcionando. Então, voltando ao manual on-line do OpenVPN para ver se tinha algo especial para o Windows 7, descobri que a opção mudou e foram acrescidos parâmetros. Ele explica cada parâmetro e recomenda def1, que realmente bate com o meu caso. Então, a nova linha:

push "redirect-gateway def1"

Com isso tudo se resolveu e os Windows 7 estão na VPN.

[]s!