VPN

Contenido

1 – Introducción a la red privada virtual VPN

Las aplicaciones y sistemas distribuidos se están convirtiendo cada vez más en una parte integral del panorama de muchas empresas. Estas tecnologías han podido desarrollarse gracias al rendimiento cada vez mayor de las redes de área local. Pero el éxito de estas aplicaciones también ha revelado uno de sus escollos. En efecto, si las aplicaciones distribuidas se están convirtiendo en el principal instrumento del sistema de información de una empresa, ¿cómo se puede garantizar su acceso seguro dentro de estructuras que a veces se extienden a grandes distancias geográficas? Concretamente, ¿cómo puede una sucursal de una empresa acceder a los datos situados en un servidor de la empresa matriz a varios miles de kilómetros de distancia? Las VPNs han comenzado a ser implementadas para responder a este tipo de problemas. Pero han surgido otros problemas y las VPNs han tomado ahora un lugar importante en las redes informáticas y en la computación distribuida. Veremos aquí cuáles son las principales características de las VPN a través de un cierto número de usos típicos. Luego veremos los protocolos que permiten su implementación.

2 – Principio de funcionamiento de la VPN

2.1 – Principio general


Una red VPN se basa en un protocolo llamado «protocolo de tunelización». Este protocolo permite que la información de la empresa fluya de forma encriptada de un extremo al otro del túnel. Esto da a los usuarios la impresión de que se están conectando directamente a su red corporativa.

El principio de la construcción de túneles consiste en construir un camino virtual después de haber identificado al emisor y al receptor. La fuente entonces encripta los datos y los dirige a través de este camino virtual. A fin de proporcionar un acceso fácil y económico a las intranets o extranets de las empresas, las redes de acceso privado virtual simulan una red privada, mientras que en realidad utilizan una infraestructura de acceso compartido, como la Internet.

Los datos que se transmitan pueden estar soportados por un protocolo diferente al IP. En este caso, el protocolo de tunelización encapsula los datos añadiendo un encabezamiento. La construcción de túneles es el proceso de encapsulación, transmisión y desencapsulación.

2.2 – Funcionalidades de la VPN

Hay 3 tipos estándar de uso de VPN. Estudiando estos patrones de uso, es posible aislar las funcionalidades esenciales de las VPNs.

2.2.1 – El acceso VPN

La VPN de acceso se utiliza para permitir a los usuarios itinerantes acceder a la red privada. El usuario utiliza una conexión a Internet para establecer la conexión VPN. Hay dos casos:

El usuario pide al proveedor de acceso que establezca una conexión cifrada con el servidor remoto: el usuario se comunica con el Nas (Network Access Server) del proveedor de acceso y es el Nas el que establece la conexión cifrada.
El usuario tiene su propio software cliente para la VPN en cuyo caso establece la comunicación directamente de forma encriptada a la red de la empresa.
Ambos métodos tienen sus ventajas y desventajas:

El primero permite al usuario comunicarse a través de varias redes creando varios túneles, pero requiere un proveedor de acceso que ofrezca un Nas compatible con la solución VPN elegida por la empresa. Además, la solicitud de conexión a través del Nas no está encriptada, lo que puede plantear problemas de seguridad.
En el segundo método, este problema desaparece ya que toda la información será encriptada tan pronto como se establezca la conexión. Por otro lado, esta solución requiere que cada cliente lleve consigo el software, lo que le permite establecer una comunicación cifrada. Veremos que para superar este problema, algunas empresas están estableciendo VPNs basadas en SSL, una tecnología implementada en la mayoría de los navegadores de Internet del mercado.
Cualquiera que sea el método de conexión elegido, este tipo de uso muestra la importancia en la VPN de tener una fuerte autentificación de los usuarios. Esta autenticación puede hacerse mediante una verificación de «login/contraseña», mediante un algoritmo llamado «Secure Tokens» (uso de contraseñas aleatorias) o mediante certificados digitales.

2.2.2 – La Intranet de la VPN

La intranet de VPN se usa para enlazar al menos dos intranets. Este tipo de red es particularmente útil en una empresa con varios sitios remotos. Lo más importante en este tipo de red es garantizar la seguridad e integridad de los datos. Algunos datos muy sensibles pueden ser transitados por la VPN (base de datos de clientes, información financiera…). Se utilizan técnicas criptográficas para comprobar que los datos no han sido alterados. Esto implica la autenticación a nivel de paquete para asegurar la validez de los datos, la identificación de su fuente y su no repudio. La mayoría de los algoritmos utilizados utilizan firmas digitales que se añaden a los paquetes. La confidencialidad de los datos también se basa en algoritmos criptográficos. La tecnología en esta área está lo suficientemente avanzada como para proporcionar una seguridad casi perfecta. El costo material del equipo de cifrado y descifrado y las limitaciones legales prohíben el uso de un cifrado «infalible». Por lo general, por razones de confidencialidad, la codificación en sí puede ser de media a baja, pero se combinará con otras técnicas como la encapsulación de IP dentro de IP para garantizar una seguridad razonable.

2.2.3 – La extranet VPN

Una empresa puede usar la VPN para comunicarse con sus clientes y socios. Luego les abre su red local. En este contexto, es fundamental que el administrador de la VPN pueda rastrear a los clientes de la red y gestionar los derechos de cada uno de ellos en la red.

2.2.4 – Evaluación de las características fundamentales de una VPN

Un sistema VPN debe ser capaz de implementar las siguientes funcionalidades:

Autenticación de usuario. Sólo los usuarios autorizados deben poder identificarse en la red virtual. Además, se debe mantener un historial de conexiones y acciones realizadas en la red.
Gestión de direcciones. Cada cliente de la red debe tener una dirección privada. Esta dirección privada debe permanecer confidencial. Un nuevo cliente debe poder conectarse fácilmente a la red y recibir una dirección.
Encriptación de datos. Cuando se transportan por la red pública, los datos deben ser protegidos por una encriptación efectiva.
Gestión de llaves. Las claves de cifrado para el cliente y el servidor deben poder ser generadas y regeneradas.
Soporte multiprotocolo. La solución VPN debe soportar los protocolos más utilizados en las redes públicas, especialmente el IP.
VPN es un principio: no describe la implementación real de estas características. Por eso hay varios productos diferentes en el mercado, algunos de los cuales se han convertido en norma, e incluso se consideran normas.

3 – Los protocolos utilizados para hacer una conexión VPN

Podemos dividir los protocolos que vamos a estudiar en dos categorías:

Protocolos de nivel 2 como PPTP y L2TP.
Protocolos de nivel 3 como el IPSec o el MPLS.
En realidad hay tres protocolos de nivel 2 que permiten realizar VPNs: PPTP (de Microsoft), L2F (desarrollado por CISCO) y finalmente L2TP. En este estudio, sólo mencionaremos el PPTP y el L2TP: el protocolo L2F ya casi ha desaparecido. El protocolo PPTP probablemente también habría desaparecido sin el apoyo de Microsoft, que sigue integrándolo en sus sistemas operativos Windows. El L2TP es una evolución del PPTP y el L2F, aprovechando las ventajas de ambos protocolos.

Los protocolos de la capa 2 dependen de las funcionalidades especificadas para el PPP (Point to Point Protocol), por lo que primero recordaremos cómo funciona este protocolo.

3.1 – Recordatorios sobre el PPP

El PPP (Point to Point Protocol) es un protocolo para transferir datos a través de un enlace síncrono o asíncrono. Es un dúplex completo y garantiza el orden de llegada de los paquetes. Encapsula los paquetes Ip, Ipx y Netbeui en marcos PPP y luego transmite estos paquetes encapsulados sobre el enlace punto a punto. El PPP se utiliza típicamente entre un cliente de acceso remoto y un servidor de acceso a la red (Nas). El protocolo PPP está definido en el RFC 1661 apoyado por el RFC 2153.

3.1.1 – General

El PPP es uno de los dos protocolos resultantes de la estandarización de las comunicaciones por medio de enlaces en serie (siendo el segundo el Slip). Permite no sólo el encapsulamiento de datagramas, sino también la resolución de ciertos problemas relacionados con los protocolos de red, como la asignación y la gestión de direcciones (IP, X25 y otros).

Una conexión PPP se compone principalmente de tres partes :

Un método para encapsular datagramas en el enlace serial. PPP utiliza el formato de marco Hdlc (Hight Data Level Control) de la ISO (Organización Internacional de Normalización).
Un Protocolo de Control de Enlace (Lcp) para establecer, configurar y probar la conexión de enlace de datos.
Varios Protocolos de Control de Red (Ncps) para establecer y configurar los diferentes protocolos de capa de red.

3.1.2 – Formato de un marco PPP

Bandera – Separador de trama igual al valor 01111110. Sólo se necesita una bandera entre dos cuadros.
Dirección – PPP no permite el direccionamiento individual de las estaciones, por lo que este campo debe ser 0xFF (todas las estaciones). Las direcciones no reconocidas resultarán en la destrucción del marco.
Control – El campo de control debe estar ajustado a 0x03.
Protocolo – El valor en este campo será impar (el byte alto es par). Este campo identifica el protocolo encapsulado en el campo de información de trama. Los diferentes valores que se pueden utilizar se definen en el RFC «assign number» y representan los diferentes protocolos soportados por PPP (Osi, Ip, Decnet IV, Ipx…), el Ncp y Lcp asociados.
Datos – Entre 0 y 1500 bytes de longitud, este campo contiene el datagrama del protocolo superior indicado en el campo «protocolo». Su longitud se detecta por la bandera del final del cuadro menos dos bytes de control.
Fcs (Frame Check Sequence) – Este campo contiene el valor de la suma de control del cuadro. PPP comprueba el contenido de los Fcs cuando recibe un paquete. La comprobación de errores aplicada por PPP es compatible con X25.

3.1.3 – Las diferentes fases de una conexión PPP

Cada conexión PPP comienza y termina con una fase de «enlace muerto». Tan pronto como un evento externo indica que la capa física está lista, la conexión pasa a la siguiente fase, es decir, el establecimiento del enlace. Dado que la PPP tiene que ser apoyada por un gran número de entornos, se ha desarrollado e integrado en la PPP un protocolo específico para toda la fase de conexión; se llama Lcp (Link Control Protocol). Lcp es un protocolo utilizado para establecer, configurar, probar y terminar la conexión PPP. Puede manejar paquetes de tamaño variable y realiza una serie de pruebas de configuración. En particular, puede detectar un vínculo de bucle de retorno en sí mismo.

La conexión PPP pasa entonces por una fase de autenticación. Este paso es opcional y debe ser especificado en la fase previa.

Si la autenticación se realiza con éxito o no se solicita, la conexión pasa a la fase de «Protocolo de red». Es durante este paso que se configuran los diferentes protocolos de la red. Esta configuración se realiza por separado para cada protocolo de red. Se lleva a cabo mediante el correspondiente Protocolo de Control de la Red (PCN). En este punto, la transferencia de datos es posible. Los PNJ pueden abrir o cerrar una conexión en cualquier momento. El PPP puede terminar una conexión en cualquier momento porque la autenticación ha fallado, la calidad de la línea es pobre o por cualquier otra razón. Es el Lcp el que cierra el enlace usando paquetes de terminación. El Ncp es entonces informado por el PPP del cierre del enlace.

3.2 – El protocolo PPTP

El PPTP, definido por el RFC 2637, es un protocolo que utiliza una conexión PPP a través de una red IP creando una red privada virtual (VPN). Microsoft ha implementado sus propios algoritmos para integrarlo en sus versiones de Windows. Así pues, el PPTP es una solución muy utilizada en los productos comerciales de VPN debido a su integración en los sistemas operativos de Windows. El PPTP es un protocolo de nivel 2 que permite la encriptación y compresión de datos. La autenticación se realiza mediante el protocolo Ms-Chap de Microsoft que, tras el criptoanálisis de su versión 1, ha revelado públicamente importantes fallos. Microsoft ha corregido estos defectos y ahora ofrece una versión 2 más segura de Ms-Chap. La parte de cifrado de los datos se realiza mediante el protocolo Mppe (Microsoft Point-to-Point Encryption).

El principio del protocolo PPTP es crear paquetes bajo el protocolo PPP y encapsularlos en datagramas IP. El PPTP crea así un túnel de nivel 3 definido por el protocolo Gre (Encapsulado de Rutas Genéricas). El túnel PPTP se caracteriza por una inicialización del cliente, una conexión de control entre el cliente y el servidor y el cierre del túnel por parte del servidor. Al establecer la conexión, el cliente primero hace una conexión con su proveedor de servicios de Internet. Esta primera conexión establece una conexión de tipo PPP y permite que los datos fluyan por Internet. Entonces se establece una segunda conexión telefónica. Permite que los paquetes PPP sean encapsulados en datagramas IP. Es esta segunda conexión la que forma el túnel PPTP. Todo el tráfico de clientes diseñado para la Internet viaja a través de la conexión física normal, mientras que el tráfico diseñado para la red privada remota viaja a través de la conexión virtual PPTP.

Se pueden asociar varios protocolos al PPTP para asegurar o comprimir los datos. Obviamente se encuentran los protocolos desarrollados por Microsoft y citados anteriormente. Así pues, para el proceso de identificación es posible utilizar los protocolos Pap (Password Authentication Protocol) o MsChap. Para el cifrado de datos, es posible utilizar las funciones Mppe (Microsoft Point to Point Encryption). Por último, una compresión de extremo a extremo puede ser realizada por Mppc (Microsoft Point to Point Compression). Estos diversos protocolos permiten lograr una conexión VPN completa, pero los siguientes protocolos proporcionan un nivel mucho más alto de rendimiento y fiabilidad.

3.3 – El protocolo L2TP

El L2TP, definido por el RFC 2661, es una convergencia de los protocolos PPTP y L2F. Actualmente está siendo desarrollado y evaluado conjuntamente por Cisco Systems, Microsoft, Ascend, 3Com y otros actores clave en el mercado de las redes. Permite el encapsulamiento de paquetes PPP en la Capa 2 (Frame Relay y Atm) y la Capa 3 (IP). Cuando se configura para transportar datos a través de IP, el L2TP puede ser utilizado para la construcción de túneles en Internet. L2TP se basa en dos conceptos: Concentradores de Acceso L2TP (Lac: L2TP Access Concentrator) y Servidores de Red L2TP (Lns: L2TP Network Server). El L2TP no integra directamente un protocolo de cifrado de datos. Por eso la IETF recomienda el uso conjunto de IPSec y L2TP.

3.3.1 – Concentradores de acceso al L2TP (Lago: Concentrador de acceso al L2TP)

Los dispositivos de laceración proporcionan soporte físico para las conexiones L2TP. El tráfico se transfiere entonces a los servidores de la red L2TP. Estos servidores pueden integrarse en la estructura de una red de marcación Rtc o en un sistema de puntos finales PPP que soporte el protocolo L2TP. Proporcionan división de canales para todos los protocolos basados en PPP. El Lago es el emisor de las llamadas entrantes y el receptor de las salientes.

3.3.2 – Servidor de red L2TP (Lns: Servidor de red L2TP)

Los servidores de red L2TP o Lns pueden funcionar en cualquier plataforma que soporte la terminación de PPP. El Lns soporta el protocolo L2TP en el lado del servidor. El protocolo L2TP utiliza un solo medio, al que llegan los canales L2TP. Por esta razón, los servidores de la red Lns sólo pueden tener una interfaz LAN (Lan) o WAN (WAN). Sin embargo, son capaces de terminar las llamadas desde cualquier interfaz PPP en el concentrador de acceso de Lac: async, Rnis, PPP sobre Atm o PPP sobre retransmisión de tramas. El Lns es el emisor de las llamadas salientes y el receptor de las entrantes. Los Lns serán los responsables de la autentificación del túnel.

3.4 – El protocolo IPSec

El IPSec, definido por el RFC 2401, es un protocolo que tiene como objetivo asegurar el intercambio de datos en la capa de red. Como la red IPv4 está ampliamente desplegada y la migración a IPv6 es inevitable, pero sin embargo larga, pareció interesante desarrollar técnicas de protección de datos comunes a IPv4 e IPv6. Estos mecanismos se denominan comúnmente IPSec para los protocolos de seguridad IP. El IPSec se basa en dos mecanismos. El primero, AH, para el encabezamiento de autenticación, tiene como objetivo asegurar la integridad y la autenticidad de los datagramas IP. Sin embargo, no proporciona ninguna confidencialidad: los datos proporcionados y transmitidos por este «protocolo» no están cifrados. El segundo, Esp, para encapsular la carga de seguridad también puede permitir la autenticación de datos, pero se utiliza principalmente para el cifrado de información. Aunque son independientes, estos dos mecanismos se utilizan casi siempre juntos. Finalmente, el protocolo Ike permite gestionar los intercambios o asociaciones entre los protocolos de seguridad. Antes de describir estos diferentes protocolos, explicaremos los diferentes elementos utilizados en el IPSec.

3.4.1 – Visión general

Los mecanismos mencionados anteriormente utilizan, por supuesto, la criptografía y, por lo tanto, utilizan un cierto número de parámetros (algoritmos de cifrado utilizados, claves, mecanismos seleccionados…) sobre los que los terceros comunicantes deben ponerse de acuerdo. Para gestionar estos parámetros, el IPSec utiliza el concepto de Asociación de Seguridad (SA).

Una Asociación de Seguridad IPSec es una «conexión» simple que proporciona servicios de seguridad al tráfico que transporta. También puede pensarse en una estructura de datos utilizada para almacenar todos los parámetros asociados a una comunicación determinada.

Una SA es unidireccional; por lo tanto, la protección de ambas direcciones de una comunicación convencional requiere dos asociaciones, una en cada dirección. Los servicios de seguridad se prestan utilizando tanto AH como Esp. Si se aplican tanto AH como Esp al tráfico en cuestión, se crean dos (o más) SAs; esto se denomina un paquete SA.
Cada asociación se identifica de manera única con un triplete de:

La dirección de destino de los paquetes,
El identificador del protocolo de seguridad utilizado (AH o Esp),
Un índice de parámetros de seguridad (SPI). Un SPI es un bloque de 32 bits escrito en texto claro en el encabezamiento de cada paquete intercambiado; es elegido por el receptor.

Se utiliza una «Base de datos de asociaciones de seguridad» (SAD) para gestionar las asociaciones de seguridad activas. Contiene todos los parámetros relativos a cada SA y será consultado para saber cómo manejar cada paquete recibido o por enviar.

Las protecciones que ofrece el IPSec se basan en las opciones definidas en una Base de Datos de Políticas de Seguridad (SPD). Esta base de datos es establecida y mantenida por un usuario, un administrador de sistema o una aplicación implementada por ellos. Se utiliza para decidir, para cada paquete, si se le proporcionarán servicios de seguridad, se le permitirá pasar o se rechazará.

3.4.2 – Principio de funcionamiento

El diagrama que figura a continuación representa todos los elementos presentados anteriormente (en azul), sus posiciones y sus interacciones. Se pueden distinguir dos situaciones:

Tráfico de salida
Cuando la «capa» del IPSec recibe datos para ser enviados, primero comprueba la Base de Datos de Políticas de Seguridad (SPD) para averiguar cómo manejar los datos. Si el SPD le dice que el tráfico debe tener mecanismos de seguridad aplicados, recupera las características requeridas para el AS correspondiente y consultará la base de datos del AS (SAD). Si el AS requerido ya existe, se utiliza para procesar el tráfico en cuestión. De lo contrario, el IPSec pide al IKE que establezca un nuevo AS con las características requeridas.
Tráfico entrante
Cuando la capa IPSec recibe un paquete de la red, examina el encabezamiento para averiguar si a ese paquete se le ha aplicado uno o más servicios IPSec y, en caso afirmativo, cuáles son las referencias SA. Luego consulta al SAD para averiguar los parámetros que se utilizarán para verificar y/o descifrar el paquete. Una vez que el paquete ha sido verificado y/o descifrado, se consulta al Spd para averiguar si la asociación de seguridad aplicada al paquete corresponde a la requerida por las políticas de seguridad.
Si el paquete recibido es un paquete IP normal, el Spd se utiliza para determinar si todavía se le permite pasar. Por ejemplo, los paquetes de IKE son una excepción. Son manejados por Ike, que puede enviar alertas administrativas en caso de intentos de conexión fallidos.

3.4.3 – El protocolo Ah (Cabecera de autenticación)

La falta de confidencialidad garantiza que esta norma pueda utilizarse ampliamente en Internet, incluso en lugares donde la exportación, la importación o el uso de la codificación con fines de confidencialidad están restringidos por la ley.

Su principio es añadir al datagrama clásico de IP un campo adicional que permita al receptor verificar la autenticidad de los datos incluidos en el datagrama. Este bloque de datos se llama «Valor de comprobación de integridad» (Icv). La protección contra el rechazo se proporciona mediante un número de secuencia.

3.4.4 – Protocolo Esp (Encapsulando la carga de seguridad)

Esp puede proporcionar uno o más de los siguientes servicios:

Confidencialidad (confidencialidad de los datos y protección parcial contra el análisis del tráfico si se utiliza el modo de túnel).
Integridad de los datos en modo desconectado y autenticación del origen de los datos, protección contra la repetición.
La confidencialidad puede seleccionarse independientemente de otros servicios, pero su uso sin integridad/autenticación (directamente en Esp o con AH) hace que el tráfico sea vulnerable a ciertos tipos de ataques activos que podrían debilitar el servicio de confidencialidad.
El campo de relleno puede ser necesario para los algoritmos de cifrado en bloque o para alinear el texto cifrado a un límite de 4 bytes.
Los datos de autenticación sólo están presentes si se ha seleccionado este servicio.
Ahora veamos cómo se aplica la privacidad en el Esp.
El remitente:
Encapsula, en el campo «carga útil» de Esp, los datos transportados por el datagrama original y posiblemente el encabezamiento IP (modo túnel).
Si es necesario, añade un relleno.
Encapsula el resultado (datos, relleno, longitud y siguientes campos de encabezamiento).
Si es necesario, añade datos de sincronización criptográfica (vector de inicialización) al principio del campo «carga útil».

3.4.5 – Gestión de claves para el IPSec : Isakmp e Ike

Los protocolos seguros presentados en los párrafos anteriores utilizan algoritmos criptográficos y, por lo tanto, requieren claves. Uno de los problemas fundamentales en el uso de la criptografía es la gestión de estas claves. El término «gestión» abarca la generación, distribución, almacenamiento y eliminación de claves.

El IKE (Intercambio de Claves de Internet) es un sistema desarrollado específicamente para el IPSec que tiene por objeto proporcionar mecanismos de autenticación e intercambio de claves adaptados a todas las situaciones que puedan surgir en Internet. Está compuesto de varios elementos: el marco genérico de Isakmp y parte de los protocolos de Oakley y Skeme. Cuando se utiliza para el IPSec, el IKE se complementa con un «dominio de interpretación» para el IPSec.

3.4.5.1 – Isakmp (Asociación de Seguridad de Internet y Protocolo de Gestión de Claves)

El papel de Isakmp es la negociación, el establecimiento, la modificación y la eliminación de las asociaciones de seguridad y sus atributos. Establece las bases para la construcción de varios protocolos de gestión clave (y más generalmente de asociaciones de seguridad). Tiene tres aspectos principales:

Define una forma de proceder, en dos etapas denominadas fase 1 y fase 2: en la primera, se establece un cierto número de parámetros de seguridad específicos de Isakmp, a fin de establecer un canal protegido entre dos tercios de la clave; en la segunda, este canal se utiliza para negociar las asociaciones de seguridad para los mecanismos de seguridad que se deseen utilizar (AH y Esp, por ejemplo).
Define los formatos de los mensajes a través de bloques, cada uno con un papel preciso y que permite formar mensajes claros.
Presenta un cierto número de intercambios estándar, compuestos de tales mensajes, que permiten negociar con diferentes propiedades: protección de la identidad o no, perfecto secreto de avance…
Isakmp se describe en el RFC 2408.

3.4.5.2 Ike (Intercambio de claves por Internet)

El IKE utiliza a Isakmp para construir un protocolo práctico. Tiene cuatro modos:
El modo principal (Main mode)
El modo agresivo
El modo rápido
El nuevo modo de grupo
El Modo Principal y el Modo Agresivo se utilizan durante la fase 1, el Modo Rápido es un intercambio de la fase 2. El nuevo modo de grupo es un poco diferente: no es un intercambio de fase 1 ni de fase 2, pero sólo puede tener lugar una vez que se establezca un Isakmp SA; se utiliza para acordar un nuevo grupo para futuros intercambios Diffie-Hellman.

a) Fase 1: Modo principal y modo agresivo

Los siguientes atributos son utilizados por Ike y negociados durante la fase 1: un algoritmo de cifrado, una función hash, un método de autenticación y un grupo para Diffie-Hellman.

Al final de la fase 1 se generan tres claves: una para la encriptación, otra para la autenticación y otra para derivar otras claves. Estas claves dependen de las cookies, los peligros intercambiados y los valores públicos de Diffie-Hellman o del secreto compartido anterior. Su cálculo implica la función de hash elegida para el Isakmp SA y depende del modo de autenticación elegido. Las fórmulas exactas se describen en el RFC 2409.

b) Fase 2: Modo rápido

Los mensajes intercambiados durante la fase 2 están protegidos en cuanto a su autenticidad y confidencialidad gracias a los elementos negociados durante la fase 1. La autenticidad de los mensajes se asegura añadiendo un bloque Hash después de la cabecera de Isakmp y la confidencialidad se asegura encriptando todos los bloques del mensaje.

El Modo Rápido se utiliza para la negociación de SA para determinados protocolos de seguridad como el IPSec. Cada negociación resulta en realidad en dos SAs, uno en cada dirección de comunicación.
Más precisamente, los intercambios que componen este modo tienen el siguiente papel:

Negociar un conjunto de parámetros IPSec (paquetes SA)
Intercambio de números aleatorios, utilizados para generar una nueva clave que deriva del secreto generado en la fase 1 con el protocolo Diffie-Hellman. Opcionalmente, es posible utilizar un nuevo intercambio Diffie-Hellman, para acceder a la propiedad de Perfect Forward Secrecy, que no se proporciona si sólo generamos una nueva clave a partir de la antigua y los números aleatorios.
Opcionalmente, identificar el tráfico que este paquete SA protegerá, mediante selectores (bloques opcionales IDi e IDr; en su ausencia se utilizan las direcciones Ip de los interlocutores).


c) El : Nuevo modo de grupo

El grupo que se usará para Diffie-Hellman puede ser negociado, a través del bloque SA, ya sea durante el Modo Principal o más tarde a través del Modo de Nuevo Grupo. En ambos casos, hay dos maneras de designar el grupo a utilizar:

Dénos la referencia de un grupo predefinido: actualmente hay cuatro, los cuatro grupos Oakley (dos grupos MODP y dos grupos EC2N).
Diga las características del grupo deseado: tipo de grupo (MODP, ECP, EC2N), número primo o polinomio irreductible, generadores…


d) Fases y modos

Al final, el curso de una negociación del IKE sigue el siguiente diagrama:

3.4.6 – Los dos modos de funcionamiento del IPSec


El modo de transporte toma un flujo a nivel de transporte (capa 4 del modelo OSI) y realiza los mecanismos de firma y codificación y luego transmite los datos a la capa IP. En este modo, la inserción de la capa IPSec es transparente entre Tcp e Ip. El Tcp envía sus datos al IPSec como lo haría con el IPv4.

La desventaja de este modo es que el encabezado externo es producido por la capa Ip, es decir, sin enmascaramiento de direcciones. Además, el hecho de que el procesamiento sea terminado por la capa de propiedad intelectual no garantiza que no se utilicen opciones de propiedad intelectual potencialmente peligrosas. El interés de este modo radica en su relativa facilidad de aplicación.

En el modo de túnel, los datos enviados por la aplicación pasan a través de la pila de protocolos hasta la capa IP inclusive, y luego se envían al módulo IPSec. La encapsulación del IPSec en modo túnel permite el enmascaramiento de la dirección. El modo túnel se utiliza entre dos puertas de seguridad (router, cortafuegos, …) mientras que el modo transporte es entre dos hosts.

3.5 – El protocolo MPLS

El protocolo MPLS es una brillante consecuencia del protocolo de inteligencia artificial. Se presenta como una solución a los problemas de enrutamiento de los datagramas IP en Internet. El principio de enrutamiento en Internet se basa en tablas de enrutamiento. Para cada paquete los routers, para determinar el siguiente salto, deben analizar la dirección de destino del paquete contenido en el encabezado del nivel 3. Luego consultan su tabla de rutas para determinar en qué interfaz debe salir el paquete. Este mecanismo de búsqueda de tablas de enrutamiento es una Cpu que consume mucho tiempo y con el crecimiento del tamaño de la red en los últimos años, las tablas de enrutamiento de los enrutadores han ido aumentando constantemente. El protocolo MPLS se desarrolló inicialmente para dar mayor potencia a los conmutadores IP, pero con el advenimiento de técnicas de conmutación como Cef (Cisco Express Forwarding) y el desarrollo de nuevos Asic (Application Specific Interface Circuits), los enrutadores IP han visto aumentar su rendimiento sin el uso del MPLS.

3.5.1 – Principio de funcionamiento del MPLS

El principio básico del MPLS es el cambio de etiqueta. Estas etiquetas, números enteros simples, se insertan entre los encabezados de nivel 2 y 3, los enrutadores entonces conmutan estas etiquetas a lo largo de la red hasta el destino, sin necesidad de consultar el encabezado IP y su tabla de enrutamiento.

3.5.1.1 – Cambio de etiquetas

Esta técnica de cambio de etiqueta se llama Intercambio de Etiquetas. El MPLS permite definir pilas de etiquetas, que serán de interés con las VPNs. Los routers que realizan operaciones de intercambio de etiquetas se llaman Lsr para Label Switch Routers.

Los enrutadores MPLS situados en el borde de la red (Edge Lsr), que tienen tanto interfaces IP tradicionales como interfaces conectadas a la red troncal MPLS, se encargan de imponer o quitar las etiquetas de los paquetes IP que pasan por ellos. Los enrutadores de entrada, que imponen etiquetas, se denominan Ingress Lsr, mientras que los de salida, que eliminan etiquetas, se denominan Egress Lsr.

3.5.1.2 – Clasificación de los paquetes

A la entrada de la red MPLS, los paquetes IP se clasifican en Fec (Forwarding Equivalent Classes). Los paquetes que pertenecen al mismo Fec seguirán el mismo camino y tendrán el mismo método de envío. Típicamente, los Fecs son prefijos Ip aprendidos por el Ip que se ejecuta en la red troncal del MPLS, pero también pueden ser definidos por la información Qos (Calidad de Servicios). La clasificación de los paquetes se realiza en la entrada de la columna vertebral del MPLS, por Ingress Lsr. Dentro de la columna vertebral del MPLS, los paquetes se cambian de etiqueta, y no se produce ninguna reclasificación de paquetes. Cada Lsr asigna una etiqueta local, que será usada como entrada, para cada uno de sus Fecs y la propaga a sus vecinos. Los Lsr. vecinos se aprenden del PII. El conjunto de Lsr utilizado para un Fec, que constituye un camino a través de la red, se llama Label Switch Path (Lsp). Hay una Lsp para cada Fec y las Lsps son unidireccionales.

3.5.2 – Uso del MPLS para VPNs

Para satisfacer las necesidades de los operadores de servicios de VPN, la gestión de VPN-IP utilizando protocolos MPLS se ha definido en una especificación referida a RFC 2547. Se crean túneles entre los enrutadores MPLS de borde pertenecientes al operador y dedicados a determinados grupos de usuarios cerrados, que constituyen las VPN. Desde la perspectiva del MPLS/VPN, una VPN es un conjunto de sitios colocados bajo la misma autoridad administrativa, o agrupados según un interés particular.

3.5.2.1 – Routers P, Pe y Ce

Se utiliza una terminología particular para designar a los enrutadores (dependiendo de su función) en un entorno MPLS / VPN:

P (Proveedor): estos routers, que componen el corazón de la columna vertebral del MPLS, no tienen conocimiento del concepto de VPN. Simplemente dirigen los datos usando el cambio de etiqueta;
Pe (Provider Edge): estos routers están situados en el límite de la red troncal MPLS y tienen por definición una o más interfaces conectadas a los routers de los clientes;
Ce (Customer Edge): estos routers pertenecen al cliente y no tienen conocimiento de las VPNs ni siquiera la noción de etiqueta. Cualquier enrutador «tradicional» puede ser un enrutador Ce, independientemente de su tipo o de la versión de sistema operativo utilizada.
El siguiente diagrama muestra la ubicación de estos enrutadores en una arquitectura MPLS:

3.5.2.2 – Enrutadores virtuales: VRF

La noción misma de VPN implica el aislamiento del tráfico entre los sitios clientes que no pertenecen a la misma VPN. Para lograr esta separación, los enrutadores Pe tienen la capacidad de gestionar varias tablas de enrutamiento gracias a la noción de Vrf (VPN Routing and Forwarding). Un Vrf consiste en una tabla de ruta, una Fib (Forwarding Information Base) y una tabla Cef específica, independiente de las otras Vrf y de la tabla de ruta global. Cada Vrf se designa con un nombre (por ejemplo, ROJO, VERDE, etc.) en los routers Pe. Los nombres se asignan localmente y no tienen ningún significado en relación con otros routers.

Cada interfaz Pe, conectada a un sitio cliente, está conectada a un Vrf particular. Cuando se reciben paquetes Ip en una interfaz de cliente, el enrutador Pe examina la tabla de enrutamiento del Vrf a la que está conectada la interfaz y, por lo tanto, no consulta su tabla de enrutamiento global. Esta posibilidad de utilizar varias tablas de enrutamiento independientes permite gestionar un plan de direcciones por sitio, incluso en caso de superposición de direcciones entre diferentes VPN.

3.5.3 – Seguridad

La separación de los flujos entre los clientes en los enrutadores compartidos que soportan el MPLS está garantizada por el hecho de que sólo el descubrimiento de la red se hace a nivel de la capa 3 y que el enrutamiento de los paquetes se realiza entonces apoyándose únicamente en el mecanismo de etiqueta (intermedio entre la capa 2 y la capa 3).

El nivel de seguridad es el mismo que el del Frame Relay con Dlci en la capa 2.

La denegación de servicio se realiza generalmente en el nivel 3 (IP). Aquí, los paquetes seguirán siendo dirigidos al destinatario a través de la red MPLS usando LSPs.

3.6 – El protocolo SSL

Recién llegados al mundo de las VPNs, las VPNs basadas en SSL presentan una alternativa atractiva a las tecnologías restrictivas que las VPNs han presentado hasta ahora. Las SSL VPNs tienen la gran ventaja de que no requieren más que un navegador web convencional en el lado del cliente. El protocolo SSL utilizado para asegurar el comercio por Internet se aplica de forma estándar en los navegadores modernos.

El SSL es un protocolo de capa 4 (nivel de transporte) utilizado por una aplicación para establecer un canal de comunicación seguro con otra aplicación.

El SSL tiene dos características principales: autenticación del servidor y del cliente al establecer la conexión y encriptación de los datos durante la conexión.

3.6.1 – Operación

El protocolo SSL Handshake inicia una comunicación SSL. Tras la solicitud del cliente, el servidor envía su certificado así como la lista de algoritmos que desea utilizar. El cliente primero verifica la validez del certificado del servidor. Esto se hace usando la clave pública de CA contenida en el navegador del cliente. El cliente también comprueba la fecha de validez del certificado y puede ver una CRL (Lista de Revocación de Certificados). Si se pasan todas las comprobaciones, el cliente genera una clave simétrica y la envía al servidor. El servidor puede entonces enviar una prueba al cliente, que éste debe firmar con su clave privada correspondiente a su propio certificado. Esto se hace para que el servidor pueda autentificar al cliente.

Muchos parámetros se intercambian durante esta fase: tipo de clave, valor de la clave, algoritmo de cifrado…

La siguiente fase consiste en el intercambio de datos cifrados (protocolo de registros SSL). Las claves generadas con el protocolo Handshake se utilizan para garantizar la integridad y la confidencialidad de los datos intercambiados. Las diferentes fases del protocolo son..:

Segmentación de los paquetes en paquetes de tamaño fijo
Compresión (pero poco implementada en la realidad)
Añade el resultado de la función hash compuesta por la clave de cifrado, el número de mensaje, la longitud del mensaje, los datos…
El cifrado de los paquetes y el resultado del hash utilizando la clave simétrica generada durante el apretón de manos.
Añade un encabezado SSL al paquete.


4 – Comparación de los diferentes protocolos

Cada protocolo presentado permite realizar poderosas soluciones VPN. Aquí discutiremos las fortalezas y debilidades de cada uno de estos protocolos.

4.1 – VPN-SSL, ¿una novedad de marketing?

Presentada como la solución milagrosa para permitir a los usuarios itinerantes conectarse a las aplicaciones distribuidas de la empresa, la VPN-SSL sufre problemas relacionados principalmente con los navegadores web utilizados.

El propósito de la utilización de los navegadores web es permitir a los usuarios utilizar una herramienta a la que están acostumbrados y que no requiere ninguna configuración adicional. Sin embargo, cuando un certificado expira el usuario tiene que ir manualmente a renovarlo. Esto puede ser un problema para los usuarios novatos. Además, en la mayoría de los navegadores web la consulta de las listas de certificados revocados no está activada por defecto: toda la seguridad SSL basada en estos certificados plantea un grave problema de seguridad.

Además, nada impide que el cliente descargue una versión modificada de su navegador para poder utilizar nuevas funcionalidades (skins, plugins…). Nada certifica que el navegador no haya sido modificado y que su autoridad de certificación sea efectivamente una.

Finalmente Otro problema relacionado con el uso de los navegadores web como base para la VPN es su especificidad en el mundo de la web. De hecho, por defecto un navegador sólo interceptará las comunicaciones Https o posiblemente Ftps. No se admiten todas las comunicaciones procedentes de otros tipos de aplicaciones (MS Outlook, o una base de datos, por ejemplo). Este problema se suele evitar ejecutando un applet de Java dedicado en el navegador. Pero esto también implica el mantenimiento de este applet (asegurándose de que el cliente tiene la versión correcta, que puede volver a descargarla si es necesario).

Por lo tanto, la idea de que el navegador web es una plataforma ideal para el acceso a la VPN debe ser seriamente matizada.

4.2 – PPTP

El PPTP tiene la ventaja de estar totalmente integrado en los entornos de Windows. Esto significa, en particular, que el acceso a la LAN remota puede hacerse a través del sistema de autenticación de Windows NT: RADIUS y sus derechos y la gestión del grupo. Sin embargo, como muchos productos de Microsoft, la seguridad es el punto débil del :

Mala gestión de contraseñas en entornos mixtos win 95/NT.
Debilidades en la generación de claves de sesión: hechas a partir de un hash de contraseñas en lugar de ser generadas completamente al azar. (facilita los ataques de «fuerza bruta»)
Las debilidades criptográficas del protocolo MsCHAP 1 se corrigieron en la versión 2, pero una entidad independiente no ha realizado ninguna comprobación de esta versión.
Identificación de paquetes no implementada: vulnerabilidad a los ataques de «spoofing».

4.3 – L2TP / IPSec

Los mecanismos de seguridad implementados en el IPSec son más robustos y más reconocidos que los implementados por Microsoft en el PPTP. Por defecto, el protocolo L2TP utiliza el protocolo IPSec. Sin embargo, si el servidor remoto no soporta L2TP, se puede utilizar otro protocolo de seguridad. Por lo tanto, es necesario asegurar que todo el equipo de una VPN L2TP implemente el protocolo IPSec.

El IPSec sólo permite identificar máquinas y no usuarios. Esto es particularmente problemático para los usuarios itinerantes. Por consiguiente, es necesario prestar un servicio de autenticación de usuarios. En el caso de la conexión telefónica, es el identificador de la conexión el que se utilizará para autenticar al usuario. Pero en el caso de la conexión a través de Internet será necesario prever una fase de autenticación adicional cuando se establezca el túnel.

Por otra parte, el IPSec no ofrece ningún mecanismo de calidad de servicio, lo que limita sus aplicaciones: todas las aplicaciones de voz sobre IP o de vídeo sobre IP son imposibles o dependerán completamente de las condiciones de tráfico en la Internet pública.

Por último, el IPSec, debido a las engorrosas operaciones de encriptación/desencriptación, reduce el rendimiento general de las redes. La compra de periféricos caros y dedicados es a menudo indispensable.

4.4 – MPLS

El MPLS es hoy en día la solución más madura del mercado. La posibilidad de obtener una garantía de calidad por contrato es un elemento que pesa mucho en el equilibrio de los responsables de las decisiones. Sin embargo, sólo operadores especializados prestan este servicio, lo que puede plantear nuevos problemas. En primer lugar, son estos operadores de servicios los que fijan los precios. Este precio incluye necesariamente un margen para el proveedor del servicio. Por otra parte, algunas empresas no desean subcontratar sus comunicaciones a un solo operador. De hecho, el estallido de la burbuja bursátil en torno a los valores tecnológicos ha provocado una ola de quiebras de operadores de redes y muchas empresas han visto sus conexiones cortadas de la noche a la mañana. Este riesgo es ahora tenido en cuenta por los responsables de la toma de decisiones en materia de tecnología de la información. Sin embargo, el uso de varios operadores para la gestión de la VPN complica la gestión y la configuración de la misma.

Por último, el alcance de un VPN-MPLS está limitado hoy en día por la capacidad del operador de servicios de cubrir grandes áreas geográficas.

4.5 – MPLS / IPSec

Calidad del servicio
MPLS: Permite priorizar el tráfico a través de clases de servicio
IPSec : La transferencia se hace a través de la Internet pública, permitiendo sólo un servicio de «mejor esfuerzo».
Costo
MPLS: Más bajo que las redes Frame Relay y Atm pero más alto que otras VPNs IP.
IPSec : Baja gracias a la transferencia a través del dominio público de Internet
Seguridad
MPLS: Comparable a la seguridad ofrecida por las redes existentes de Atm y Frame Relay.
IPSec : Seguridad total gracias a la combinación de certificados digitales y Pki para la autenticación, así como una gama de opciones de cifrado, incluyendo triple DES y AES, tales como
Aplicaciones compatibles
MPLS: Todas las aplicaciones, incluyendo el software empresarial de misión crítica que requiere alta calidad de servicio y baja latencia y aplicaciones en tiempo real (video y VoIP)
IPSec : Acceso remoto y acceso nómada seguro. Aplicaciones basadas en la propiedad intelectual, incluidos el correo electrónico e Internet. No es adecuado para el tráfico en tiempo real o de alta prioridad
Alcance
MPLS: Depende de la red MPLS del proveedor de servicios
IPSec : Muy grande ya que depende del acceso a Internet…
Escalabilidad
MPLS: Altamente escalable, ya que no requiere interconexión peer-to-peer entre sitios y los despliegues estándar pueden soportar decenas de miles de conexiones por VPN
IPSec : Los despliegues de mayor envergadura requieren una planificación cuidadosa para abordar las cuestiones de interconexión entre los sitios y de los pares, entre otras.
Honorarios de gestión de la red
MPLS: No se requiere procesamiento de enrutamiento
IPSec : Procesamiento adicional para el cifrado y descifrado
Velocidad de despliegue
MPLS: El proveedor de servicios debe desplegar un router MPLS en el borde de la red para permitir el acceso del cliente.
IPSec : Posibilidad de utilizar la infraestructura de la red Ip existente
Atención al cliente
No es necesario. El MPLS es una tecnología de red
IPSec : Se requiere software o hardware del cliente

5 – Conclusión


Este estudio de las soluciones VPN, pone de manifiesto una fuerte competencia entre los diferentes protocolos que pueden ser utilizados. Sin embargo, es posible distinguir dos rivales que están fuera de juego, a saber, el IPSec y el MPLS. El MPLS es superior en muchos aspectos, pero también proporciona una separación simultánea de los flujos y su confidencialidad. Sin embargo, el rápido desarrollo del mercado puede muy bien dar a este último la ventaja. De hecho, la implementación de las VPN por parte de Ip es generalmente parte de una política para reducir los costos relacionados con la infraestructura de la red de las empresas. Las VPNs sobre IP permiten prescindir de líneas arrendadas como Atm o Frame Relay. El costo de las VPNs de IP es actualmente lo suficientemente interesante como para motivar a muchas compañías a dar el paso. Con el mismo rendimiento, una VPN MPLS cuesta la mitad que una línea Atm. Pero si las soluciones basadas en MPLS están actualmente tomando la delantera sobre las tecnologías IPSec es principalmente gracias a la posible integración de soluciones de telefonía IP. La calidad del servicio ofrecido por el MPLS permite, en efecto, este tipo de uso. Por lo tanto, el mercado de las VPN se está beneficiando de la actual locura por estas tecnologías, que también ayudan a reducir el costo de las infraestructuras de comunicación. Las VPNs son así llevadas a tomar más y más lugar en las redes de computadoras.

Categorías Red

Deja un comentario

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Más info

aceptar