Instalación de Clientes OpenVpn

Como ya explicamos en otro artículo la instalación de OpenVpn server. Ahora explicaremos como instalar y configurar un cliente en linux y windows.

a. Debian/Ubuntu

1. Ejecutar:$ apt-get install openvpn

a.1 Fedora/RedHat/CentOS

2. Ejecutar:$ yum -y install openvpn 

b. Windows:

1. Ingresar https://ip-del-servidor:943

2. Autenticarse con el servidor

3. Descargar el instalador

4. Ejecutar el instalador

5. Ejecución del Cliente:

a. Linux:

1. Ingresar a https://ip-del-servidor:943

2. Autenticarse con el servidor

3. Descargar la configuración del Usuario

4. Ejecutar como root el comando:

$ /usr/sbin/openvpn –config ruta/client.ovpn

b. Windows:

1. Ingresar a https://ip-del-servidor:943

2. Autenticarse con el servidor

3. Presionar Conectar

Conectarse desde un cliente windows

Nos vamos a inicio y abrimos OpenVPN Connect:

inici

luego nos aparecerá el logotipo en la barra de tarea clic derecho le damos a conectar

aplicativo

nos pide usuario y contraseña que será el del sistema y clic en conectar.

aplicativo2podemos observar que luego de unos segundos estamos conectados para comprobarlo nos vamos al terminal de windows y ejecutamos el comandó ipconfig  y vemos que nos ha dado una ip.

terminal

 Conectarse desde un cliente linux

Para la configuración de clientes Linux con OpenVPN utilizaremos el modo texto [terminal] y el arranque a través de un bash.

Preparativos y configuración

En nuestro servidor generamos las claves para los clientes ejecutando este comandó:

  • ./build-key openvpn-cliente1

rellenaremos los campos con la información del cliente esto generara los siguientes ficheros: 

openvpn-client1.crt

openvpn-client1.key

openvpn-client1.csr

A continuación deberá copiar los siguientes archivos:

  • ca.crt 
  • openvpn-client1.crt
  • openvpn-client1.key
  • openvpn-client1.csr

Estos fueron creados en el directorio /etc/openvpn/easy-rsa/2.0/keys y deberán ser colocados en la máquina cliente dentro del directorio OpenVPN.

Supongamos que las llaves la tenemos en el directorio /tmp/llaves, debemos copiar estas en el siguiente directorio/etc/openvpn/keys, para esto hay que crearlo antes.

#mkdir /etc/openvpn/keys
#cp -R /tmp/llaves/* /etc/openvpn/keys/
#cd /etc/openvpn/

A continuación se creará un archivo de configuración cliente para el OpenVPN dentro del directorio /etc/openvpn/ con el nombre de cliente1-udp-1194.ovpn.

Tendrá la siguiente configuración:

client
dev tun
proto udp
remote dominio-o-ip.del.servidor.vpn 1194
float
resolv-retry infinite
nobind
persist-key
persist-tun
#------ SECCION DE LLAVES --------
ca ca.crt
cert cliente.crt
key cliente.key
ns-cert-type server
#---------------------------------
comp-lzo
verb 3

Ahora necesitamos insertar el módulo [tun] para controlar los interfaces /dev/net/tunX que se necesiten en le sistema para el servicio OpenVPN:

Cargamos el módulo:

#modprobe tun

habilitamos el IP forwarding:

#echo 1 > /proc/sys/net/ipv4/ip_forward

Comprobamos que tenemos /dev/net/tun, si no existe lo creamos con:

#mknod /dev/net/tun c 10 200

Para la ejecución del cliente OpenVPN puede utilizar el siguiente guión y guardarlo con el nombre de [cliente1], tendrá el siguiente contenido:

#!/bin/bash
#
#– Variables —
RUTACONFIG=”/etc/openvpn/”
NOMCONFIG=”cliente1-udp-1194.conf”
#
#– 
Ejecución de la configuración para el servicio OpenVPN
#
/usr/bin/openvpn $RUTACONFIG./$NOMCONFIG
#
exit 0

Y damos los permisos de ejecución correspondientes:

#chmod +x iniciovpncliente

Si desea ejecutar el servicio VPN al inicio del sistema (arranque), puede colocar lo siguiente dentro del archivo /etc/rc.local

#inicia la configuración OpenVPN$ sudo openvpn /etc/openvpn/client.conf

Lo que debería acabar dándonos esta línea:

Initialization Sequence Completed

En el momento en el que esto pase ya estaremos navegando a través de la VPN. Para comprobarlo podemos dirigirnos a uno de esos cientos de sitios web donde nos dicen nuestra IP pública o bien:

$ traceroute www.google.es

Que debería mostrarnos la ruta de nuestro paquete por la red a la que nos hemos conectado.

OpenVPN carga las configuraciones que encuentre en /etc/openvpn al arranque y si pusimos passwords en los certificados no los pedirá en consola al conectarse.

Para controlar el servidor de openvpn:

$ /etc/init.d/openvpn [start|stop|restart]

Una forma más fácil de realizar todo esto, podemos optar por realizar este mismo proceso desde una GUI gracias al complemento para Network-Manager de OpenVPN.
Para ello instalaremos dicho complemento con:

$ sudo apt-get install network-manager-openvpn-gnome

A partir de ahí podemos crear nuestra conexión OpenVPN desde el típico panel de conexiones de red y después gestionar la conexión vía applet que incluya nuestro entorno de escritorio.

Si optamos por este método debemos tener en cuenta de que al ejecutarse Network-Manager sin permisos de root este no puede acceder a la carpeta /var/ssl/private ni leer el certificado privado, ya que ni la carpeta ni el archivo en si disponen de permisos de lectura más que para root, por lo que habría que cambiar la ubicación de los certificados y ubicarlos en nuestro /home y además cambiar los permisos de Nombredeusuario.key

Michelle López

Enterprise Consulting & Training

Share