Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Descripción general de ALG

Una puerta de enlace de capa de aplicación (ALG) permite que la puerta de enlace analice cargas de capa de aplicación y tome decisiones para permitir o denegar tráfico al servidor de aplicaciones. Las ALG son compatibles con las aplicaciones como el protocolo de transferencia (FTP) y varios protocolos IP que utilizan la carga de capa de aplicación para comunicar los puertos de protocolo de control de transmisión dinámico (TCP) o protocolo de datagrama de usuario (UDP) en los que las aplicaciones abren conexiones de datos.

Descripción general de ALG

Una puerta de enlace de capa de aplicación (ALG) es un componente de software que está diseñado para administrar protocolos específicos, como el Protocolo de iniciación de sesión (SIP) o FTP en dispositivos de Juniper Networks que ejecutan Junos OS. El módulo ALG es responsable del procesamiento de paquetes consciente de la capa de aplicación en los conmutadores.

La funcionalidad de ALG se puede activar mediante un servicio o una aplicación configurada en la política de seguridad:

  • Un servicio es un objeto que identifica un protocolo de aplicación mediante información de capa 4 (como números de puerto TCP y UDP estándar y aceptados) para un servicio de aplicación (como Telnet, FTP y SMTP).

  • Una aplicación especifica la aplicación de capa 7 que se asigna a un servicio de capa 4.

Un servicio predefinido ya tiene una asignación a una aplicación de capa 7. Sin embargo, para los servicios personalizados, debe vincular el servicio a una aplicación explícitamente, especialmente si desea que la política aplique un ALG.

Las ALG para paquetes destinados a puertos bien conocidos se activan por tipo de servicio. El ALG intercepta y analiza el tráfico especificado, asigna recursos y define políticas dinámicas para permitir que el tráfico pase de forma segura a través del dispositivo:

  1. Cuando un paquete llega al dispositivo, el módulo de flujo reenvía el paquete según la regla de seguridad establecida en la política.

  2. Si se encuentra una política para permitir el paquete, se asigna el tipo de servicio o tipo de aplicación asociado y se crea una sesión para este tipo de tráfico.

  3. Si se encuentra una sesión para el paquete, no se necesita ninguna coincidencia de regla de política. El módulo ALG se activa si ese servicio o tipo de aplicación determinado requiere el procesamiento de ALG compatible.

El ALG también inspecciona el paquete en busca de dirección IP integrada y información de puerto en la carga del paquete, y realiza el procesamiento de traducción de direcciones de red (TDR) si es necesario. Un búfer de mensajes solo se asigna cuando el paquete está listo para procesarse. El búfer se libera después de que el paquete complete el manejo de ALG, lo que incluye la modificación de la carga, la realización de TDR, la apertura de un agujero para una nueva conexión entre un cliente y un servidor, y la transferencia de datos entre un cliente y un servidor situados en lados opuestos de un dispositivo de Juniper Networks

El tamaño máximo de la jbuf es de 9 Kb. Si el tamaño del búfer del mensaje es de más de 9 Kb, el mensaje completo no se puede transferir al controlador de paquetes ALG. Esto hace que los paquetes subsiguientes de la sesión eviten el manejo de ALG, lo que da como resultado un error de transacción. La optimización del búfer de mensajes ALG se mejora para reducir el alto consumo de memoria.

El ALG también abre una puerta para que la dirección IP y el número de puerto permitan el intercambio de datos para las sesiones de control y datos. La sesión de control y la sesión de datos se pueden combinar para tener el mismo valor de tiempo de espera, o pueden ser independientes.

Las ALG se admiten en clústeres de chasis.

Descripción de servicios ALG personalizados

De forma predeterminada, las ALG están enlazadas a servicios predefinidos. Por ejemplo, el FTP ALG está enlazado a junos-ftp, el ALG RTSP está enlazado a junos-rtsp, y así sucesivamente.

Un servicio predefinido ya tiene una asignación a una aplicación de capa 7. Sin embargo, para los servicios personalizados, debe vincular el servicio a una aplicación explícitamente, especialmente si desea que la política aplique un ALG.

Cuando aplique servicios predefinidos a su política, el tráfico que coincida con el servicio se enviará a su ALG correspondiente para su procesamiento posterior. Sin embargo, en algunas circunstancias, es posible que deba definir servicios personalizados para lograr lo siguiente:

  • Utilice el controlador ALG para procesar tráfico especial, con protocolos especificados por el cliente, puertos de destino, entre otros.

  • Permitir tráfico pero omitir el procesamiento de ALG, cuando el tráfico coincide con servicios predefinidos que se enlazan con ALG.

  • Agregue más aplicaciones al conjunto de aplicaciones actual de ALG.

En el ejemplo siguiente, debe navegar por varios niveles en la jerarquía de configuración. Para obtener instrucciones sobre cómo hacerlo, consulte Uso del editor de CLI en el modo de configuración en la Guía del usuario de cli.

Los tres usos de servicios personalizados se ilustran a continuación, teniendo en cuenta MS-RPC ALG como un ejemplo:

  • Utilize the ALG handler to process special traffic:

    El tráfico con el puerto de destino TCP 6000 se enviará a MS-RPC ALG para su procesamiento posterior.

  • Permit traffic but bypass ALG processing:

    El tráfico ignorará todas las ALG con el puerto de destino TCP 135.

  • Add more applications to an ALG’s application set: para agregar aplicaciones como servicios MS-RPC o Sun RPC, que no están predefinidos en los dispositivos:

    Se permitirá el tráfico de datos MS-RPC con TCP, uuid e3514235-4b06-11d1-ab04-00c04fc2dcd2, cuando se aplique custom-msrpc a la política junto con otras aplicaciones predefinidas junos-ms-rpc**.

Descripción del ALG DNS IPv6 para enrutamiento, TDR y TDR-PT

El sistema de nombres de dominio (DNS) es la parte de la ALG que controla el tráfico DNS, monitorea los paquetes de consulta y respuesta dns, y cierra la sesión si la marca DNS indica que el paquete es un mensaje de respuesta.

La ALG DNS admite IPv4 en modo de ruta para Junos OS versión 10.0 y versiones anteriores. En la versión 10.4 de Junos OS, esta función implementa la compatibilidad con IPv6 en la ALG de DNS para enrutamiento, traducción de direcciones de red (TDR) y traducción de protocolo de dirección de red (TDR-PT).

Cuando el ALG DNS recibe una consulta DNS del cliente DNS, se realiza una comprobación de seguridad en el paquete DNS. Cuando la ALG DNS recibe una respuesta DNS del servidor DNS, se realiza una comprobación de seguridad similar y, luego, se cierra la sesión del tráfico DNS.

Tráfico ALG DNS IPv6 en modo TDR

El TDR IPv6 proporciona traducción de direcciones entre dispositivos de red direccionados IPv4 e IPv6. También proporciona traducción de direcciones entre hosts IPv6. El TDR entre hosts IPv6 se realiza de manera similar y con fines similares a los de TDR IPv4.

Cuando el tráfico DNS funciona en modo TDR, el ALG dns traduce la dirección pública en una respuesta DNS a una dirección privada cuando el cliente DNS está en una red privada, y traduce de manera similar una dirección privada a una dirección pública cuando el cliente DNS está en una red pública.

En la versión 10.4 de Junos OS, TDR IPv6 admite:

  • Traducciones tDR de origen

  • Asignaciones TDR de destino

  • Asignaciones TDR estáticas

Nota:

El TDR ALG DNS IPv6 solo admite la asignación tDR estática.

Tráfico ALG DNS IPv6 en modo TDR-PT

TDR-PT IPv6 proporciona asignación de direcciones y traducción de protocolo entre dispositivos de red direccionados IPv4 e IPv6. El proceso de traducción se basa en el método de traducción IP/ICMP sin estado (SIIT); sin embargo, el estado y el contexto de cada comunicación se conservan durante la duración de la sesión. IPv6 NAT-PT admite paquetes de protocolo de mensajes de control de Internet (ICMP), protocolo de control de transmisión (TCP) y protocolo de datagrama de usuario (UDP).

TDR-PT IPv6 admite los siguientes tipos de TDR-PT:

  • TDR-PT tradicional

  • TDR-PT bidireccional

Un mecanismo basado en DNS asigna dinámicamente direcciones IPv6 a servidores solo IPv4. NAT-PT utiliza el ALG DNS para hacer las traducciones de manera transparente.

Por ejemplo, una empresa que usa una red IPv6 interna debe poder comunicarse con servidores IPv4 externos que no tengan direcciones IPv6.

Para admitir el enlace dinámico de direcciones, se debe usar un DNS para la resolución de nombres. El host IPv4 busca el nombre del nodo IPv6 en su servidor DNS IPv4 configurado localmente, que luego pasa la consulta al servidor DNS IPv6 a través del dispositivo mediante TDR-PT.

Cuando el tráfico DNS funciona en modo TDR-PT, el ALG DNS traduce la dirección IP en un paquete de respuesta DNS entre la dirección IPv4 y la dirección IPv6 cuando el cliente DNS está en una red IPv6 y el servidor está en una red IPv4, y viceversa.

Nota:

En el modo TDR-PT, solo se admite la traducción de direcciones IPV4 a IPV6 en el ALG DNS. Para admitir el modo TDR-PT en una ALG DNS, el módulo TDR debe admitir TDR-PT.

Cuando la ALG DNS recibe una consulta DNS del cliente DNS, la ALG DNS realiza las siguientes comprobaciones de seguridad y cordura en los paquetes DNS:

  • Aplica la longitud máxima del mensaje DNS (el valor predeterminado es 512 bytes y la longitud máxima es de 8 KB)

  • Aplica una longitud de nombre de dominio de 255 bytes y una longitud de etiqueta de 63 bytes

  • Verifica la integridad del nombre de dominio al que hace referencia el puntero si se encuentran punteros de compresión en el mensaje DNS

  • Comprueba si existe un bucle de puntero de compresión

Se realizan comprobaciones de cordura similares cuando el ALG DNS recibe una respuesta DNS del servidor DNS, después de lo cual se cierra la sesión para este tráfico DNS.

Descripción de la compatibilidad con IPv6 en FTP ALG

El protocolo de transferencia de archivos (FTP) es la parte de la ALG que controla el tráfico FTP. Las solicitudes PORT/PASV y las respuestas 200/227 correspondientes en FTP se utilizan para anunciar el puerto TCP, que el host escucha para la conexión de datos FTP.

Los comandos EPRT/EPSV/229 se utilizan para estas solicitudes y respuestas. FTP ALG ya es compatible con EPRT/EPSV/229, pero solo para direcciones IPv4.

En la versión 10.4 de Junos OS, se actualizaron los comandos EPRT/EPSV/229 para admitir direcciones IPv4 e IPv6.

FTP ALG utiliza objcache preasignado para almacenar sus cookies de sesión. Cuando se admiten direcciones IPv4 e IPv6 en ALG FTP, la estructura de cookies de sesión se agrandará en 256 bits (32 bytes) para almacenar la dirección IPv6.

Compatibilidad con FTP ALG para IPv6

La ALG FTP monitorea los comandos y las respuestas en el canal de control FTP para la corrección sintáctica y abre los agujeros correspondientes para permitir que se establezcan conexiones de canal de datos. En la versión 10.4 de Junos OS, el FTP ALG solo admite enrutamiento IPv4, enrutamiento IPv6 y modo TDR. En la versión 11.2 y posteriores de Junos OS, el FTP ALG también admite los modos TDR y TDR-PT IPv6.

Modo EPRT

El comando EPRT permite la especificación de una dirección extendida para la conexión de datos. La dirección extendida debe estar formada por el protocolo de red, así como las direcciones de red y transporte.

El formato de EPRT es:

EPRT<space><d><net-prt><d><net-addr><d><tcp-port><d>

  • <net-prt>: Un número de familia de dirección definido por IANA

  • <net-addr>: una cadena específica de protocolo de la dirección de red

  • <tcp-port>: un número de puerto TCP

Los siguientes son comandos EPRT de ejemplo para IPv6:

EPRT |2|1080::8:800:200C:417A|5282|

En este modo, FTP ALG solo se centra en el comando EPRT; extrae la dirección IPv6 y el puerto del comando EPRT y abre la perforación.

Modo EPSV

El comando EPSV solicita que un servidor esté escuchando en un puerto de datos y esperando una conexión. La respuesta a este comando solo incluye el número de puerto TCP de la conexión de escucha.

A continuación se muestra una cadena de respuesta de ejemplo:

Nota:

El código de respuesta para entrar en modo pasivo mediante una dirección extendida debe ser 229. Debe extraer el puerto TCP en 229 cargas y usarlo para abrir la perforación.

Descripción del soporte del modo TAP para ALG

El modo del punto de acceso de terminal (TAP) es un dispositivo en espera, el cual comprueba el tráfico reflejado a través del conmutador. El modo TAP no depende del estado de ALG habilitado o deshabilitado. La configuración de ALG sigue siendo la misma que la del modo sin TAP.

Cuando configura un dispositivo serie SRX para que funcione en modo TAP, el dispositivo genera información de registro de seguridad para mostrar la información sobre las amenazas detectadas, el uso de la aplicación y los detalles del usuario. Cuando el dispositivo está configurado para funcionar en modo TAP, el dispositivo recibe paquetes solo desde la interfaz TAP configurada. Excepto la interfaz TAP configurada, otras interfaces están configuradas para la interfaz normal que se usa como interfaz de administración o conectadas al servidor externo. El dispositivo de la serie SRX generará un informe de seguridad o un registro según el tráfico entrante.

ALG admite la aplicación, como la TDR de carga, y permite dinámicamente su tráfico de datos.

Nota:

Solo puede configurar una interfaz TAP cuando opera el dispositivo en modo TAP.

Habilitación y desactivación de ALG en modo TAP

En este tema se muestra cómo habilitar o deshabilitar el estado de ALG en el modo TAP.

Antes de comenzar:

  • Lea la descripción de la compatibilidad del modo TAP para ALG para comprender la compatibilidad con ALG para el modo TAP.

    • El estado de ALG predeterminado para dispositivos SRX300, SRX320, SRX340, SRX345, SRX380 y SRX550M es el siguiente:

    • El estado de ALG predeterminado para el dispositivo SRX4100 es el siguiente:

  • Para habilitar la ALG que está deshabilitada de forma predeterminada, utilice el siguiente comando.

    Para volver a cambiar la ALG habilitada al estado predeterminado, utilice el siguiente comando.

  • Para deshabilitar la ALG que está habilitada de forma predeterminada, utilice el siguiente comando.

    Para volver a cambiar la ALG deshabilitada al estado predeterminado, utilice el siguiente comando.

  • Para habilitar la ALG de IKE, utilice el siguiente comando.

    Para volver a cambiar el ALG de IKE habilitado al estado predeterminado, utilice el siguiente comando.