publikaccion @publikaccion

viernes, junio 06, 2008

.: Cliente Cisco VPN en Ubuntu Gutsy



Logotipo de Cisco

Debido a que a veces me conecto desde casa al entorno de Desarrollo o de Preproducción o de Producción de la plataforma del proyecto en el que estoy trabajando, necesito tener un cliente VPN para poderme conectar a través de una VPN Cisco para la que yo recomiendo especialmente la forma en la que indico aquí el realizar la conexión.

En su momento probé con los paquetes de los repositorios vpnc, kvpnc o netwotk-su-madre, pero al final todos daban el mismo problema: no me reconocían el perfil .PCF que me asignó la empresa que nos da el soporte de housing, con lo que con esos 3 paquetes que indico anteriormente no había forma.

La mejor solución es descargarse el paquete nativo VPN de Cisco y realizar la compilación a mano, que aunque puede sonar a un poco rollo, es la mejor solución para salir del paso, y asegurar que nuestro perfil .PCF va a funcionar sin mayor problema.

Para ello nos descargamos el archivo vpnclient-linux-4.8.00.0490-k9.tar.gz de una de las siguientes localizaciones:

· http://www.longren.org/files/vpnclient-linux-4.8.00.0490-k9.tar.gz

· https://www.cnio.es/es/servicios/intranet/vpnfiles/linux/vpnclient-linux-4.8.00.0490-k9.tar.gz

Una vez hayamos descargado el tar.gz a nuestra home (por poner un directorio de ejemplo), abrimos un terminal y para descomprimir utilizamos la orden:


$ tar zxvf vpnclient-linux-4.8.00.0490-k9.tar.gz


Lo que nos creará una nueva carpeta/directorio con el nombre del archivo que acabamos de desempaquetar.

Debido a un problema que tiene esta versión de tar.gz (ya corregido), necesitamos "parchear" la versión que vamos a compilar, para lo que nos descargamos el siguiente archivo, vpnclient-linux-2.6.22.diff, de la siguiente localización

http://tuxx-home.at/projects/cisco-vpnclient/vpnclient-linux-2.6.22.diff


NOTA:


Si no aplicamos el parche, es muy probable que al proceder a instalar el cliente se nos produzcan una serie de errores al intentar instalar, dando como resultado que no se nos instalará dicho cliente en el sistema.



Este parche lo descargamos en la misma carpera que nos ha creado el desempaquetador en nuestra home y una vez haya finalizado la descarga, aplicamos el parque con el siguiente comando


$ patch < vpnclient-linux-2.6.22.diff


lo que procederá a parchearnos la aplicación que posteriormente procedemos a compilar.

Para ello (y tras haber aplicado previamente el parche tal y como se indicaba anteriormente), ejecutamos desde línea de comandos lo siguiente


$ sudo ./vpn_install


Nos realizará una serie de preguntas, a las que si no queremos modificar ningún parámentro dentro de los que nos vaya preguntando (los que muestre por defecto son correctos, que es como lo instalé yo), simplemente iremos pulsado ENTER hasta que finalice el proceso

Tras finalizar el proceso, ya tenemos nuestro cliente VPN de Cisco instalado, y ya sólo nos queda (inicialmente), proceder a su inicio en nuestro sistema, para lo que ejecutaremos desde línea de comandos


$ sudo /etc/init.d/vpnclient_init start


con esto nos aseguramos que el servicio queda ejecutado en nuestro sistema, para lo que sólo nos queda proceder a conectarnos a la red de nuestra empresa/trabajo a través de nuestro perfil PCF que tendremos almacenado en el correspondiente archivo .PCF.

Para que nos resulte mucho más cómodo, dicho archivo PCF lo tenemos que copipar en la ruta


/etc/opt/cisco-vpnclient/Profiles/


Para asegurarnos de que no dejamos datos de dicho perfil a la vista de nadie, debemos cambiar los permisos de dicho archivo, para garantizar que nosotros lo podermos utilizar y que el resto de usuarios de sistema no vean los datos (recordad que es un archivo de texto plano)


$ sudo chmod 644 /etc/opt/cisco-vpnclient/Profiles/*.pcf


Ahora sólo nos queda conectarnos; una vez hemos realizado la copia, simplemente tendremos que proceder desde línea de comandos ejecutando


$ sudo vpnclient connect


que si tenemos como nombre de prefil VPNCiscoTrabajo.pcf sería de la forma


$ sudo vpnclient connect VPNCiscoTrabajo


dicho comando se debe de lanzar desde el directorio de la instalación de nuestro cliente VPN de Cisco


Bug en el cifrado de claves CISCO en nuestro perfil PCF

Como curiosidad y tal y como habrán visto los más curiosos, los archivos PCF no dejan de ser archivos que van en claro, es decir, que son archivos planos de texto que se pueden abrir y ver con cualquier editor de textos como el vi, vim, pico, gedit, o incluso con un simple cat.

En dicho archivo además de el gateway de conexión y otra serie de datos, tenemos la clave que se nos asigna al grupo de conexión en una línea que viene a ser algo como lo siguiente


enc_GroupPwd=E07567FF4B002E59CA4E11CEDA768FAF313FB4DDFA13B0ACFB05CBE88A6668C917E8F4C4FE26302CFA99DACE97F383E8


Pues debido a una vulnerabilidad que se comenta en la siguiente paǵina Cisco Security Notice: Cisco IPsec VPN Implementation Group Password Usage Vulnerability, podemos ver en claro la clave que nos asignan para nuestra conexión VPN.

Desde el enlace correspondiente a cisco vpnclient password decoder, podremos pegar el contenido de la variable enc_GroupPwd y nos mostrará la clave "en claro" debido a la explotación que se hace de esta vulnerabilidad.

En nuestro caso obtenemos como clave en claro; @'¤ˆCŸ‘

No hay comentarios: