Puedes obtener mas informacion del tema en los siguientes enlaces
--Que es IPsec ???
--Configuracion de IPsec en Linux con Racoon
--Configuracion de IPsec Windows - Windows
Para empezar con nuestra configuracion instalamos el siguiente paquete# apt-get install ipsec-tools
Ahora editamos el archivo que tiene la configuracion y lo encontramos en la siguiente ruta por defecto /etc/ipsec-tools.conf# pico ipsec-tools.conf
este es nuestro archivo por defecto. #!/usr/sbin/setkey -f
# NOTE: Do not use this file if you use racoon with racoon-tool
# utility. racoon-tool will setup SAs and SPDs automatically using
# /etc/racoon/racoon-tool.conf configuration.
## Flush the SAD and SPD
# flush;
#spdflush;
## Some sample SPDs for use racoon
# spdadd 10.10.100.1 10.10.100.2 any -P out ipsec
# esp/transport//require;
# spdadd 10.10.100.2 10.10.100.1 any -P in ipsec
# esp/transport//require;
#
Ahora procedemos a agregar las siguientes lineas para nuestra configurar de IPsec. comenzamos descomentando las siguientes lineas# flush;# spdflush;Luego procedemos con nuestra configuracion. las direcciones ip que apareceran a continuacion son las de nuestra maquna local y la de la maquina con la que realizaremos las pruebas.10.3.16.101 maquina local.10.3.16.69 otra maquina.la palabra entre comillas "alexandra$analz-"; sera la clave que tendran los dos equipos, que para este caso sera de 128 bits(16 catacteres) ya que utilizaremos el protocolo md5.Agregamos las siguientes lineas# Some sample SPDs for use racoon
# add 10.3.16.101 10.3.16.69 ah 0x200 -A hmac-md5 "alexandra$analz-";
# add 10.3.16.69 10.3.16.101 ah 0x300 -A hmac-md5 "alexandra$analz-";
como utilizaremos el protocolo AH lo especificamos en las siguientes lineas
# Políticas de seguridad
# spdadd 10.3.16.101 10.3.16.69 any -P out ipsec
# ah/transport//require;
#spdadd 10.3.16.69 10.3.16.101 any -P in ipsec
# ah/transport//require;
Luego guardamos los cambios y recargamos IPsec asi:# setkey -f ipsec-tools.conf
Procedemos a realizar el ping a otra maquina que en nuestro caso es la 10.3.16.69
en la otra maquina ejecutas el siguiente comando.# tcpdump -i eth1 (interfaz) que estemos utilizandoal ejecutar este comando nos dimos cuenta que el ping hacia la peticion pero no recibia respuesta entonces procedimos a ejecutar el siguiente comando# setkey -D y veras la siguiente informacion.10.3.16.69 10.3.16.101
ah mode=transport spi=768(0x00000300) reqid=0(0x00000000)
A: hmac-md5 616c6578 616e6472 6124616e 616c7a2d
seq=0x00000000 replay=0 flags=0x00000000 state=mature
created: May 22 07:49:54 2008 current: May 22 09:11:18 2008
diff: 4884(s) hard: 0(s) soft: 0(s)
last: May 22 08:00:29 2008 hard: 0(s) soft: 0(s)
current: 141376(bytes) hard: 0(bytes) soft: 0(bytes)
allocated: 2209 hard: 0 soft: 0
sadb_seq=1 pid=6929 refcnt=0
10.3.16.101 10.3.16.69
ah mode=transport spi=512(0x00000200) reqid=0(0x00000000)
A: hmac-md5 616c6578 616e6472 6124616e 616c7a2d
seq=0x00000000 replay=0 flags=0x00000000 state=mature
created: May 22 07:49:54 2008 current: May 22 09:11:18 2008
diff: 4884(s) hard: 0(s) soft: 0(s)
last: May 22 07:50:40 2008 hard: 0(s) soft: 0(s)
current: 300888(bytes) hard: 0(bytes) soft: 0(bytes)
allocated: 2786 hard: 0 soft: 0
sadb_seq=0 pid=6929 refcnt=0
Entonces procedimos a comparar con el otro equipo las primeras dos lineas de cada uno de los parrafos
10.3.16.69 10.3.16.101ah mode=transport spi=768(0x00000300) reqid=0(0x00000000)10.3.16.101 10.3.16.69ah mode=transport spi=512(0x00000200) reqid=0(0x00000000)entonces nos dimos cuenta que nuestro compañero tenia tenia el siguiente numero en parrafos diferentes
10.3.16.101 10.3.16.69 ah mode=transport spi=512(0x00000200) reqid=0(0x00000000)10.3.16.69 10.3.16.101 ah mode=transport spi=768(0x00000300) reqid=0(0x00000000)
procedimos a cambiar el numero (0x00000xxx) para que quedara igual a nuestro otro equipo.luego guardas cambios, recargas ipsec y realizar de nuevo el ping y ya responde de la siguiente manera, tambien veras que aparece que estamos utilizando el protocolo AH.# setkey -f ipsec-tool.conf# ping 10.3.16.69 y la otra maquina ejecuta el siguiente comando.# tcpdump -i eth1(interfaz) que estemos utilizando. Peticion y respuesta del ping

CONFIGURACION CON ESP
En este parrafo lo que hacemos es cambiar -A por -E y el protocolo md5 por 3des-cbc, este protocolo utiliza una clave de 168 bits (24 caracteres) "qazxswedcvfrtgbnhyujmiko";
# Some sample SPDs for use racoon
add 10.3.16.101 10.3.16.69 esp 0x200 -E 3des-cbc "qazxswedcvfrtgbnhyujmiko";
add 10.3.16.69 10.3.16.101 esp 0x300 -E 3des-cbc "qazxswedcvfrtgbnhyujmiko";
En este segundo parrafo solo cambiamos ah por esp
# Políticas de seguridad
spdadd 10.3.16.101 10.3.16.69 any -P out ipsec
esp/transport//require;
spdadd 10.3.16.69 10.3.16.101 any -P in ipsec
esp/transport//require;
recargamos y realizas el ping y veras que ya estas utilizanso ESP.