
Bom dia a todos,
Estou tendo problemas para fazer com que o aplicativo OpenVPN GUI adicione rotas a um cliente Windows 7. Estou usando o mesmo arquivo de configuração que usei em um cliente Windows XP, exceto que adicionei as duas linhas a seguir:
route-method exe
route-delay 2
Posso fazer uma conexão e recebo um endereço IP do pool 10.8.0.0 - o que me faz parecer que o túnel está ativo. Mas olhando o log abaixo, parece que as rotas não estão sendo adicionadas na máquina com Windows 7.
Fri Sep 13 16:02:44 2013 OpenVPN 2.3.2 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [PKCS11] [eurephia] [IPv6] built on Aug 22 2013
Fri Sep 13 16:02:44 2013 MANAGEMENT: TCP Socket listening on [AF_INET]127.0.0.1:25340
Fri Sep 13 16:02:44 2013 Need hold release from management interface, waiting...
Fri Sep 13 16:02:45 2013 MANAGEMENT: Client connected from [AF_INET]127.0.0.1:25340
Fri Sep 13 16:02:45 2013 MANAGEMENT: CMD 'state on'
Fri Sep 13 16:02:45 2013 MANAGEMENT: CMD 'log all on'
Fri Sep 13 16:02:45 2013 MANAGEMENT: CMD 'hold off'
Fri Sep 13 16:02:45 2013 MANAGEMENT: CMD 'hold release'
Fri Sep 13 16:02:48 2013 MANAGEMENT: CMD 'username "Auth" "username"'
Fri Sep 13 16:02:48 2013 MANAGEMENT: CMD 'password [...]'
Fri Sep 13 16:02:49 2013 Control Channel Authentication: using 'ta.key' as a OpenVPN static key file
Fri Sep 13 16:02:49 2013 Outgoing Control Channel Authentication: Using 160 bit message hash 'SHA1' for HMAC authentication
Fri Sep 13 16:02:49 2013 Incoming Control Channel Authentication: Using 160 bit message hash 'SHA1' for HMAC authentication
Fri Sep 13 16:02:49 2013 Socket Buffers: R=[8192->8192] S=[261360->261360]
Fri Sep 13 16:02:49 2013 UDPv4 link local: [undef]
Fri Sep 13 16:02:49 2013 UDPv4 link remote: [AF_INET]501.2.984.233:1194
Fri Sep 13 16:02:49 2013 MANAGEMENT: >STATE:1379102569,WAIT,,,
Fri Sep 13 16:02:49 2013 MANAGEMENT: >STATE:1379102569,AUTH,,,
Fri Sep 13 16:02:49 2013 TLS: Initial packet from [AF_INET]501.2.984.233:1194, sid=82453eea 30481972
Fri Sep 13 16:02:49 2013 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Fri Sep 13 16:02:49 2013 VERIFY OK: depth=1, O=Central Truck Center, Inc., OU=IT/Systems Department, [email protected], L=Landover, ST=MD, C=US, CN=ca.centraltruck.net
Fri Sep 13 16:02:49 2013 VERIFY OK: nsCertType=SERVER
Fri Sep 13 16:02:49 2013 VERIFY OK: depth=0, C=US, ST=MD, O=Central Truck Center, Inc., OU=IT/Systems Department, L=Landover, CN=centraltruck.net, [email protected]
Fri Sep 13 16:02:49 2013 Data Channel Encrypt: Cipher 'BF-CBC' initialized with 128 bit key
Fri Sep 13 16:02:49 2013 Data Channel Encrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Fri Sep 13 16:02:49 2013 Data Channel Decrypt: Cipher 'BF-CBC' initialized with 128 bit key
Fri Sep 13 16:02:49 2013 Data Channel Decrypt: Using 160 bit message hash 'SHA1' for HMAC authentication
Fri Sep 13 16:02:49 2013 Control Channel: TLSv1, cipher TLSv1/SSLv3 DHE-RSA-AES256-SHA, 2048 bit RSA
Fri Sep 13 16:02:49 2013 [centraltruck.net] Peer Connection Initiated with [AF_INET]50.242.184.133:1194
Fri Sep 13 16:02:50 2013 MANAGEMENT: >STATE:1379102570,GET_CONFIG,,,
Fri Sep 13 16:02:51 2013 SENT CONTROL [centraltruck.net]: 'PUSH_REQUEST' (status=1)
Fri Sep 13 16:02:51 2013 PUSH: Received control message: 'PUSH_REPLY,dhcp-option DNS 172.23.6.127,dhcp-option WINS 172.23.6.127,dhcp-option DOMAIN centraltruck.net,ip-win32 dynamic,route 172.23.6.0 255.255.255.0,route 172.23.7.0 255.255.255.0,route 208.197.153.0 255.255.255.0,route 10.8.0.0 255.255.255.0,topology net30,ping 10,ping-restart 120,ifconfig 10.8.0.6 10.8.0.5'
Fri Sep 13 16:02:51 2013 OPTIONS IMPORT: timers and/or timeouts modified
Fri Sep 13 16:02:51 2013 OPTIONS IMPORT: --ifconfig/up options modified
Fri Sep 13 16:02:51 2013 OPTIONS IMPORT: route options modified
Fri Sep 13 16:02:51 2013 OPTIONS IMPORT: --ip-win32 and/or --dhcp-option options modified
Fri Sep 13 16:02:52 2013 do_ifconfig, tt->ipv6=0, tt->did_ifconfig_ipv6_setup=0
Fri Sep 13 16:02:52 2013 MANAGEMENT: >STATE:1379102572,ASSIGN_IP,,10.8.0.6,
Fri Sep 13 16:02:52 2013 open_tun, tt->ipv6=0
Fri Sep 13 16:02:52 2013 TAP-WIN32 device [Local Area Connection 3] opened: \\.\Global\{19F13E2F-B3F0-4E85-A8A2-E3C86ADD1987}.tap
Fri Sep 13 16:02:52 2013 TAP-Windows Driver Version 9.9
Fri Sep 13 16:02:52 2013 Notified TAP-Windows driver to set a DHCP IP/netmask of 10.8.0.6/255.255.255.252 on interface {19F13E2F-B3F0-4E85-A8A2-E3C86ADD1987} [DHCP-serv: 10.8.0.5, lease-time: 31536000]
Fri Sep 13 16:02:52 2013 Successful ARP Flush on interface [41] {19F13E2F-B3F0-4E85-A8A2-E3C86ADD1987}
Fri Sep 13 16:02:54 2013 TEST ROUTES: 0/0 succeeded len=4 ret=0 a=0 u/d=down
Fri Sep 13 16:02:54 2013 Route: Waiting for TUN/TAP interface to come up...
As duas últimas linhas acima serão repetidas cerca de 30 vezes e então aparecerá um aviso mostrando que a VPN está conectada com um IP 10.8.0.6. A última linha do log, entretanto, mostra isto:
Fri Sep 13 16:03:24 2013 Initialization Sequence Completed With Errors ( see http://openvpn.net/faq.html#dhcpclientserv )
Fri Sep 13 16:03:24 2013 MANAGEMENT: >STATE:1379102604,CONNECTED,ERROR,10.8.0.6,50.242.184.133
Várias pesquisas no Google revelam que eu precisava executar o aplicativo com privilégios de administrador. Estou fazendo isso e até tentei executar o aplicativo no modo de compatibilidade do Windows Vista. Por alguma estranha razão, o Windows XP não é uma opção que posso selecionar. Tem algo que estou perdendo? Minha configuração - sem as duas linhas que falei anteriormente - funciona perfeitamente no Windows XP. Além disso, funciona bem na máquina Windows 7 se eu usar o cliente OpenVPN (e não a GUI do OpenVPN).
Espero que alguém já tenha enfrentado esse problema antes e possa oferecer alguma ajuda. Obrigado.
Responder1
Tem a ver com permissões. Execute como administrador com o UAC desabilitado e funcionará. Você tem que desabilitar o UAC.
Ou você pode executar a VPN como um serviço e ela se conectará e adicionará rotas corretamente.
modo de compatibilidade
Isso não fará diferença.
Responder2
Olá a todos,
Estou realmente grato pela ajuda de Zoredache e David Mackintosh. Vocês dois ofereceram sugestões que me apontaram na direção certa.
Desabilitar completamente o UAC funcionou para mim, bem como modificar o binário openvpn-gui para sempre ser executado como administrador para todos os usuários. Infelizmente, porém, não me senti confortável em ter meus usuários desabilitando o UAC permanentemente - ou com a reinicialização obrigatória que deve ser feita sempre que o UAC for habilitado ou desabilitado. Isso significava uma reinicialização cada vez que eles usavam a VPN e se desconectavam dela.
Então procurei soluções adicionais e encontrei várias que sugeriam desabilitar o UAC apenas para administradores. Como a maioria dos meus usuários que precisam de VPN geralmente são administradores locais em seus laptops, imaginei que essa solução funcionaria. Então eu testei e funcionou. Aqui está minha solução final.
Criei dois arquivos .reg separados para modificar o registro do sistema da seguinte maneira:
ARQUIVO DE REGISTRO nº 1: Desativar UACforAdmin
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"ConsentPromptBehaviorAdmin"=dword:00000000
ARQUIVO DE REGISTRO #2: EnableUACforAdmin
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System]
"ConsentPromptBehaviorAdmin"=dword:00000002
Para que isso funcionasse, tive que executar a GUI do OpenVPN como administrador. Graças à sugestão de David Mackintosh, modifiquei o arquivo exe para sempre rodar como administrador para todos os usuários. Agora, o tempo era fundamental - eu precisava ter certeza de que o UAC estava desativado antes mesmo de a conexão VPN ser iniciada. Felizmente, a GUI do OpenVPN suporta a criação de um script de pré-conexão simplesmente criando um arquivo em lote com o mesmo nome do arquivo de configuração com um sufixo de_pré.
Então criei meu script de pré-conexão para chamar meuDesativar UAC para Adminroteiro da seguinte forma:
regedit.exe /s DisableUACforAdmin.reg
Por fim, criei um script down para reativar o UAC quando o túnel VPN for desconectado - retornando assim a máquina do usuário ao estado original.
Aqui está o que eu fiz:
regedit.exe /s EnableUACforAdmin.reg
Com isso, a GUI do OpenVPN funciona sem reclamações, as rotas são enviadas do servidor e configuradas corretamente no cliente Windows 7. Eu testei isso em várias máquinas com Windows 7 e tudo funcionou. Fazendo dessa forma, evito a reinicialização obrigatória que acompanha a desativação do UAC. Obrigado mais uma vez por toda a ajuda, espero que isso beneficie alguém com o mesmo problema que encontrei.
NOTA FINAL: Percebi que a GUI do OpenVPN fornecida emhttp://openvpn.senão gosta de algumas das diretivas no arquivo de configuração (comosegurança de scriptoudireção-chave) e não serão iniciados a menos que você os comente. Isso pode não ser verdade para todos, mas tive que usar a GUI OpenVPN que vem comversão 2.3.2 do OpenVPN
Responder3
Para que funcione para mim, vou para o binário openvpn-gui, selecionoPropriedades, selecioneAlterar configurações para todos os usuáriose clique emExecute este programa como administradornaquela janela. Pare e reinicie o Openvpn-gui.
Responder4
Pode ou não se aplicar à versão em questão: OpenVPN com Sophos SSL VPN também encontrou um problema em que o serviço "OpenVPN Interactive Service" não estava iniciando com êxito na inicialização. A máquina cliente era um Lenovo Thinkpad T530 e vinha com serviços pré-instalados da Lenovo que estavam causando o problema.
Serviços em questão: Fastboot HyperW7
O problema foi menos pronunciado após a execução das atualizações da Lenovo e Intel, mas ainda ocasionalmente o "OpenVPN Interactive Service" atingia o tempo limite ao inicializar o computador.
Se você desabilitar ambos os serviços Lenovo acima, o "OpenVPN Interactive Service" poderá ser iniciado. Parece que os programadores da Lenovo mexendo com o que é permitido iniciar e o que pode ser pausado na inicialização não funcionam bem com o OpenVPN.
Uma vez que o "Serviço interativo OpenVPN" possa ser executado corretamente na inicialização, ele será capaz de permitir que o OpenVPN confirme as rotas mesmo com um usuário padrão conectado.
Não há necessidade de "Executar como administrador" ou de elevação de privilégios de uma conta de usuário.