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:
luego nos aparecerá el logotipo en la barra de tarea clic derecho le damos a conectar
nos pide usuario y contraseña que será el del sistema y clic en conectar.
podemos 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.
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 |
y 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