OpenVPN en el iPhone

Ayudanos, compartiendo en tus redes sociales!

Hoy les quiero mostrar como podemos hacer correr el OpenVPN en nuestro iPhone; si bien podemos unirnos a una red WiFi de un AP que ya se encuentre configurado con el OVPN, esta vez la idea es tratar de hacerlo correr de manera local en nuestro gadget, para así poder conectarnos a nuestra red privada por medio del 3G o el WiFi de un café.

La idea es aparte de instalar el OpenVPN en nuestro iPhone, instalarnos un driver TUN/TAP para Darwin compatible con el núcleo del iPhone.

Primero, descargamos este archivo, es el OpenVPN Patched para el iPhone.

Luego, copiamos el archivo .deb a /tmp de ahi ejecutamos:

dpkg -i openvpn_2.1_rc22_iphone_1-jfx3_iphoneos-arm.deb

Ahora instalamos el parche OpenVPN para los drivers TUN/TAP para el Darwin, para eso descargamos este archivo, descomprimimos en una carpeta y copiamos a la carpeta /tmp del iPhone y le damos:

./configure –enable-tunemu

make

Luego pasamos a la configuración del OpenVPN como lo haríamos en un Unix:

cp -r /usr/share/doc/openvpn/examples/easy-rsa

¿qué es easy-rsa? son una serie de script, que nos ayudaran a crear nuestros certificados, rsa, etc. Ahora nos tocará limpiar el directorio (/etc/openvpn/) para evitar cualquier posible confuncion con claves anteriores, de la siguiente manera:

cd /etc/openvpn/easy-rsa/
. var
sh clean-all
sh build-ca -> de esta manera crearemos nuestra CA

Ahora, a generar el certificado del servidor:

sh build-key-server servidor

Bien, pues nada ya tenemos nuestros certificados, Ok, ¿donde estan? /etc/openvpn/easy-rsa/keys ; bien, ahora vamos hacer el/los de los clientes.

sh build-key casa

Ok, ya tenemos los certificados, ahora generamos el Diffie-Hellman de la siguiente manera:

sh build-dh

Ok, ahora copiamos las claves, certificados a /etc/openvpn/ :

Servidor:

  1. ca.crt
  2. ca.key
  3. server.key
  4. server.crt
  5. dh1024.pem

Cliente/s:

  1. ca.crt
  2. casa.crt -> fueron los nombres que le dimos cuando lo generamos.
  3. casa.key

Bien, ahora viene la creación del archivo de configuración.

vi /etc/openvpn/server.conf (vi pueden instalarlo desde Cydia)

port 1194 # Puerto por defecto de openvpn
proto udp
dev tun
ca ca.crt
cert servidor.crt
key servidor.key
dh dh1024.pem
server x.x.x.x x.x.x.x # Aqui asignamos la ip, que queremos que tenga nuestra red virtual
ifconfig-pool-persist ipp.txt
push “route x.x.x.x x.x.x.x” # Red interna con la que queremos tener comunicacion
comp-lzo
user nobody
group nogroup
persist-key # Necesario para user, group
persist-tun # Necesario para user, group
keepalive 10 30
status openvpn-status.log # Logs
log openvpn.log
verb 3

Ahora el cliente:

vi /etc/openvpn/casa.conf

client
status openvpn-status.log
log openvpn.log
dev tun
proto udp
remote x.x.x.x # IP externa del servidor a donde queremos conectarnos
user nobody
group nogroup
persist-key
persist-tun
ca ca.crt
cert casa.crt
key casa.key
comp-lzo
verb 3

Listo!, se si dan cuenta es igual que instalarnos en nuestro Unix! De ahora en más, gracias a nuestra conexión a Internet sea por 3G o WiFi estaremos dentro de nuestra VPN donde quiera que estemos, para comprobar que su adaptador TUN/TAP está instalado y haya tomado la IP, ingresen al MobileTerminal del iPhone y escriben:

ifconfig

Con eso podrán ver 😀

Fuente

OpenVPN iPhone

OpenVPN parche TUN/TAP

Instalación OpenVPN en GNU/Linux

Si te gustó, no te olvides de ayudar compartiendo en las Redes Sociales!