Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Configuración de servicios de redireccionamiento HTTP estáticos y basados en motores de enrutamiento

Nota:

A partir de la versión 19.3R2 de Junos OS, el servicio de redireccionamiento HTTP también se admite si habilitó los servicios de próxima generación en la serie MX.

Puede configurar los servicios de redireccionamiento HTTP en el motor de enrutamiento como alternativa al uso de una tarjeta de servicios MS-MPC/MS-MIC o MX-SPC3. Configure el jardín vallado como un filtro de servicio de firewall. Un jardín amurallado es un grupo de servidores que proporcionan acceso a los suscriptores a sitios dentro del jardín amurallado sin necesidad de reautorización a través de un portal cautivo. El filtro de servicio de jardín vallado identifica el tráfico destinado al jardín amurallado y el tráfico destinado fuera del jardín amurallado. Solo el tráfico HTTP destinado fuera del jardín amurallado se envía al motor de enrutamiento para su procesamiento por el servicio de redireccionamiento HTTP. El servicio CPCD se asocia a una interfaz de servicio en el motor de enrutamiento mediante un conjunto de servicios.

Las interfaces de servicio en el motor de enrutamiento se identifican con un prefijo si- (por ejemplo, si-1/1/0). La interfaz si procesa todo el tráfico y los servicios de redirección y reescritura para el motor de enrutamiento. La interfaz si debe estar operativa con un estado activo para habilitar y activar el servicio de entrega de contenido de portal cautivo (CPCD). Una vez habilitado el servicio CPCD, cualquier cambio en el estado operativo de la interfaz si- no afecta a los servicios CPCD existentes.

El servicio CPCD envía el tráfico de solicitud HTTP del suscriptor que no está destinado al jardín amurallado a un servidor de redireccionamiento, que responde con una URL de redireccionamiento. La URL de redireccionamiento envía tráfico a un portal cautivo en lugar de al sitio externo no autorizado. El portal cautivo proporciona servicios de autenticación y autorización para los suscriptores redirigidos antes de otorgarles acceso a servidores protegidos fuera del jardín amurallado.

El servidor de redireccionamiento puede ser local o remoto:

  • Servidor de redireccionamiento local: reside en el enrutador y redirige el tráfico de los suscriptores a un portal cautivo dentro de un jardín amurallado.

  • Servidor de redireccionamiento remoto: reside en un dispositivo como un servidor de políticas dentro de un jardín amurallado detrás del enrutador. La dirección de destino para el tráfico HTTP del suscriptor se reescribe en la dirección del servidor de redireccionamiento remoto. El servidor remoto redirige el tráfico de los suscriptores a un portal cautivo dentro de ese jardín amurallado.

Configuración de un jardín vallado como filtro de servicio de firewall

Cuando se configura el jardín vallado como un filtro de servicio de firewall, el tráfico destinado a los servidores dentro del jardín vallado se identifica y se omite. Todo el resto del tráfico HTTP está destinado a direcciones fuera del jardín amurallado. Dado que este tráfico no coincide con las condiciones del filtro, fluye al motor de enrutamiento para su control.

Nota: En el Junos OS evolucionado, cuando se configura la acción de omitir dentro de un filtro de servicio, se descartan los paquetes omitidos.

Puede configurar el filtro de servicio para que el jardín vallado contenga un único servidor como portal cautivo o una lista de servidores.

  • Configure el jardín vallado con un único servidor como portal cautivo:

    1. Cree el filtro de servicio.

    2. Defina un término de filtro para identificar y omitir el procesamiento del tráfico al portal cautivo.

      1. Especifique las condiciones de filtro para que coincidan con el tráfico destinado al portal cautivo especificando la dirección de destino del portal cautivo y el puerto de destino.

      2. Especifique que el tráfico coincidente omita el procesamiento en la tarjeta de línea.

    3. Defina un término de filtro para identificar el tráfico HTTP de todo el tráfico que no coincida con el término anterior y envíelo para su procesamiento mediante las reglas de servicio de CPCD.

      1. Especifique uno o varios números de puerto HTTP para que coincidan con el tráfico HTTP omitido.

      2. Especifique que el tráfico coincidente lo procesa un servicio CPCD.

    4. Defina un término de filtro para omitir acciones adicionales para cualquier tráfico restante que no sea HTTP.

    Por ejemplo, la siguiente configuración crea un filtro para el tráfico HTTP IPv4, walled-v4, con el portal cautivo en 192.0.2.0. El procesamiento se omite para el tráfico que coincide con la dirección; El tráfico se envía al portal cautivo. El tráfico no coincidente va al término http, donde el tráfico HTTP se selecciona de todo el tráfico omitido y se envía para ser procesado de acuerdo con un servicio CPCD. Por último, la omisión de términos hace que se omita todo el tráfico restante que no sea HTTP.

  • Configure el jardín vallado como una lista o subred de servidores.

    1. Cree el filtro de servicio.

    2. Defina un término de filtro.

      1. Especifique las condiciones de filtro para que coincidan con el tráfico destinado a cualquier servidor en el jardín amurallado especificando una lista de servidores de prefijo de destino.

        Nota: En Junos OS Evolved, puede crear más de una lista de prefijos; cada uno puede tener un máximo de tres o cuatro prefijos.
      2. Especifique que el tráfico coincidente omita el procesamiento en la tarjeta de línea.

    3. Defina un término de filtro para identificar el tráfico HTTP de todo el tráfico que no coincida con el término anterior y envíelo para su procesamiento mediante las reglas de servicio de CPCD.

      1. Especifique uno o varios números de puerto HTTP para que coincidan con el tráfico HTTP omitido.

      2. Especifique que el tráfico coincidente lo procesa un servicio CPCD.

    4. Defina un término de filtro para omitir acciones adicionales para cualquier tráfico restante que no sea HTTP.

    5. (Opcional) Defina una lista de prefijos que especifique los servidores dentro del jardín amurallado. Puede especificar una subred o varias direcciones individuales.

    Por ejemplo, la siguiente configuración crea un filtro para el tráfico HTTP IPv6, walled-v6-list, con un prefijo list, wg-list, que especifica dos servidores en el jardín amurallado. El término de filtro portal6 identifica el tráfico IPv6 destinado al jardín amurallado. El tráfico no coincidente va al término http6, donde el tráfico HTTP se selecciona de todo el tráfico omitido y se envía para ser procesado de acuerdo con un servicio CPCD. Por último, el término skip6 hace que se omita todo el tráfico restante que no sea HTTP.

Configuración de la redirección HTTP para servidores de redirección local y remota

Cuando se realizan solicitudes HTTP para sitios fuera del jardín amurallado, CPCD puede redirigir el tráfico a un portal cautivo para autenticación y autorización.

Configure una regla de servicio CPCD que especifique la acción que se debe realizar para el tráfico destinado fuera del jardín amurallado. Este tráfico fue identificado por el filtro de servicio de jardín amurallado y pasado al servicio, o identificado y aceptado por la regla de servicio de jardín amurallado. La acción que configure dependerá de si está utilizando un servidor de redireccionamiento HTTP local o remoto:

  • Si utiliza un servidor de redireccionamiento HTTP local en el enrutador, especifique la acción de redireccionamiento.

  • Si está utilizando un servidor de redireccionamiento HTTP remoto, que reside en un jardín amurallado detrás del enrutador, no puede simplemente especificar una URL de redireccionamiento. En este caso, la regla de servicio debe reescribir la dirección IP de destino para el tráfico. La nueva dirección de destino es la dirección del servidor de redireccionamiento HTTP remoto. Luego, el servidor remoto proporciona una URL de redireccionamiento para enviar el tráfico a un portal cautivo.

El servicio CPCD se asocia a una interfaz de servicios mediante un conjunto de servicios. Tanto el conjunto de servicios como el filtro de servicio de jardín vallado se aplican a una interfaz configurada estáticamente.

  1. Acceda al nivel de configuración del servicio CPCD.
  2. Cree una regla para aplicarla al tráfico destinado fuera del jardín amurallado.
  3. Especifique que la regla se aplica al tráfico entrante.
  4. Defina un término de regla para que CPCD aplique una acción al tráfico HTTP. Dado que el jardín vallado está configurado como un filtro de servicio, el tráfico ya está filtrado para ser tráfico HTTP antes de enviarse al servicio.
    • Para un servidor de redireccionamiento HTTP local, proporcione la dirección URL de redireccionamiento, que es la dirección URL del portal cautivo con la dirección URL original (fuera del jardín amurallado) anexada:

    • Para un servidor de redireccionamiento HTTP remoto, proporcione la dirección de destino del servidor remoto:

Por ejemplo, en la siguiente configuración para un servidor local, la regla de servicio CPCD redir-svc redirige el tráfico a un portal cautivo, http://www.portal.example.com. La URL original introducida por el suscriptor se adjunta a la URL de redireccionamiento.

La siguiente configuración para un servidor remoto crea la regla de servicio CPCD rewr-svc que reescribe la dirección de destino original en la dirección del servidor remoto, 192.0.2.230.

Configuración del perfil de servicio y del conjunto de servicios para asociar el perfil de servicio a una interfaz de servicio

Los conjuntos de servicios definen uno o más servicios que debe realizar el motor de enrutamiento. Para los servicios de redireccionamiento HTTP, se define un perfil de servicio CPCD que incluye reglas de CPCD. El conjunto de servicios aplica el perfil de servicio CPCD a una interfaz de servicio específica.

  1. Cree el perfil de servicio.
  2. Especifique una o varias reglas CPCD para el perfil de servicio.
  3. Cree el conjunto de servicios.
  4. Especifique que el conjunto de servicios es para CPCD basado en motor de enrutamiento.
  5. Especifique el perfil de servicio de CPCD.
  6. Especifique la interfaz de servicio.

Por ejemplo, la siguiente configuración crea el perfil de servicio CPCD redir-prof, que hace referencia a la regla CPCD redir-svc. El conjunto de servicio ss2 se especifica como para CPCD basado en motores de enrutamiento. El conjunto asocia el perfil de servicio CPCD redir-prof con la interfaz de servicio si-4/0/0.

Asociar un conjunto de servicios CPCD y un filtro de servicio a una interfaz lógica

Para utilizar los servicios de redireccionamiento HTTP, debe asociar el conjunto de servicios CPCD a una interfaz lógica. Si el jardín vallado está configurado como un filtro de servicio, debe adjuntarlo a la misma interfaz que el conjunto de servicios. El tráfico que entra y sale de esa interfaz se filtra mediante el filtro de servicio. El tráfico identificado para el mantenimiento se envía a la interfaz de servicio del motor de enrutamiento, donde se aplica el perfil CPCD.

  1. Habilite los servicios en línea y especifique un ancho de banda.
  2. Configure la interfaz lógica de servicios en línea.
  3. Configure la familia de direcciones.
  4. Adjunte el conjunto de servicios y el filtro de servicio a la interfaz.
    • Interfaz estática:

    • Interfaz dinámica

Por ejemplo, la siguiente configuración habilita los servicios en línea en la tarjeta de línea en la ranura de chasis 4 y en el MIC en la ranura 0 de la tarjeta de línea. Asigna una dirección a la interfaz lógica. A continuación, asocia el conjunto de servicios sset2 y el filtro de servicio walled-v4 a ge-2/0/1.0 para la familia de direcciones IPv4. El conjunto de servicios y el filtro se aplican a la entrada y salida de la interfaz.

Insertar etiquetas de encabezado GET que el servidor HTTP puede usar para controlar el acceso al contenido

En algunos casos, es posible que desee que el servidor HTTP determine si desea permitir que los usuarios accedan al contenido. A partir de Junos OS versión 19.1, puede configurar filtros de servicio de redireccionamiento HTTP estáticos basados en el motor de enrutamiento para especificar las etiquetas que el motor de enrutamiento inserta en el encabezado del paquete de los mensajes HTTP GET para este propósito. Puede insertar etiquetas para el nombre de host del enrutador o la dirección MAC, dirección IPv4 o dirección IPv6 del suscriptor.

Los siguientes pasos corresponden a la Figura 1.

  1. El dispositivo del usuario, el cliente HTTP, realiza una secuencia de apretón de manos TCP con el servidor HTTP.

  2. Cuando el apretón de manos se realiza correctamente, el cliente envía un HTTP GET con la URL solicitada por el usuario.

  3. El motor de enrutamiento modifica esa dirección URL mediante la concatenación de una cadena de caracteres aleatorios encerrados por /$ y $/. La longitud de la cadena coincide con la longitud combinada de las etiquetas que se insertarán más adelante. La cadena sirve como identificador cuando la devuelve el cliente.

    Supongamos que la longitud de las etiquetas que se van a insertar es de 30 caracteres y que la URL solicitada es http://192.51.100.20/test.html. El motor de enrutamiento devuelve la dirección URL modificada con una cadena de 30 caracteres aleatorios, como en el ejemplo siguiente:

    http://192.51.100.20/test.html/$IIGSbVdNDTDvnJFIAyoysXwVJawoYj$/

  4. El motor de enrutamiento envía la URL modificada con un código de estado de 302 (encontrado) o 307 (redireccionamiento temporal). El código enviado depende de la versión de HTTP que se esté utilizando y de la versión de Junos OS en el BNG. Ambos códigos indican al cliente que la solicitud de acceso debe reenviarse con la URL modificada.

  5. El motor de enrutamiento restablece la conexión TCP con el cliente y el servidor.

  6. El cliente realiza un apretón de manos TCP con el servidor HTTP para una URL modificada.

  7. El cliente envía un HTTP GET con la URL modificada.

  8. El motor de enrutamiento comprueba si la longitud de la cadena concatenada es la misma que se envió al cliente.

    • Si la longitud es correcta, elimina la URL a la URL solicitada original, inserta las etiquetas en el encabezado GET y reenvía el GET al servidor HTTP. Si está configurado, el GET se puede reenviar opcionalmente a una URL de redireccionamiento en lugar del servidor solicitado original.

    • Si la longitud no es correcta, el motor de enrutamiento descarta el paquete e incrementa el contador de caídas.

  9. El servidor HTTP evalúa el mensaje GET y envía una respuesta al cliente con un código de estado de 200 (OK) si concede acceso o 403 (Forbidden) si se rechaza la solicitud.

  10. El motor de enrutamiento finaliza la conexión TCP con el cliente y el servidor.

Figura 1: Inserción de etiquetas para el flujo de mensajes de redireccionamiento HTTP. Diagram of HTTP and TCP flow illustrating URL modification by BNG. Highlights steps from initial TCP SYN to HTTP 200 or 403 response.
Nota:

Las etiquetas se insertan en el encabezado en el mismo orden en que se configuran. El nombre de etiqueta distingue entre mayúsculas y minúsculas, por lo que tag ABCD y tag abcd se procesan como nombres diferentes.

Para configurar las etiquetas que se van a insertar en los encabezados GET:

  1. Acceda al nivel de configuración del servicio CPCD.
  2. Cree una regla para aplicarla al tráfico destinado fuera del jardín amurallado.
  3. Especifique que la regla se aplica al tráfico entrante.
  4. (Opcional) Especifique una o varias direcciones de destino para filtrar el tráfico para el etiquetado.
    Nota:

    Como alternativa, puede especificar direcciones de destino para identificar el tráfico en el filtro de servicio de firewall.

  5. Defina un término de regla para que CPCD aplique una acción al tráfico HTTP. Dado que el jardín vallado está configurado como un filtro de servicio, el tráfico ya está filtrado para ser tráfico HTTP antes de enviarse al servicio.

Por ejemplo, la siguiente configuración crea una regla de servicio, insert-rule, que coincide con el tráfico en la interfaz de entrada. El término t1 inserta dos etiquetas, x-mac-addr con el dirección MAC del suscriptor y x-sub-ip con el valor de la dirección IPv4 del suscriptor.

En la siguiente regla de ejemplo, solo se etiqueta el tráfico con una dirección de destino que coincida con 198.51.100.50 o 198.51.100.75. Las etiquetas se insertan para la dirección IP del suscriptor y el nombre de host del enrutador. Un segundo término de la regla proporciona una URL de redireccionamiento en la que el tráfico se reenvía en lugar de enviarse a la URL solicitada original.

Al igual que con cualquier regla de servicio CPCD para el redireccionamiento HTTP basado en motores de enrutamiento, debe incluir las reglas en un perfil de servicio CPCD y, a continuación, utilizar un conjunto de servicios CPCD para asociar el perfil a una interfaz de servicio en línea. El motor de enrutamiento utiliza las reglas para procesar el tráfico HTTP que pasa un filtro de servicio en la misma interfaz lógica que el conjunto de servicios.

Considere la siguiente configuración de ejemplo. La regla de redireccionamiento de etiquetas se define para hacer coincidir el tráfico en la interfaz de entrada y, luego, insertar dos etiquetas en el encabezado GET, el valor de la dirección IP del suscriptor y el nombre de host del enrutador. A continuación, la regla proporciona una URL de redireccionamiento para el tráfico etiquetado. El perfil de servicio CPCD http-insert-redirect se define para incluir esta regla.

El conjunto de servicios sset1 se define como para CPCD basado en el motor de enrutamiento. Aplica el perfil de servicio CPCD a una interfaz de servicio en línea.

La etiqueta walled-tag de filtro de servicio identifica y actúa sobre tres tipos de tráfico: tráfico HTTP para enviar al jardín amurallado en 192.0.2.100, tráfico HTTP destinado a 198.51.100.50 para ir al procesamiento de servicio y todo el resto del tráfico que se omita. Este es un ejemplo de cómo hacer coincidir una dirección de destino en el filtro de servicio en lugar de en la regla de servicio.

El service-set sset1 y el service filter walled-tag se aplican a una interfaz lógica.

Tabla de historial de cambios

La compatibilidad de la función depende de la plataforma y la versión que utilice. Utilice el Explorador de características para determinar si una característica es compatible con su plataforma.

Lanzamiento
Descripción
19.1
A partir de Junos OS versión 19.1, puede configurar filtros de servicio de redireccionamiento HTTP estáticos basados en el motor de enrutamiento para especificar las etiquetas que el motor de enrutamiento inserta en el encabezado del paquete de los mensajes HTTP GET para este propósito.