domingo, 15 de enero de 2012

Como conectar a VPN Cisco con "vpnc" usando certificado "crt"

Primero instalamos el cliente linux para VPNs Cisco "vpnc" y el material necesario:

sudo apt-get install libgcrypt11 libgcrypt11-dev libssl-dev libssl0.9.8 vpnc resolvconf

Comprobamos que se ha instalado con soporte SSL:

vpnc --version

Si aparece la siguiente linea vpnc se ha instalado con soporte SSL:

Supported Auth-Methods: psk psk+xauth hybrid(rsa)

Copiamos el fichero .crt a /etc/vpnc:

sudo cp foo.crt /etc/vpnc

Si disponemos de fichero .pcf de configuracion debemos convertirlo a fichero .conf para vpnc, para lo cual necesitamos cisco-decrypt.c y pcf2vpnc:

wget http://www.joepcremers.com/wordpress/wp-content/files/cisco-decrypt.c

gcc -Wall -o cisco-decrypt cisco-decrypt.c $(libgcrypt-config --libs --cflags)

chmod +x cisco-decrypt

sudo cp cisco-decrypt /usr/bin

wget http://svn.unix-ag.uni-kl.de/vpnc/trunk/pcf2vpnc

sudo cp pcf2vpnc /usr/bin

pcf2vpnc foo.pcf > foo.conf

sudo cp foo.conf  /etc/vpnc/

Añadir las siguientes lineas al fichero foo.conf:

sudo vi /etc/vpnc

IKE Authmode hybrid
CA-File /etc/vpnc/foo.crt

Ejemplo de fichero .conf:

## generated by pcf2vpnc
IPSec ID foo
IPSec gateway vpn.foo.com
IPSec secret dajhfñakjedhfñEWU1VJdsañj

IKE Authmode hybrid
CA-File /etc/vpnc/foo.crt

## To add your username and password,
## use the following lines:
# Xauth username <your username>
# Xauth password <your password>