Imprimir post Imprimir post
 

OpenVPN com Windows 7

Posted by Eriberto on fev 2, 2012 in Debian, Internet, Linux, Rede, Segurança |

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:

  • Algumas máquinas se conectavam mas não acessavam a rede interna.
  • Outras se conectavam mas chegavam via Internet e não via VPN. Assim, eram bloqueados pelo sistema de firewall para o acesso a determinados serviços.

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 e sudowin 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!

Tags:, , , , , , , , , , ,

2 Comments

Sandro
abr 5, 2013 at 9:52 am

Obrigado pela dica, foi muito útil.


 
Daniel Moreno
jan 26, 2015 at 2:39 pm

Para mim nao funcionou o push “redirect-gateway def1” =(

Estou a fazer uma conexao com chave estatica e funciona tranquilamente, o unico problema é a conexao cliente sair pelo tunel do servidor

LADO SERVIDOR
dev tun
proto tcp-server
port 8081

ifconfig 1.1.1.1 1.1.1.2

secret /etc/openvpn2/static.key
push “redirect-gateway def1”

keepalive 10 60
comp-lzo
persist-key
persist-tun
float

LADO CLIENTE
dev tun
proto tcp-client
port 8081

remote MEU_IP_EXTERNO
ifconfig 1.1.1.2 1.1.1.1

secret static.key

keepalive 10 60
comp-lzo
persist-key
persist-tun
float


 

Reply


CAPTCHA Image
Reload Image

Copyright © 2019 Eriberto Blog All rights reserved.
desk-mess-mirrored v theme from BuyNowShop.com.