Archivos diarios: enero 7, 2010

Tutorial de VPN a traves de ADSL

El siguiente tutorial nos servirá para configurar un Tunel VPN a traves de conexiones por modem ADSL y el paquete CIPE en una distribución de White Box Enterprise Linux (pudiendo función ar en cualquier derivado de Red Hat y en general en cualquier distribución).

Como ejemplo, se establecerá una VPN entre las redes 192.168.1.0/24 y 192.168.2.0/24.

Requisito para Servidor (red 192.168.1.0/24)

Sistema operativo basado sobre GNU/linux (WBEL o RHEL) con todos los paquetes actualizados.

Registrar tu dominio con algun servicio de nombres dinámicos como Dyndns.org e instalar un cliente que actualice los cambios de ip en dicho servicio (por ejemplo: ipcheck)

Dos tarjetas de Red

    eth0 conectada al modem ADSL (sigue los pasos para configurar un modem ADSL en Cómo configurar una Conexión ADSL)
    eth1 conectada al concentrador de la red local con dirección IP 192.168.1.254

Instalar la versión más reciente de CIPE (1.4.5-16)

	# yum -y install cipe

Habilitar el reenvío de paquetes para IP versión 4 en el fichero /etc/sysctl.conf, esto con el fin de que puedas tener comunicación entre los equipos de la red 192.168.1.0 que están detrás del servidor que servirá como puerta de enlace con los equipos de la red 192.168.2.0 con el cliente que servirá como puerta de enlace.

	vi /etc/sysctl.conf
	net.ipv4.ip_forward = 1

Generar la llave con el siguiente mandato, sin incluir el guión medio del final:

	ps -auxw | md5sum
	84425628fb0a9b2b611ba0280f65caac  -

Poner lo siguiente en /etc/cipe/options.cipcb0 (32 caracteres, 128 bits)

	vi /etc/cipe/options.cipcb0
	key 84425628fb0a9b2b611ba0280f65caac
	arg 192.168.2.0

Nota: La llave debe ser la misma en el servidor y en el cliente

Cambiar el permiso del fichero /etc/cipe/options.cipcb0 para lectura y escritura exclusivamente de root.

	chmod 600 /etc/cipe/options.cipcb0
	ls -l /etc/cipe/options.cipcb0
	-rw-------    1 root     root           53 ago 17 11:15 /etc/cipe/options.cipcb0

Poner lo siguiente en /etc/sysconfig/network-scripts/ifcfg-cipcb0

	DEVICE=cipcb0
	ONBOOT=yes
	BOOTPROTO=none
	USERCTL=yes
	PEERDNS=no
	TYPE=CIPE
	IPADDR=10.0.1.1
	MYPORT=7777
	PTPADDR=10.0.1.2
	# IP del extremo remoto, 
	# se coloca 0.0.0.0 debido a que es una IP dinámica
	PEER=0.0.0.0:7777
	ME=nombre-con-el-que-diste-de-alta-el-servidor-en.dyndns.org

Poner lo siguiente en /etc/sysconfig/network-scripts/route-cipcb0

	ADDRESS0=192.168.2.0
	NETMASK0=255.255.255.0
	GATEWAY0=10.0.1.2

Ejecutar:

	service networque restart

Es importante que para que tengas comunicación entre las dos redes, que las máquinas que están detrás del servidor tengan la dirección IP 192.168.1.254 como puerta de enlace, esto se habilita en los parámetros de configuración especificados en cada distribución.

Para verificar que el túnel está función ando, checa las salidas de mensaje correspondientes en el ficheros /var/log/cipe.log el cual te debe dar una salida como la siguiente:

	tail -80 /var/log/cipe.log
	ago 18 10:12:03 UP   cipcb0 111.222.333.444:7777 2842 10.0.1.1 10.0.1.2 192.168.250.0

Para verificar que el ruteo se esté llevando de forma efectiva, ejecuta el siguiente mandato:

	netstat -rl

Debe generarte una salida como la siguiente, fíjate en las líneas en negritas:

	Kernel IP routing table
	Destination     Gateway         Genmasque         Flags   MSS Window  irtt Iface
	inet-bla-foo       *            255.255.255.255 UH        0 0          0 ppp0
	10.0.1.2           *            255.255.255.255 UH        0 0          0 cipcb0
	192.168.2.0   10.0.1.2          255.255.255.0   UG        0 0          0 cipcb0
	169.254.0.0        *            255.255.0.0     U         0 0          0 eth1
	192.168.0.0        *            255.255.0.0     U         0 0          0 eth1
	127.0.0.0          *            255.0.0.0       U         0 0          0 lo
	default      inet-bla-foo       0.0.0.0         UG        0 0          0 ppp0

—————————————————————————————-
Requisito para Cliente (red 192.168.2.0/24)

Sistema operativo basado sobre GNU/linux (WBEL o RHEL) con todos los paquetes actualizados.

No es necesario registrar el dominio.

Dos tarjetas de Red:

    eth0 conectada al modem ADSL (sigue los pasos para configurar un modem ADSL en Cómo configurar una Conexión ADSL
    eth1 conectada al concentrador de la red local con dirección IP 192.168.2.254

Instalar la versión más reciente de CIPE (1.4.5-16)

	# yum -y install cipe

Habilitar el reenvío de paquetes para IP versión 4 en el fichero /etc/sysctl.conf.

	vi /etc/sysctl.conf
	net.ipv4.ip_forward = 1

Poner lo siguiente en /etc/cipe/options.cipcb0 (32 caracteres, 128 bits)

	vi /etc/cipe/options.cipcb0
	key 84425628fb0a9b2b611ba0280f65caac
	arg 192.168.1.0

Nota: La llave debe ser la misma en el servidor y en el cliente.

Cambiar el permiso del fichero /etc/cipe/options.cipcb0 para lectura y escritura exclusivamente de root

	chmod 600 /etc/cipe/options.cipcb0
	ls -l /etc/cipe/options.cipcb0
	-rw-------    1 root     root           53 ago 17 11:15 /etc/cipe/options.cipcb0

Poner lo siguiente en /etc/sysconfig/network-scripts/ifcfg-cipcb0.

	DEVICE=cipcb0
	ONBOOT=yes
	BOOTPROTO=none
	USERCTL=yes
	PEERDNS=no
	TYPE=CIPE
	IPADDR=10.0.1.2
	MYPORT=7777
	PTPADDR=10.0.1.1
	# Se coloca el nombre-con-el-que-diste-de-alta-el-servidor-en.dyndns.org
	PEER=nombre-con-el-que-diste-de-alta-el-servidor-en.dyndns.org:7777
	ME=0.0.0.0

Poner lo siguiente en /etc/sysconfig/network-scripts/route-cipcb0.

	ADDRESS0=192.168.1.0
	NETMASK0=255.255.255.0
	GATEWAY0=10.0.1.1

Ejecutar:

	service networque restart

Es importante que para que tengas comunicación entre las dos redes, que las máquinas que están detrás del cliente tengan la dirección IP 192.168.2.254 como puerta de enlace, esto se habilita en los parámetros de configuración especificados en cada distribución.

Para verificar que el túnel está funcionando, checa las salidas de mensaje correspondientes en el ficheros /var/log/cipe.log el cual te debe dar una salida como la siguiente:

	tail -80 /var/log/cipe.log
	ago 18 06:55:49 UP   cipcb0 222.333.444.555:7777 3430 10.0.1.2 10.0.1.1 192.168.1.0

Para verificar que el ruteo se esté llevando de forma efectiva, ejecuta el siguiente mandato:

	netstat -rl

Debe generarte una salida como la siguiente, fíjate en las líneas en negritas:

	Kernel IP routing table
	Destination     Gateway         Genmasque         Flags   MSS Window  irtt Iface
	inet-foo-bla       *            255.255.255.255 UH        0 0          0 ppp0
	10.0.1.1           *            255.255.255.255 UH        0 0          0 cipcb0
	192.168.1.0     10.0.1.1        255.255.255.0   UG        0 0          0 cipcb0
	169.254.0.0        *            255.255.0.0     U         0 0          0 eth1
	192.168.0.0        *            255.255.0.0     U         0 0          0 eth1
	127.0.0.0          *            255.0.0.0       U         0 0          0 lo
	default         inet-foo-bla    0.0.0.0         UG        0 0          0 ppp0

Fuente

Translate »