Consideraciones Generales del Blog

Antes que nada, gracias por visitarnos, esperamos que con la informacion que posteamos aqui podamos ayudar a mucha gente. Los post tienen en color gris, los comentarios y guias, mientras que lo que esta en color amarillo son lineas de comandos u opciones que se agregan a un archivo de configuracion; y en letras verdes los comandos que ingresamos por consolas.

lunes, mayo 03, 2010

Como Cisco VPNClient en Ubuntu Lucid

Luego de pelear unas cuantas horas con distintas versiones del cliente y parches, finalmente encontre la solucion. para instalar el cliente vpn en un kernel 2.6.33+ cuando ocurre el error "Failed to make module cisco_ipsec.ko". La solucion en si esta echa para una version de kernel 2.6.30 a 2.6.32 pero a mi me funciono bien en Lucid. Paso a traducir la solucion que encontre en
http://www.lamnk.com/blog/

Una consideracion importante antes de empezar, es que aunque hagamos todo el proceso correctamente, la compilacion no sera exitosa si nos encontramos en un directorio que contiene espacios. Mi sugerencia es que hagan la instalacion desde su home que es el lugar en el que se encuentran al abrir la terminal.

Asumiendo que se tienen las librerias necesarias bajamos la version del cliente que se utiliza en esta solucion, vpnclient-linux-x86_64-4.8.02.0030-k9.tar.gz que podemos descargar abriendo un terminal y haciendo.


~$ wget http://projects.tuxx-home.at/ciscovpn/vpnclient-linux-x86_64-4.8.02.0030-k9.tar.gz

Ahora bajamos los parches necesarios

~$ wget http://lamnk.com/download/vpnclient-linux-2.6.31-final.diff

Para 64bits tambien vamos a necesitar otro parche mas

~$ wget http://lamnk.com/download/vpnclient-linux-4.8.02-64bit.patch


Extraemos el cliente

~$ tar -xvf vpnclient-linux-x86_64-4.8.02.0030-k9.tar.gz

Luego copiamos los parches al directorio de las fuentes que acabamos de crear

~$ cp vpnclient-linux-2.6.31-final.diff /Lugar donde descomprimimos el cliente/vpnclient/

~$ cp vpnclient-linux-4.8.02-64bit.patch Lugar donde descomprimimos el cliente/vpnclient/

Antes de instalar nos falta aplicar los parches. Para poder hacer esto necesitamos tener instalada la libreria patch. Si no la tienen, ejecutamos en cosola el siguiente comando:

~$ sudo apt-get install patch

Ingresamos al directorio de las fuentes

~$ cd vpnclient

Para PCs con arquitectura de 64 bit no puedo garantizar que funcione ya que no pude comprobarlo. Pero deberiamos aplicar el parche de la siguiente manera (omitan estos pasos si su arquitectura es de 32b)

~$ patch < ./vpnclient-linux-4.8.02-64bit.patch
~$ sed -i 's/^CFLAGS/EXTRA_CFLAGS' Makefile

Los siguientes pasos son comunes tanto para 64 bits como para 32.

~$ patch < ./vpnclient-linux-2.6.31-final.diff

Necesitamos editar una fuente del kernel para que la instalacion funcione correctamente.

~$ sudo sed -i 's/const\ struct\ net_device_ops\ \*netdev_ops;/struct\ net_device_ops\ \*netdev_ops;/' `find /usr/src -name netdevice.h`

Lo que hace el comando es buscar la cadena de caracteres "const struct net_device_ops *netdev_ops" y cambiarla por "struct net_device_ops *netdev_ops" en el archivo que se encuentra en "/usr/src -name netdevice.h"

Finalmente instalamos el cliente

~$ sudo ./vpn_install

Hasta aca vimos como solucionar el problema e instalar el cliente, vamos con algunos aspectos basicos para quienes lo instalan por primera ves.

Lo primero que hay que hacer es configurar nuestro perfil de conexion. El perfil esta en un archivo .pcf que suele entregarnos nuestro proveedor de red. Lo que debemos hacer es copiar este archivo a la carpeta de perfiles del cliente vpn

~$ cp MiPerfil.pcf /etc/opt/cisco-vpnclient/Profiles

Este archivo suele necesitar de permisos especiales para poder ser leido correctamente, asique asignamos los permisos correspondientes

~$ sudo chmod 444 /etc/opt/cisco-vpnclient/Profiles/MiPerfil.pcf

Ahora solo nos resta conectarnos. En ocasiones al hacerlo suele salir un mensaje indicando que el modulo no esta cargado. Para que esto no suceda reiniciamos el servicio del cliente vpn.

~$ sudo /etc/init.d/vpnclient_init restart

Y ahora si nos conectamos

~$ sudo vpnclient connect MiPerfil

Noten que el perfil lo puse sin la extension .pcf
Si el perfil es correcto, se conectara a la vpn y nos preguntara por nuestro usuario y pass del dominio al que queremos acceder.
En mi caso el cliente se ejecuta en primer plano, por lo que al cerrar la terminal finalizaria la conexion de la vpn tambien. Para que esto no suceda, dentro de la terminal pulsamos "Ctrl + Z" y luego tipeamos el comando bg para que el proceso pase a un segundo plano. Otra forma es indicandole desde un principio que el proceso se corra en segundo plano


~$ sudo vpnclient connet MiPerfil & bg

Para desconectrse del cliente solo hay que escribir el comando

~$ sudo vpnclient disconnect

En mi caso concreto, hago uso del escritorio remoto a traves de la vpn. para ello utilizo grdesktop

~$ sudo apt-get install grdesktop

El unico inconveniente con este programa es que por defecto trae el teclado numerico y la tecla Mayus deshabilitadas para el uso en el escritorio remoto. Esto puede trae problemas especialmente si nuestra pass de usuario contiene mayusculas. para solucionar esto solo debemos editar un archivo.

~$ sudo gedit /usr/share/rdesktop/keymaps/common

Al final del archivo hay dos línea que pone "Caps_Lock 0x0 inhibit" y "Multi_key 0x0 inhibit". Solo vamos a omitir estas lineas dejandolas asi (sin las comillas) "#Caps_Lock 0x0 inhibit" y "#Multi_key 0x0 inhibit". Guardamos el archivo y esos es todo.

Espero que les haya servido y no tengan que navegar tanto como yo para encontrar la solucion a la instalacion del cliente vpn

No hay comentarios.: