Reading time: 4 – 6 minutes
Com us comentava al meu anterior article OpenVPN roadwarrior (server i client linux) també podem tenir un roadwarrior de la nostre VPN funcionant amb windows. Així que us descriuré breument com configurar aquest client configuració que és pràcticament idèntica a la del client linux.
El primer que hem de fer és clar, és baixar el paquet de l’openVPN per windows, el podeu trobar a la web de l’openVPN GUI for Windows. Després de descarregar-lo el podeu instal·lar on més us agradi un cop fet això comença la part interessant.
NOTA: si llegiu la documentació de l’openVPN per windows veureu que no he col·locat els fitxers de configuració a les direccions on ell espera trobar-les. I tampoc uso la propietat de servei de windows que pot tenir el programa. Però si ho voleu fer com ‘deu mana’ només cal modificar les rutes i treballar amb el servei de windows encomptes del meu script. Però jo he preferit fer-ho així de cara a tenir un control més personal del programa. Odio la transaparència del windows, prefereixo el meu sistema. Tot són gustos.
NOTA II: els mac també tenen un client d’openVPN anomenat Tunnelblick GUI for mac OS X. Però no tinc el gust de disposar d’un mac per provar i explicar-vos com va, us haureu de conformar amb les instruccions de la seva pàgina web.
Certificiat client
Aquesta part és igual que en linux, o sigui, que podeu mirar el post que us comentava més amunt i sabreu com es fa. Un cop tinguem el certificat client i la clau privada, copiem aquests dos fitxers juntament amb el ‘root CA’ a una carpeta de windows. Jo el que he fet és crear-me una carpeta que es diu openvpn a l’escriptori i dins he creat el directori certs, on hi he copiat els tres fitxers.
Configuració del client
Dins de la carpeta openvpn que comentava dins del punt anterior he creat un fitxer de configuració que es diu local.conf amb el següent contingut:
client verb 1 remote 2.2.2.2 443 dev tun comp-lzo nobind proto tcp-client ca ./certs/cacert.pem cert ./certs/vpn-clientwin-cert.pem key ./certs/vpn-clientwin-key.pem
Com podeu veure el fitxer és pràcticament identic al de linux, només li he baixat el nivell de debug (verb 1) perquè aquí la sortida de logs es farà per consola i si pugem molt el nivell de debug ens ompla de bassura la consola.
Configuració interficie TAP/Win-32
Després d’instal·lar el paquet d’openvpn per win veureu que teniu una nova interficie de xarxa:
Aquesta interficie com podeu veure l’he renombra i l’he anomenat tun al fitxer de configuració que heu vist més amunt també uso la interficie tun i no la tap que és el nom del driver de l’interficie. La veritat no sé si hi té molt a veure això però havia tingut alguns problemes al configurar i al final m’ha quedat tal com veieu funciona.
Cal que tinguem la interficie configurada en mode DHCP, per tal de que agafi la IP de túnel automàticament:
Script de llençament
Finalment el que m’he fet és un petit script (.bat) per llençar la VPN l’he anomenat vpn.bat i el contingut és tan senzill com:
cd "H:\Documents and Settings\Oriol\Escritorio\openvpn" openvpn --config local.conf
Col·locar-me a la carpeta on hi ha tots els fitxers i després llençar l’openvpn informant-lo del fitxer de configuració que ha d’usar. És importnat indicar la carpeta de treball així el fitxer de configuració com podeu veure usa direccions relatives per referir-se als certificats. Molt més senzill que no pas haver d’escriure el ‘peazo’ directori absolut.
Depuració i proves d’ús
Aquí podeu fer les mateixes proes que amb el linux, també veureu que la interficie tun té el ‘cable de xarxa desconnectat’ fins que no es connecta l’VPN que passa a estar en mode ‘connectat’. Si feu un ipconfig /all des de la consola del windows també podreu veure la interficie tun amb la IP de túnel un cop connectada i si feu un route print les rutes estàtiques que li ha assignat el servidor de la VPN al crear-se la mateixa. Recordeu que això el servidor ho feia a través de la comanda push.
3 thoughts on “OpenVPN roadwarrior (client windows)”
No m'ha funcionat, al client em dona error.
Els certificats els he fet diferent, amb el mètode que he trovat a la documentació del openvpn, em pensava que seria igual… he inetal·lat al client el ca.crt, el cient.crt i el client.req, que veig que son diferents dels que fas servir.
Només per si veus alguna cosa ràpid, si has de googlejar ja m'espabilaré (quan tingui temps :))
Acompanyo el log aqui sota.
Salut a un dels millors blocs que conec, no només pel bloc, sinò pel tio que el fa.
Fri Nov 04 23:36:12 2005 OpenVPN 2.0.5 Win32-MinGW [SSL] [LZO] built on Nov 2 2005
Fri Nov 04 23:36:12 2005 IMPORTANT: OpenVPN's default port number is now 1194, based on an official port number assignment by IANA. OpenVPN 2.0-beta16 and earlier used 5000 as the default port.
Fri Nov 04 23:36:12 2005 WARNING: No server certificate verification method has been enabled. See http://openvpn.net/howto.html#mitm… for more info.
Fri Nov 04 23:36:12 2005 Cannot load certificate file C:\Documents and Settings\Administrador\Escritorio\openvpn\client_elserrat.crt: error:0906D06C:PEM routines:PEM_read_bio:no start line: error:140AD009:SSL routines:SSL_CTX_use_certificate_file:PEM lib
Fri Nov 04 23:36:12 2005 Exiting
Mirat l'article on explico tot el rollazo dels certificats amb calma. No és difícil és mirar-ho. Sinó aprofita aquest cap de setmana que estaré 'trankil' que la Daphne serà a Holanda en un curs i t'ajudo amb el que calgui.
Com comentes a Comesfa seria bona idea montar una entitat certificadora propia aprofitant cacert.org i simplificar la vida a tothom jo ho volia fer. Però ja sé sap sempre volem fer massa coses.
Potser el problema que tens és una mica més de concepte si vols em fas un truc en un moment i et faig un resum ràpid del tema i després ho veuràs tot súper clar.
aaaaaaaaaaa
Comments are closed.