Proxy directo y proxy inverso: descifrado de dos posturas diferentes del proxy de red

reenviar proxy

  • En el proxy directo, el servidor proxy envía solicitudes al servidor de destino en nombre del cliente y devuelve la respuesta del servidor de destino al cliente. Por lo general, el cliente debe configurarse para usar un proxy de reenvío para acceder a recursos externos, y el servidor de destino no conoce el servidor proxy.
    inserte la descripción de la imagen aquí
    Las características principales del proxy de reenvío incluyen:
  1. Cliente proxy: Iniciar una solicitud al servidor proxy en nombre del cliente. El cliente sabe que está utilizando un proxy y envía la solicitud al servidor proxy, que luego solicita datos del servidor de destino en nombre del cliente.

  2. Ocultar la IP real del cliente: cuando el servidor proxy de reenvío procesa la solicitud, ocultará la dirección IP real del cliente, aumentando así la privacidad y la seguridad del cliente. El servidor de destino solo puede ver la dirección IP del servidor proxy y no puede identificar directamente al cliente real.

  3. Evitar las restricciones de acceso: el proxy de reenvío puede ayudar a los clientes a eludir las restricciones de acceso o las restricciones del firewall. Por ejemplo, algunos países u organizaciones pueden restringir el acceso a sitios web o servicios específicos, pero al usar un proxy de reenvío, los clientes pueden acceder a estos recursos restringidos.

  4. Caché: el servidor proxy de reenvío también puede almacenar en caché la respuesta del servidor de destino, lo que reduce el tráfico de solicitudes repetidas, mejora la velocidad de acceso y reduce la carga en el servidor de destino.

  • Ejemplo común: el entorno de red de una empresa o escuela. Si hay un servidor proxy de reenvío en la red, todas las solicitudes de los clientes deben enviarse a la red externa a través del servidor proxy. Esto permite controlar y monitorear el acceso a recursos externos y puede fortalecer los controles de seguridad en los clientes.

proxy inverso

  • El proxy inverso es un método de configuración del servidor proxy, que recibe la solicitud del cliente en nombre del servidor back-end, reenvía la solicitud al servidor back-end y luego devuelve la respuesta del servidor back-end al cliente. A diferencia del proxy de reenvío**, el cliente no sabe que el servidor back-end está gestionando realmente la solicitud, pero piensa que se está comunicando directamente con el servidor proxy. **
    inserte la descripción de la imagen aquí
    Las características principales de un proxy inverso incluyen:
  1. Servidor proxy back-end: el servidor proxy inverso procesa la solicitud del cliente en nombre del servidor back-end.El cliente no conoce la existencia del servidor back-end, pero solo sabe comunicarse con el servidor proxy. Un servidor proxy actúa como intermediario entre el cliente y el servidor backend.

  2. Ocultar el servidor de back-end: mediante el uso de un proxy inverso, la dirección IP real y la estructura del servidor de back-end se pueden ocultar, lo que mejora la seguridad y la protección de la privacidad del servidor. El cliente no puede acceder directamente al servidor backend, solo puede comunicarse con el servidor proxy.

  3. Equilibrio de carga: el proxy inverso puede distribuir solicitudes de clientes a varios servidores backend para lograr el equilibrio de carga. Esto puede mejorar el rendimiento y la confiabilidad del sistema, garantizar que los recursos del servidor se utilicen de manera razonable y evitar que se sobrecargue un servidor.

  4. Caché: el servidor proxy inverso puede almacenar en caché la respuesta del servidor back-end. Cuando varios clientes solicitan el mismo recurso, pueden devolver directamente la respuesta almacenada en caché, lo que reduce la carga del servidor back-end y mejora la velocidad de respuesta y las capacidades de procesamiento simultáneo. .

  5. Filtrado de seguridad: el proxy inverso se puede usar para implementar algunas medidas de filtrado de seguridad, como bloquear el acceso a direcciones IP específicas, filtrar solicitudes maliciosas, etc., para proteger los servidores back-end de ataques maliciosos.

Un ejemplo común es el equilibrio de carga del sitio web. Cuando un usuario visita un sitio web, el servidor proxy inverso recibe primero la solicitud y luego el proxy inverso reenvía la solicitud a uno de los múltiples servidores back-end de acuerdo con el algoritmo de equilibrio de carga. El servidor backend procesa la solicitud y devuelve una respuesta al proxy inverso, que luego se la devuelve al usuario. Los usuarios no contactan directamente con el servidor backend, sino que solo se comunican con el servidor proxy inverso.

Resumir

  • Resumen: un proxy de reenvío es un servidor proxy que envía solicitudes en nombre del cliente, oculta la IP real del cliente, permite eludir las restricciones de acceso y proporciona almacenamiento en caché. Por el contrario, un proxy inverso es un servidor proxy que recibe solicitudes en nombre del servidor, oculta la IP real del servidor e implementa funciones como equilibrio de carga y filtrado de seguridad.

Discriminación: la identidad dual de nginx

  • De hecho, Nginx tiene dos identidades: Nginx puede actuar como un proxy directo y un proxy inverso al mismo tiempo, dependiendo de si se comunica en nombre del cliente o del servidor back-end.
  1. Proxy de reenvío: Nginx es un proxy de reenvío cuando está configurado para enviar solicitudes a un servidor de destino externo en nombre del cliente .

    • En este caso, el cliente sabe y se da cuenta de que está enviando la solicitud a través del servidor proxy, pero el servidor objetivo no sabe que el cliente real existe porque el servidor objetivo solo puede ver la dirección IP del servidor proxy.
    • Esta situación suele utilizarse en una red de área local o en algunos entornos de red específicos para controlar los derechos de acceso de los clientes o eludir las restricciones de acceso, como VPN.
  2. Proxy inverso: cuando Nginx está configurado para enviar solicitudes a servidores internos en nombre de clientes externos, es un proxy inverso .

    • En este caso, el cliente no sabe que Nginx realmente está procesando la solicitud, pero cree que se comunica directamente con el servidor de destino detrás de Nginx . Nginx reenviará la solicitud del cliente a varios servidores internos de acuerdo con la configuración y devolverá la respuesta al cliente después del procesamiento.
    • Esta situación generalmente se usa para equilibrar la carga, proporcionar barreras de seguridad, ocultar servidores backend, etc.
  • Nginx se denomina servidor proxy inverso porque, en la mayoría de los casos, las personas usan Nginx configurado como un proxy inverso para manejar las solicitudes de los clientes, comunicándose con el cliente en nombre del servidor back-end . Pero, de hecho, Nginx también se puede usar como proxy de reenvío con la configuración adecuada.

Supongo que te gusta

Origin blog.csdn.net/yang2330648064/article/details/131563514
Recomendado
Clasificación