Un proxy inverso se utiliza para proporcionar servicios de equilibrio de carga y, cada vez más, para reforzar la seguridad de las aplicaciones web en puntos estratégicos de inserción de una red mediante cortafuegos de aplicaciones web, cortafuegos de entrega de aplicaciones e inspección profunda del contenido.
En la red y el tráfico web, un proxy es un dispositivo o servidor que actúa en nombre de otros dispositivos. Se sitúa entre dos entidades y realiza un servicio. Los proxies son soluciones de hardware o software que se sitúan entre el cliente y el servidor para gestionar las solicitudes y, en ocasiones, las respuestas.
Por lo general, un servidor proxy inverso se sitúa delante de los servidores web y reenvía las solicitudes de los clientes (por ejemplo, el navegador web) a esos servidores web. Los recursos solicitados se devuelven entonces al cliente, y parece como si se hubieran originado en el propio servidor proxy. Esto proporciona un nivel adicional de abstracción y control para asegurar el flujo fluido del tráfico de la red entre los clientes y los servidores. Un proxy inverso también proporciona la capacidad de dirigir las solicitudes en base a una amplia variedad de parámetros, como el dispositivo del usuario, la ubicación, las condiciones de la red, el estado de la aplicación e incluso la hora del día.
Un proxy inverso se utiliza para proporcionar servicios de equilibrio de carga para proporcionar experiencias web más fluidas y, cada vez más, para reforzar la seguridad de las aplicaciones web en puntos estratégicos de inserción de una red mediante cortafuegos de aplicaciones web, cortafuegos de entrega de aplicaciones e inspección profunda del contenido.
Cuando se combina con implementaciones de nube, un proxy inverso puede permitir la explosión de una explosión de la nube y arquitecturas de división de aplicaciones para obtener las ventajas económicas de la nube sin disminuir el control y la seguridad.
Si bien el uso más común de un proxy inverso es proporcionar equilibrio de carga para las aplicaciones web y las API, los proxies inversos también se implementan con el fin de descargar servicios de las aplicaciones y así mejorar el rendimiento mediante la aceleración SSL, la compresión inteligente y el almacenamiento en caché. Los proxies inversos también permiten federar los servicios de seguridad para múltiples aplicaciones mediante el refuerzo de la seguridad de las aplicaciones web.
Un proxy inverso puede actuar como un simple servicio de reenvío o participar activamente en el intercambio entre el cliente y el servidor. Cuando el proxy trata al cliente y al servidor como entidades independientes mediante la implementación de pilas de red duales, se denomina proxy completo.
Un proxy completo crea una conexión de cliente TCP junto con una conexión de servidor TCP independiente con un pequeño hueco en medio. El cliente se conecta al proxy en un extremo y el proxy establece una conexión separada e independiente con el servidor. Esta conexión es bidireccional en ambos lados. Nunca se da la mezcla de conexiones del lado del cliente al lado del servidor ya que las conexiones son independientes.
La función de un proxy inverso puede realizarla un dispositivo, un software o un servicio, dependiendo de la complejidad del entorno y las necesidades de la organización.
Ideal para entornos nativos de la nube, NGINX Plus es un proxy inverso basado en software que lleva a cabo el equilibrio de carga, el enrutamiento de Capa 7 y la optimización del rendimiento de la web, de forma similar a un dispositivo de hardware. NGINX Plus puede implementarse en la nube pública así como en centros de datos privados con un coste menor que un proxy completo.
Para entornos más complejos e híbridos, el sistema BIG-IP de F5 es un proxy completo que puede implementarse como un servidor proxy completo inverso capaz de interceptar, inspeccionar e interactuar con solicitudes y respuestas. Esto incluye las funciones básicas de equilibrio de carga y optimización del rendimiento de la web, así como servicios más avanzados de gestión del tráfico, como la seguridad de la capa de aplicaciones, la aceleración de la web, el enrutamiento de páginas y el acceso remoto seguro.