Os presento esta guía para conectar nuestros móviles con Android Eclair 2.1 y Android Froyo 2.2 a nuestro servidor VPN SSL/TLS que hemos hecho en nuestra casa, ya sea usando un ordenador de servidor o el propio router con un firmware de terceros, para acceder a recursos compartidos como si estuviéramos en RED LOCAL y también para navegar con la mayor seguridad posible (anti-sniffers y cosas por el estilo).

***Necesario acceso ROOT en el móvil.

Probado en SuperEclair 8.8 By Superatmel (Eclair 2.1 modificada).

Archivos Necesarios

Al crear los clientes, deberéis recordar poner al menos 3 clientes (si vas a tener 3 clientes conectados simultáneamente).

Cuando tengamos todos los certificados/llaves:

ca.crt
cliente1.crt
cliente1.key
ta.key (en el caso de que hayáis elegido TLS/AUTH una firma HMAC adicional para todos las negociaciones SSL/TLS para la verificación de la integridad).
client.ovpn o client.conf

Nota: en GNU/Linux recordad que el fichero de configuración es con extensión .CONF, en Windows es .OVPN pero en Android VALE CUALQUIERA DE LAS DOS EXTENSIONES.

Ya sabéis como configurar el client.conf o client.ovpn, los archivos ca.crt y los demás recomiendo poner la ruta completa del archivo (a poder ser).

Lo primero que hacemos en /sdcard/ (tarjeta de memoria) es crear la carpeta openvpn

De tal forma que tenemos: /sdcard/openvpn

Esta es la ruta que debemos poner a los ca.cr, client.key, etc.

Nos bajamos estos dos programas:

OpenVPN Installer

OpenVPN Settings

OpenVPN Android

Configuración OpenVPN Installer

Cuando abráis el programa y le deis a Install, os dirá que necesita ser ROOT, instaláis el programa en System/bin/openvpn cuando os lo pida.

OpenVPN Android

Configuración OpenVPN Settings

Al crear la carpeta openvpn en /sdcard/ automáticamente al abrir OpenVPN Settings os lo pondrá:

OpenVPN Android

Conexión

Marcamos las dos casillas de OpenVPN Settings.

OpenVPN Android

Esperamos un poco mientras conecta y obtiene dirección IP, cuando se conecte nos aparecerá esto:

OpenVPN Android

y en el programa aparecerá la IP del servidor VPN, y como tenemos TUNnelling pues una IP de otro rango (interna).

OpenVPN Android

La conexión es automática si lo tenemos activado en OpenVPN Settings, si no queremos que se conecte a la VPN (porque estamos en una conexión segura) podemos desactivarlo de ahí, aseguráos de conectaros a la VPN antes de sincronizar los datos con Google, que aunque viajen por SSL, es mucho más seguro ir por la VPN (y luego desde ahí por SSL.

Manual Open VPN para Nexus S con versión de Android Gingerbread

Publicado por Sergio De Luz el 03 octubre 2010 , actualizado el 19 abril 2013

  • karmacoma

    Hola Sergio

    estoy intentando hacerlo en un Xperia X8 y todo me va aparentemente bien pero cuando intento que se conecte me falla diciendo “FATAL: cannot allocate TUN/TAP dev dynamically” la cosa es que he visto googleando que puede ser que me falte el ficherillo tun.ko y hacer el insmod en el teléfono si no lo incluye el kernel.

    He buscado pero no consigo que me funcione ningún tun.ko para el SW de mi teléfono, el 2.1 original. ¿Sabes o tienes alguno que sepas que pueda funcionar? ¿Hay alguna otra manera de que el SO defina los dispositivos tun?

    mil gracias de antemano

    • Instalaste los 2 programitas que digo en el manual y no te funciona?

      Es que creo que debes ser root para que el propio programa pueda cambiar el enrutado.

      • karmacoma

        hola Sergio

        gracia por responder tan rápido
        si, instalé los dos. Creo que como root. Cuando dices “cambiar el enrutado”, ¿a qué te refieres?

        saludos

        • Cuando activas la VPN, las rutas internas del móvil cambian, no tienes que tocar tú nada porque se hace automáticamente, pero debes ser ROOT para poder hacerlo.

          • karmacoma

            hola,

            entiendo que debo serlo porque me aparece un mensaje del “superuser” para garantizar el acceso al openvpn installer….

            a lo mejor te refieres a otra cosa pero desde luego toda la autenticación va bien y es en el momento de abrir el TUN cuando casca…

            saludos

          • Creo que no tienes el módulo de TUN en el kernel de tu Android.

            Echale un ojo a esto: http://forum.xda-developers.com/showthread.php?t=758300

            Yo no he tenido esos problemas porque tengo una ROM cocinada y sí vendría instalado…por eso ando perdido, porque no he tenido este problema.

            Mira a ver si puedes con esa información que te he pasado.

        • rr

          ??

  • karmacoma

    Nada, no hay manera, el tun.ko más parecido que encuentro es el del x10 y no me funciona…. Alguna recomendación de ROM “cocinada”

    saludos y gracias de nuevo

    • Pasate por el foro de http://www.movilzona.es a ver si pueden ayudarte, es que yo tengo una HTC Magic y se Sony ni idea… 😉

      • karmacoma

        Bueno, finalmente he encontrado un tun.ko compatible con la 2.1 original del X8. Se trata de la que se incluye en el mod xCyanogenShakira – gingerbread – v3. Si quieres pego el enlace y una pequeñas instrucciones.

        Saludos

        • Sí, ponmelo para futuros usuarios 😀

          Gracias!!!

          • karmacoma

            Ok, no tenía claro si se podían poner links a otros foros ;-P

            Este es el link al post desde el que se puede descargar la mod de la que hablo arriba

            http://forum.xda-developers.com/showthread.php?t=1044876

            Os bajais el mod, buscais en /system/lib/modules y copiais el tun.ko a vuestro X8. En principio debería ser al directorio /system/lib/modules pero realmente no hace falta ya que el OpenVPN Settings te permite dar el path del fichero.

            Si lo guardais por ejemplo en el /sdcard/openvpn, arracais el OpenVPN Settings, vais a “advanced” – “TUN module settings”, en la primera opción (Load Module using) seleccionais “insmod” y en la segunda (Path to tun module) escribís el path /sdcard/openvpn/tun.ko

            Si lo teneis todo bien configurado debería funcionar. Como experiencia personal tened cuidado al poner el remote en el client.conf que igual no estais poniendo la ip de vuestro cable modem/adsl router

            Espero que este claro

            Saludetes

          • karmacoma

            Estoy pensando que si quieres te puedo mandar el fichero en cuestión, para ahorrar pasos a la hora de bajarlo y eso, no me cuesta ningún trabajo así que ¡tu mandas!

          • No es necesario, lo has explicado perfectamente y valdrá a otros usuarios.

            Muchas gracias 😀 😀

          • Miguel Garcia

            que tal

            karmacoma

            me podrias mandar el tun.ko por correo?

            Gracias

  • Pingback: SSH Tunneling en Android : Instala y configura SSH Tunneling en Android : Redes Zone : Portal sobre telecomunicaciones y redes()

  • Jaime Alberto

    Hola, yo ya hice todo, solo que al conectarme no me asigna IP del servidor, me dice “Conectado a XX.XX.XX.XX as “, osea que no me asigna una direccion IP. El servidor OpenVPN ya esta probado, con un clinete en Windows y si asigna IP.

    ¿Cual podria ser el problema?

    Saludos y Muchas Gracias.

  • PEDRO GONZALEZ

    tengo un celular chino android 2.2.1, que se le agrego ip y no funciona el wifi , adicional a la falla el wifi aparece con error no he podido borrar en el IP ESTATICA DIECCION IP, PUERTA DE ENLACE, MASCARA DE RED, DNS 1 Y DNS2 . AGRADEZCO ME AYUDEN PARA ACTIVAR EL WIFI NUEVAMENTE….?

  • Rob

    Para arreglar el problema de “FATAL: cannot allocate TUN/TAP dev dynamically”

    Se puede descargar uno el archivo aquí.

    https://play.google.com/store/apps/details?id=com.aed.tun.installer&hl=es

  • Rob

    Buenas tengo un par de dudas.
    Instale todo el servidor en windows, que me conecta perfectamente. El cliente en android que me indica que tb esta conectado. Pero no tengo claro que este redireccionando el trafico por la vpn por algunos motivos.

    – Aquí, en la pantalla http://www.redeszone.net/wp-content/uploads/openvpn_android5.png el trafico de subida y bajada no varia, y se supone que deberia subir a medida que haces peticiones.
    Podrias comprobar si el tuyo sube?

    – Si hago un trace route con algun programa, nunca me indica como parte de la ruta que el paquete siguio la ip de donde esta el servidor openVPN. (Lo probe desde una red publica, supuestamente usando la vpn).

    – Esta no se fijo si es, pero la comento igualmente. Si veo en alguna web cual es mi IP, me sale la IP publica de la red donde estoy conectado, y entiendo que deberia salir la IP publica de la red donde tengo instalado el servidor openVPN.

    Y gracias por el tutorial.

    • Eso es porque no tienes el módulo TUN (Tunneling) en el Android, porque como bien dices, debe pillar la IP del servidor OpenVPN. Revisa el tema del módulo TUN.

  • Ro

    Buenas
    Me surgieron varias dudas, tengo un Xperia Play 2.3.4, este me sirve? o forzosamente debo ser 2.2 o 2.1? necesito alguna ROM en especial?

    De antemano gracias (:

    • Es válida para cualquier versión siempre y cuando puedas instalar el tun.ko en el terminal 🙂 Es recomendable ser ROOT; yo tengo la 2.3.7 y perfecto (root).

  • argentino

    hola mi problema es que realizo todo el funcionamiento correcto pero cuando quiero conectar me dice connect to wifi before link to vpn server si me pueden ayudar gracias

    • Estás conectado a internet ya sea por 3G o Wi-Fi?

  • Anónimo

    Ola mi problema es:hago todos los pasos y todo va bien hasta q m tengo q registrar y lo ago pero m marca error con mi direccion y sí la ingreso correctamente sólo m falta eso para q m den el pasword me. Tendras respuesta para esto nunca

  • Tavo Colombia

    Umm… Si les interesa una solución alternativa… yo instalé DroidVPN desde la Play Store y luego me inscribí en la página http://droidvpn.com e inicié la aplicación DroidVPN con mi correo y el pass que me dió la página y se conectó!… ahora me funciona todo por 3G sin restricciones 🙂 llevo 10 minutos usando esto y por ahora está muy estable.

    • Ya pero esto está orientado a crearte tú el servidor VPN y administrar tú todo lo que pasa por él…es más seguro ya que eres tú el que sabe lo que haces 😀

  • Elkin Colombia

    Hola, segui el tutorial al pie de la letra y aun no me puedo conectar…cuando activo la vpn, me solicita usuario y clave. Las ingreso correctamente y se queda en estado “Connecting”.
    Que puedo hacer.

    Gracias.

    • Tienes el servidor VPN configurado correctamente?

      • Elkin Colombia

        Si, de hecho al servidor nos conectamos por pc normales, e incluso desde otro telefono android siguiendo los pasos…De los 3 telefonos con los que se ha intentado, solo 1 no conecta se queda esperando despues de ingresar usuario y clave. Y aun no se porque.

        Gracias.

        • Elkin Colombia

          Aparentemente ya resolvi el problema de que la vpn no se conectaba, era porque no tenia instalado “BusyBox”, pero ahora apenas conecta, se reinicia el telefono..una incognita mas… :S

  • yahir

    hola en donde aparte de market y de google play puedo descargar los siguientes programas openvpn settings openvpn installer y tun.ko installer porfavor y gracias por el apollo. 🙂 (y)

  • yahir

    y busybox

  • carlos

    saludos no pude descargar los archivos, no los tendra para descargarlos por aqui??? gracias

  • shinigami

    oye men cres k sirva para mexico ?

  • Pingback: KIT de supervivencia básico para el verano: Internet everywhere!()

  • Pingback: VPN’s « Hacksturias.net()

  • Pingback: Controla remotamente tu equipo desde cualquier lugar del mundo : Manuales de ayuda disponibles()

  • Pingback: OpenVPN en Android : Instalación y configuración de OpenVPN en Nexus S con Android Gingerbread()

  • Pingback: La Policía Nacional advierte sobre los peligros de conectarnos a redes WiFi ajenas()

  • alexander

    Mi celular es un lenovo k900 y mi play store no me da opcion para intalar open vpn conect porque yo lo tengo pero el usuario se me desconfiguro y no se como hacerlo a que funcione otra vez y tampoco no lo puedo intalar le agradezco su ayuda

    • Hola,

      Una cosa es que el usuario se te desconfigure y otra que no puedas instalarlo de nuevo, bajate otra vez la aplicación como si fueras a instalarla por primera vez, te tiene que dejar sin problemas.

  • alexander

    Porque la play store no me da opcion para intalarlo nuevamente openvpn conect que debo hacer

  • Hola sergio

    amigo podrias pasar el link de la descarga

  • k

    K son los clientes no entiendk como los creo

  • Carlos chaves

    Hola mi pregunta es como puedo hacer para que el servidor de opnvpn conecte rápido pues la mera verdad solo se que da autenticado y des pues de 3 horas conecta y aveces se tarda mas de 3 días para conectar mi pregunta es que comando le pongo para que conecte rapido de antemano muchas gracias espero tu respuesta

    • La conexión debería tardar 2 segundos en hacerte o no realizarse nunca. ¿Cómo tienes configurado el servidor y cliente? Necesito los archivos .CONF o .OVPN y también qué software estás usando en Android y qué sistema operativo tiene el servidor OpenVPN.

  • geovani garcia

    necesito ayuda!! en donde debo crear los clientes que me pide al principio

  • Oscar B.

    Hola.
    Lo tengo todo instalado y me funciona. El unico problema es que cuando esta iniciado el tunel en el smartphone, solo me funciona la conexion del tunel y no me navega por internet (por ejemplo, no funciona el Google Maps o el Waze). Para que me funcionene, tengo que desconectar el tunel. ¿alguna idea porque ocurre esto?

    • Porque en el servidor VPN no habrás configurado la redirección a Internet, y solo tienes acceso localmente, mira también la ruta estática en el router.

  • hhhh

    Hola saves Que soy nueva y nose como se ase y algien me dio pasos para descargar open vpn for android y me dio una cuenta y todo pero ne estafo y quiero yo crear un vpn pero no entiendo algien me puede explicar porfavor