¿Qué es un proxy transparente?

Apoderados, Jul-08-20215 minutos de lectura

Podemos definir un proxy transparente como un servidor que actúa como sistema intermediario interceptando la conexión entre un usuario final y un proveedor de contenidos. Otros nombres para proxy transparente son proxy en línea o proxy forzado. Utilizamos la palabra "transparente" con el proxy porque intercepta las peticiones interceptando los paquetes dirigidos al destino

Podemos definir un proxy transparente como un servidor que actúa como sistema intermediario interceptando la conexión entre un usuario final y un proveedor de contenidos. Otros nombres para proxy transparente son proxy en línea o proxy forzado. Utilizamos la palabra "transparente" con el proxy porque intercepta las peticiones interceptando los paquetes dirigidos al destino, haciendo que parezca que el propio destino gestiona la petición. Los proxies transparentes son configurados por el operador del sitio web o de la red y no por el usuario final.

A veces, también utilizamos el término "proxy forzado" para referirnos a un proxy transparente. Se debe a que puede aplicarse a la conexión de un usuario sin modificar la configuración del proxy de su ordenador. En consecuencia, los proxies transparentes pueden imponerse a los usuarios sin su consentimiento, pero en muchos casos conocen su presencia. 

Ejemplos de proxies transparentes

Un cortafuegos es un ejemplo de proxy transparente que permite el paso de tráfico entre una red interna e Internet, pero bloquea el tráfico si infringe la tabla de reglas del cortafuegos.

Otros ejemplos de proxies transparentes son las redes de distribución de contenidos (CDN). Proporcionan redundancia, almacenamiento en caché y mejoran la velocidad sin modificar ni exponer el sistema de origen. El usuario piensa que está directamente conectado al proveedor del servicio, pero, en realidad, la CDN gestiona todas sus peticiones. Así es como empresas tecnológicas como Google, Twitter y Facebook gestionan millones de peticiones con un tiempo de inactividad mínimo.

Ajustes comunes del proxy transparente

Los siguientes son los ajustes estándar del proxy transparente siempre que lo configuremos:

  • Autenticación: Proporciona al servidor las mismas credenciales que los usuarios detrás del proxy.
  • Interceptación: Define cómo el proxy transparente intercepta el tráfico a nivel de router o a nivel de sistema operativo.
  • Caché: En se especifica si el servidor proxy debe o no almacenar en caché el contenido para los usuarios que regresan.
  • Proxy inverso: En lugar de configurar el proxy para interceptar el acceso remoto, podemos colocarlo delante de un servidor web para acelerar el rendimiento del usuario. 
  • Flujo de datos, filtrado de chat: Podemos configurar el proxy transparente para que los usuarios no puedan acceder a puertos o protocolos específicos.

Usos del proxy transparente - Lado del cliente

Podemos desplegar un proxy transparente en el lado del cliente, lo que significa que el proxy intercepta todo el tráfico hacia y desde un extremo del cliente. Los usos de los proxies transparentes en el lado del cliente son:

Caché transparente

Cuando varias personas acceden al mismo contenido desde la misma zona o ubicación -por ejemplo, cuando varios estudiantes ven el mismo sitio de noticias a través de su red universitaria-, resulta más eficiente utilizar un proxy transparente para almacenar inicialmente el contenido en caché y servirlo desde la caché a los usuarios posteriores.

Autenticación

Los operadores de Internet móvil y los puntos wifi públicos utilizan a veces proxies transparentes para obligar a los usuarios a autenticarse en la red y aceptar sus condiciones de servicio. Sólo se les permite navegar cuando el usuario se certifica y acepta los términos y condiciones. 

La mayoría de los usuarios no tienen ni idea de que toda la conexión puede ser interceptada y vigilada por el operador, incluso después de la pantalla inicial de autenticación mediante proxy transparente.

Control del tráfico

Cuando estamos operando una red, podemos configurar un proxy transparente para monitorizar el tráfico y el comportamiento de los usuarios, pero la monitorización del tráfico también tiene muchos usos ilegítimos. Por ejemplo, un operador de wifi pública sin escrúpulos ni confianza puede monitorizar fácilmente las conexiones de los usuarios y robar credenciales y datos.

Gateway Proxies

Podemos utilizar un proxy de puerta de enlace para modificar o bloquear el tráfico de red basado en reglas. Un ejemplo de proxy de puerta de enlace es un proxy de cortafuegos transparente del que se habla en el ejemplo anterior.

Filtrado de contenidos

También podemos utilizar un proxy transparente para filtrar contenidos innecesarios y no deseados. Por ejemplo, el proxy puede abstenerse de reenviar la petición al servidor web cuando se solicita un sitio web específico. En su lugar, intercepta la conexión y muestra un aviso o un mensaje de error al usuario.

Usos del proxy transparente - Lado del servidor

Protección contra la denegación de servicio

Podemos proteger un servidor contra un ataque de denegación de servicio (DoS) SYN-flood utilizando un tipo de proxy transparente, es decir, la interceptación TCP. Este realiza la función de interceptar todo el tráfico hacia un servidor web, aceptando las peticiones de los clientes y realizando un handshake de tres vías. Además, si la interceptación del tráfico tiene éxito, realiza un handshake de tres vías con el servidor, uniendo así las dos medias conexiones entre cliente y servidor.

El Protocolo de Control de Transmisión intercepta las peticiones TCP y suele esperar 30 segundos para establecer conexiones. Entra en "modo agresivo" cuando el número de conexiones inactivas supera un determinado umbral. En este modo, cada nueva conexión que llega provoca la eliminación de la conexión pasiva más antigua.

Sin embargo, la técnica anterior ya no es eficaz contra los modernos ataques de denegación de servicio distribuido (DDoS) a gran escala. Esto se debe a que los atacantes, hoy en día, controlan millones de ordenadores zombis y servidores de gran potencia para crear inundaciones SYN que desbordan a un controlador de interceptación TCP.

Por este motivo, la mayoría de las organizaciones utilizan hoy en día servicios basados en la nube como DDoS Protection de Imperva. Estos servicios pueden proteger contra grandes ataques DDoS, y también pueden escalar bajo demanda, lidiando y manejando ataques a gran escala. 

Por ejemplo, los servicios DDoS pueden evitar los ataques a la capa de aplicación y los ataques de protocolo que no se producen en la capa TCP.

CDN para la optimización del front-end

Podemos definir una Red de Entrega de Contenidos (CDN) como una red distribuida globalmente de servidores proxy que sirve y almacena en caché contenidos a los usuarios cerca de su ubicación geográfica.

Un ejemplo de CDN es la Red Global de Entrega de Contenidos de Imperva, un proxy transparente que opera en el lado del servidor. Su propósito es realizar una optimización front-end para mejorar la experiencia del usuario final. Intercepta el tráfico hacia un servidor web y ofrece el mismo contenido desde la caché del servidor en lugar de dejar que el usuario acceda directamente al servidor. Como resultado, se mejora el rendimiento del usuario y se reducen los recursos del sistema necesarios en el servidor.

Limitaciones del proxy transparente

Aunque el proxy transparente tiene una gran variedad de ventajas, puede generar algunas frustraciones en entornos corporativos complejos.

Falta de robustez: Si se establece una conexión entre un cliente y una caché y se produce un cambio de enrutamiento que hace que el cliente adopte una ruta que ya no fluye a través del dispositivo de red "desviador", la sesión se romperá y el usuario tendrá que recargar la página.

Por otro lado, si los routers de Internet son aleatorios (un router anuncia alternativamente una red de destino en rápida secuencia), los resultados serán aún más impredecibles.

Dependencia del navegador: La mayoría de los proxies transparentes dependen de que el navegador proporcione el nombre de host del servidor de origen en la cabecera de la petición HTTP para funcionar correctamente.

Es necesario ya que estas cachés no tienen acceso a la dirección IP de destino del servidor de origen a partir de la dirección IP del paquete.

Por lo tanto, cuando se produce una pérdida de caché, no pueden identificar la dirección del servidor de origen al que enviar la solicitud.

Conclusión

Hemos hablado de que el tráfico de Internet puede controlarse y filtrarse mediante el uso de un proxy transparente. También da forma a la manera en que interactuamos con la web. Tanto si sirve datos más rápidamente filtrando contenidos no deseados, almacenándolos en caché o dando a las empresas más control sobre sus redes, el proxy transparente añade funcionalidad a Internet sin añadir ningún inconveniente.