lunes, 26 de mayo de 2008

CONFIGURANDO IPsec LINUX - LINUX

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 utilizando

al 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.101
ah mode=transport spi=768(0x00000300) reqid=0(0x00000000)

10.3.16.101 10.3.16.69
ah 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.


No hay comentarios: