VPN (III)

En la entrada anterior, se explicó como instalar un servidor openVPN en Ubuntu. En esta ocasión, le toca el turno al cliente. Voy a explicar como instalar el cliente y que se conecte automáticamente cada vez que se encienda el ordenador. Va a tener la particularidad de que aunque el servidor vpn esté apagado, va a intentar conectarse periódicamente de forma transparente para el usuario hasta que consiga su objetivo.

En primer lugar, como siempre con permisos de root, instalamos openVPN

apt-get install openvpn

creamos un directorio (/etc/openvpn/keys/) donde vamos a almacenar los certificados que nos proporcione el administrador de la red. Si recordáis el ejemplo anterior, aquí debemos copiar los ficheros ca.key, adolfo.crt, adolfo.key y ta.key

Editamos o creamos el fichero /etc/openvpn/openvpn.conf donde pondremos el siguiente contenido

client
remote direccion-servidor
ca /etc/openvpn/keys/ca.crt
cert /etc/openvpn/keys/adolfo.crt
key /etc/openvpn/keys/adolfo.key
cipher DES-EDE3-CBC
comp-lzo yes
dev tap
proto udp
tls-auth /etc/openvpn/keys/ta.key 1
nobind
auth-nocache
persist-key
persist-tun
user nobody
group nogroup
ping 15
ping-restart 30
ping-timer-rem

Y por ultimo, editamos el fichero /etc/default/openvpn para indicarle que conexión o conexiones queremos iniciar cuando se inicie el servicio.

He descomentado la línea AUTOSTART=”all” que indica que inicie todas las conexiones.

3 thoughts on “VPN (III)

  • […] la siguiente entrada, explicaré como configurar el […]

  • Adolfo dice:

    Esta configuración hace que podamos conectar con el servidor sin poder saltar al resto de la red, para poder quitar esta restricción hay que habilitar el port forwarding en nuestro Ubuntu server creando un script que lo va a hacer por nosotros, yo lo he llamado iptables y lo he dejado con privilegios de ejecución en /usr/bin/

    # Habilitar reenvío de paquetes
    echo 1 > /proc/sys/net/ipv4/ip_forward

    # Habilitar NAT hacia la red 10.9.0.0/24
    /sbin/iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -d 192.168.0.0/24 -j MASQUERADE

    También he creado un script de arranque manual para el openvpn que ejecuta el fichero iptables y después arranca el servicio del openvpn (ojo, el openvpn arranca por defecto con el servidor, antes de usar esto deberiais dejarlo parado al arranque, pero para gustos los colores)
    El fichero se llama ovpn y tiene permisos de ejecución, lo he ubicado en /usr/bin

    /usr/bin/iptables
    service openvpn start

  • fran dice:

    Gracias Adolfo por tus aclaraciones.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *