Un túnel es un canal virtual, configurado entre dos sistemas remotos que se encuentran en diferentes redes, sobre una conexión real que involucra más de un nodo intermedio.
La técnica de “tunneling” consiste en encapsular un mensaje de un protocolo dentro de sí mismo aprovechando ciertas propiedades del paquete externo con el objetivo de que el mensaje sea tratado de forma diferente a como habría sido tratado el mensaje encapsulado. De esta forma un paquete puede “saltar” la topología de una red. Por ejemplo, un túnel puede ser usado para evitar un firewall (con los peligros consecuentes de esta decisión). Esta es una consideración a tener en cuenta al configurar un túnel.
El túnel es creado encapsulando un protocolo de red dentro de los paquetes del mismo protocolo, que serán llevados por la red real. Adicionalmente, el paquete encapsulado es encriptado por el emisor, en acuerdo con el receptor (el sistema que se encuentra en del otro lado del túnel) de manera que sólo ambos extremos puedan acceder a los datos transportados. Éste tipo de comunicación solo es posible si el protocolo soporta esta facilidad, denominada modo túnel. La otra modalidad posible, modo transporte, provee protección sólo para protocolos de la capa superior.
De esta forma, el túnel es simplemente la ruta que toman los paquetes encapsulados (y encriptados), dentro de un paquete del mismo protocolo, entre las dos redes. Un atacante puede interceptar los mensajes que viajen por el túnel, pero los datos encapsulados están encriptados y solo pueden ser recuperados por el destinatario final.
En el sistema de destino, el mensaje encapsulado es extraído del paquete recibido, desencriptado, y reinyectado en la red a la que pertenece el receptor (en el caso de un gateway).
Gracias a esto, una organización puede usar de forma segura una red pública para comunicarse con sus usuarios o pares, ya que los paquetes son encriptados antes de ser enviados a través del “túnel”.
Con el uso en modo túnel, el encabezado IP interno (encapsulado) es encriptado, ocultando la identidad del destinatario y del origen del tráfico. Los mismos servicios pueden ofrecerse a un usuario móvil al cual se asigna un IP dinámicamente para una conexión de conexión telefónica: se establece un canal en modo túnel al firewall del ISP funcionando como un gateway de seguridad.
En relación con una conexión o canal seguro, cabe introducir un concepto importante: el de Asociación de Seguridad (Security Asociation - SA). Una asociación de seguridad (AS) es una instancia de una política de seguridad junto con componentes claves. Las SAs son identificadas de forma única por una dirección de destino, un protocolo de seguridad y un índice de parámetros de seguridad o SPI (un conjunto de atributos se seguridad). Las SAs son independientes entre ellas. Una conexión de datos protegida necesita un conjunto de SAs, una por cada dirección y protocolo. Las SAs pueden actuar en una dirección o en ambas. Una SA en modo túnel es una SA aplicada a un túnel, por ejemplo, un túnel IP.
Siempre que en una asociación de seguridad esté involucrado un gateway de seguridad, dicha SA debe operar en modo túnel; de otra forma, si sólo están involucrados sistemas finales (o gateways de seguridad que no actúen como tales –no transporte tráfico de datos, por Ej. comandos SNMP para administración de red–), puede operar también en modo transporte. Por esto, un sistema final (un host) también debe soportar ambos modos de operación, transporte y túnel (ya que puede comunicarse con un gateway, que operará en modo túnel).
Las características más importantes de los protocolos que soportan “tunneling” son encriptado de datos, autenticación, autorización e integridad de datos; muchas de estas características son posibles gracias al encriptado completo del paquete encapsulado.
Una distinción a destacar es que el hecho de que un paquete esté encapsulado en otro no implica que esté encriptado, tampoco lo inverso. De esta forma se obtienen distintos beneficios que responden a necesidades y conveniencias específicas.
¿Qué protocolos soportan tunneling?
Dos de los protocolos más importantes, que surgieron en 1996, son el Microsoft's Point-to-Point Tunneling Protocol (PPTP) y el Cisco's Layer Two Forwarding (L2F). La principal diferencia que existe entre ellos es que aplican túneles en diferentes capas, los túneles PPTP encapsulan paquetes PPP en IP (un protocolo de capa 3) y L2F utiliza protocolos de la capa 2 para crear túneles, como Frame Relay y ATM. Ambos protocolos son usados actualmente. Ninguno de éstos dos protocolos soporta un mecanismo de encriptado estándar.
A partir de estos dos protocolos, ha surgido un tercero, por acuerdo de Microsoft y Cisco, que mezcla sus dos protocolos en uno solo: Layer Two Tunneling Protocol (L2TP). Éste soporta múltiples túneles para un mismo cliente.
Otros dos protocolos que soportan “tunneling” son Authentication Header (AH) y Encapsulating Security Payload (ESP), ambos son protocolos que proveen seguridad a los paquetes encapsulados. En modo túnel, son aplicados a túneles IP (ver Figura 5).
En modo túnel con ESP, el datagrama IP original es situado en la parte encriptada de ESP y todo el frame es encapsulado dentro de un datagrama que tiene el encabezado IP sin encriptar. La información en el encabezado IP (que no es encriptada) es usada para rutear el datagrama hasta su destino. Puede incluirse un encabezado de ruteo IP entre el encabezado IP y ESP
En el modo túnel con AH , el encabezado IP interno mantiene las direcciones de origen y destino originales, mientras que el encabezado IP externo tendrá direcciones diferentes (por Ej. la dirección de un gateway de seguridad). AH protege por completo el paquete IP encapsulado y algunas partes del encabezado IP externo (aquellas que no serán modificadas en la ruta hasta el sistema destinatario).
Estos dos protocolos son utilizados en la Arquitectura de Seguridad para IP, IPsec. En IPsec, que también soporta el modo de operación en túneles, el encabezado IP externo especifica el destino que procesará el paquete y el encabezado IP interno, la dirección final del paquete. El protocolo de seguridad se encuentra después del encabezado IP externo y antes del encabezado IP interno.
Figura 5 - Esquema de operación en modo túnel sobre IP
IPsec opera en hosts o gateways de seguridad aplicando protección al trafico IP. Esta protección está basada en los requerimientos definidos en una Base de Datos de Políticas de Seguridad (SPD) establecida y mantenida por un administrador.
AH en modo túnel puede ser utilizado en hosts o gateways. Si AH es utilizado para proteger el tráfico en gateways debe utilizarse en modo túnel.